Umzug 32bit nach 64bit

MySQL, PostgreSQL, SQLite
knebb
Posts: 92
Joined: 2006-05-30 11:16
Location: M-V

Umzug 32bit nach 64bit

Post by knebb » 2006-06-13 13:05

Yohoo!

Mir steht ein Umzug einer MySQL-DB bevor. MySQL enthält nur MYSQL-Datenbanken, keine Innos etc.
Alte Version:
MySQL-server-standard-4.1.20-0.sles9.i586.rpm
Neue Version:
MySQL-server-standard-4.1.20-0.sles9.x86_64.rpm

Sind hierbei Schwierigkeiten zu erwarten? Binär kopieren geht ja eher nicht zwischen 32 und 64bit. Deshalb mysqldump:

Code: Select all

mysqldump --opt -A --password="xxxxxx" --lock-all-tables --add-drop-database  --skip-quote-names |gzip >/backup.sql.gz
Sollte eigentlich problemlos klappen, oder habt Ihr Bedenken?

Ach ja, diese Datenbank ist von einer 4.1.13-3 auf einer Suse 10.0 (64bit) erstellt worden. Nach dem Einspielen des dumps waren die Berechtigungen für die einzelnen Tabellen weg. Hat jemand eine Idee, wieso?

Roger Wilco
Administrator
Administrator
Posts: 5924
Joined: 2004-05-23 12:53

Re: Umzug 32bit nach 64bit

Post by Roger Wilco » 2006-06-13 17:00

knebb wrote:Sind hierbei Schwierigkeiten zu erwarten?
Nein.
knebb wrote:Binär kopieren geht ja eher nicht zwischen 32 und 64bit.
Doch. i386 und x86_64 sind ja sogar Endian-kompatibel... ;)

knebb
Posts: 92
Joined: 2006-05-30 11:16
Location: M-V

Re: Umzug 32bit nach 64bit

Post by knebb » 2006-06-13 20:00

Roger Wilco wrote:
Binär kopieren geht ja eher nicht zwischen 32 und 64bit.
Doch. i386 und x86_64 sind ja sogar Endian-kompatibel... ;)
Echt? Also das Folgende geht?

Code: Select all

rcmysqld stop
rsync -av -e ssh /var/lib/mysql/ root@mysql_neu:/var/lib/mysql
# und dann auf dem neuen 64bit-System:
rcmysqld start

User avatar
Joe User
Project Manager
Project Manager
Posts: 11139
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Umzug 32bit nach 64bit

Post by Joe User » 2006-06-13 20:41

Probiere es doch einfach mal aus und berichte uns ;)
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.

knebb
Posts: 92
Joined: 2006-05-30 11:16
Location: M-V

Re: Umzug 32bit nach 64bit

Post by knebb » 2006-06-13 20:59

Joe User wrote:Probiere es doch einfach mal aus und berichte uns ;)
Ich bin mit Produktivsystemen ungerne Versuchskaninchen...aber Du hast recht- es gibt ja immer noch VMware ;)

knebb
Posts: 92
Joined: 2006-05-30 11:16
Location: M-V

Re: Umzug 32bit nach 64bit

Post by knebb » 2006-06-13 23:03

Joe User wrote:Probiere es doch einfach mal aus und berichte uns ;)
Ok, gerade eben das folgende getestet:

Code: Select all

SLES9_64bit# rcmysql stop
SLES9_64bit# tar cjvf /mysql.tar.bz2 /var/lib/mysql
[...]
SLES9_32bit# scp root@SLES9_64bit:/mysql.tar.bz2 /
SLES9_32bit# rcmysql stop
SLES9_32bit# tar xjvf /mysql.tar.bz2 -C /var/lib
SLES9_32bit# rcmysql start
Ja, es läuft danach tatsächlich die (vorherige 64bit) Datenbank. Cool. Dann dürfte dem Weg von 32 auf 64bit erst recht nichts im Wege stehen.

Danke für die Anregungen und die Ideen!

Grüße

Christian

flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin

Re: Umzug 32bit nach 64bit

Post by flo » 2006-06-13 23:05

Isotopp hat das neulich auch mal als favorisierten Weg angesprochen - ich war da auch baff, weil ich es nciht für möglich gehalten hätte, daß das einwandfrei geht.

flo.

knebb
Posts: 92
Joined: 2006-05-30 11:16
Location: M-V

Re: Umzug 32bit nach 64bit

Post by knebb » 2006-06-13 23:09

flo wrote:Isotopp hat das neulich auch mal als favorisierten Weg angesprochen - ich war da auch baff, weil ich es nciht für möglich gehalten hätte, daß das einwandfrei geht.
Blieb' hlt nur noc hdie Frage, bei wievielen Versionsunterschieden das dann nicht mehr geht. Ich hatte jetzt unterschiedliche Patchversionen gehabt.

User avatar
Joe User
Project Manager
Project Manager
Posts: 11139
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Umzug 32bit nach 64bit

Post by Joe User » 2006-06-13 23:28

Es funktioniert bis zum nächsten Wechsel des Dateiformates für die DB-Dateien.
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.

knebb
Posts: 92
Joined: 2006-05-30 11:16
Location: M-V

Re: Umzug 32bit nach 64bit

Post by knebb » 2006-06-15 09:46

Joe User wrote:Es funktioniert bis zum nächsten Wechsel des Dateiformates für die DB-Dateien.
Ok, wir haben das gestern versucht durchzuziehen. Die DB selbst hat keine Sorgen gemacht, 32bit auf 64bit lief einwandfrei. Allerdings ist uns dann die §$&% Benutzerverwaltung in die Quere gekommen.

Naja, EOT. Binärkopieren geht (zumindest innerhalb der Versionen) problemlos.

User avatar
isotopp
Posts: 471
Joined: 2003-08-21 10:21
Location: Berlin

Re: Umzug 32bit nach 64bit

Post by isotopp » 2006-06-16 16:49

knebb wrote:Alte Version:
MySQL-server-standard-4.1.20-0.sles9.i586.rpm
Neue Version:
MySQL-server-standard-4.1.20-0.sles9.x86_64.rpm
MySQL garantiert eine Binärkompatibilität des MyISAM-Dateiformates über Architekturen, Bittigkeiten und Endiangrenzen hinweg. Das ist einer der Changes vom veralteten ISAM zum MyISAM-Format hin.

InnoDB ist ebenfalls portabel, solange die verwendeten Architekturen Zweierkomplementdarstellung und IEEE-Floats verwenden.
Nach dem Einspielen des dumps waren die Berechtigungen für die einzelnen Tabellen weg. Hat jemand eine Idee, wieso?
mysqldump kopiert eine Datenbank, aber nicht die Berechtigungen, die für die Datenbank definiert sind.

User avatar
isotopp
Posts: 471
Joined: 2003-08-21 10:21
Location: Berlin

Re: Umzug 32bit nach 64bit

Post by isotopp » 2006-06-16 16:51

knebb wrote:Blieb' hlt nur noc hdie Frage, bei wievielen Versionsunterschieden das dann nicht mehr geht. Ich hatte jetzt unterschiedliche Patchversionen gehabt.
Datenformate innerhalt einer Major Version sind immer kompatibel.

Es kann sein, daß durch Patches an einer Collation sich die Sortierreihenfolge von Zeichenspalten ändert, für die ein Index definiert ist. In diesem Fall ist ein DROP INDEX und ein Neubau des Index erforderlich.

Bei Versionsupgrades hilft es auch, die Sektion "Incompatible Changes" in den Releasenotes der übersprungenen Versionen durchzusehen.

knebb
Posts: 92
Joined: 2006-05-30 11:16
Location: M-V

Re: Umzug 32bit nach 64bit

Post by knebb » 2006-06-16 17:22

isotopp wrote: mysqldump kopiert eine Datenbank, aber nicht die Berechtigungen, die für die Datenbank definiert sind.
Und die muß ich dann jedesmal neu setzen? Das erscheint mir reichlich unlogisch. Also bleibt doch ausschließlich ein Binärbackup (verbunden mit Downtime oder einem zweiten Server) übrig?
Welchen Weg kann man denn gehen, um auch die Berechtigungen mitzunehmen. Ich dachte, er sichert die mysql-DB mit....

User avatar
isotopp
Posts: 471
Joined: 2003-08-21 10:21
Location: Berlin

Re: Umzug 32bit nach 64bit

Post by isotopp » 2006-06-16 17:59

knebb wrote:Und die muß ich dann jedesmal neu setzen?
SHOW GRANTS FOR "user"@"hostname" zeigt Dir die Statements für den genannten User. Das kannst Du Dir ausgeben lassen und mit portieren.

Oder Du dumpst die fünf MySQL Rechtetabellen und transportierst sie mit auf das neue System, bzw. die ganze mysql.* Datenbank.

knebb
Posts: 92
Joined: 2006-05-30 11:16
Location: M-V

Re: Umzug 32bit nach 64bit

Post by knebb » 2006-06-16 18:45

isotopp wrote:
knebb wrote:Und die muß ich dann jedesmal neu setzen?
SHOW GRANTS FOR "user"@"hostname" zeigt Dir die Statements für den genannten User. Das kannst Du Dir ausgeben lassen und mit portieren.

Oder Du dumpst die fünf MySQL Rechtetabellen und transportierst sie mit auf das neue System, bzw. die ganze mysql.* Datenbank.
Klar, wenn ich einzelne DB dumpe- aber auch, wenn ich mit --all-databases die ganze Instanz sichere? Ich hatte das so verstanden, daß er da wirklich ALLE mitnimmt. Die User hat er ja auch mitgenommen, aber nicht deren Rechte!
:roll:

User avatar
isotopp
Posts: 471
Joined: 2003-08-21 10:21
Location: Berlin

Re: Umzug 32bit nach 64bit

Post by isotopp » 2006-06-16 18:49

knebb wrote: Die User hat er ja auch mitgenommen, aber nicht deren Rechte!
Doch, sicher hat er das. Schau in den Dump.

Code: Select all

kris@linux:~> mysqldump-3340 -u root --all-databases | grep "CREATE DATABASE"
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `bootcamp` /*!40100 DEFAULT CHARACTER SET latin1 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mysql` /*!40100 DEFAULT CHARACTER SET utf8 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `rootforum` /*!40100 DEFAULT CHARACTER SET utf8 */;
Schau in die Kommandos nach CREATE DATABASE mysql

knebb
Posts: 92
Joined: 2006-05-30 11:16
Location: M-V

Re: Umzug 32bit nach 64bit

Post by knebb » 2006-06-16 19:21

isotopp wrote:
knebb wrote: Die User hat er ja auch mitgenommen, aber nicht deren Rechte!
Doch, sicher hat er das. Schau in den Dump.
Hmmmm.... ok, Du meinst also, das hätte er im Regelfall gemacht? So hätte ich das auch erwartet. Na gut, dann war das wohl ein Fehler. Ich werde versuchen, ihn nachzuprüfen.