Page 1 of 1

Serverumzug - Datenbanken und Passwörter

Posted: 2008-04-04 09:50
by tomotom
Wie macht man einen Serverumzug, ohne die Namen der Datenbanken und der dazugehörigen Passwörter zu verlieren?

Re: Serverumzug - Datenbanken und Passwörter

Posted: 2008-04-04 10:44
by braindead
alt:
/etc/init.d/mysql stop
tar cf mysql.tar /var/lib/mysql

neu:
/etc/init.d/mysql stop
mv /var/lib/mysql /var/lib/mysql_bak
tar xf mysql.tar
/etc/init.d/mysql start

Ich denke du verstehst was ich meine. Funktioniert super so lange man keine riesen Sprünge in den MySQL Versionen macht. Alternativ ein dump der gesamten DB ziehen und wieder einspielen (ist halt langsamer):

alt:
mysqldump --all-databases > mysql.sql

neu:
mysql < mysql.sql

Re: Serverumzug - Datenbanken und Passwörter

Posted: 2008-04-04 11:22
by tomotom
... Umd alle dbuser- dbnames und dbpass bleiben erhalten?

Alternativ gibt es zu dem dump ja noch mysqlhotcopy, was eine copie bei laufender Datenbank ermöglicht. Was haltet ihr davon?

Re: Serverumzug - Datenbanken und Passwörter

Posted: 2008-04-04 12:44
by braindead
tomotom wrote:... Umd alle dbuser- dbnames und dbpass bleiben erhalten?
Ja
tomotom wrote:Alternativ gibt es zu dem dump ja noch mysqlhotcopy, was eine copie bei laufender Datenbank ermöglicht. Was haltet ihr davon?
Nutzt du InnoDB?

Code: Select all

mysqlhotcopy works only for backing up MyISAM and ARCHIVE tables. 

Re: Serverumzug - Datenbanken und Passwörter

Posted: 2008-04-04 13:46
by tomotom
braindead wrote:Nutzt du InnoDB?
Nein, schlicht mysql. Gut, dass Du auf die Einschränkungen hinweist. Zum Glück ist bei mir alles vom selben Typ: MyISAM.

Re: Serverumzug - Datenbanken und Passwörter

Posted: 2008-04-04 14:31
by braindead
Wenn alles MyISAM Tabellen sind geht auch hotcopy. Da du aber umziehen willst kannst du ja auch ohne Probleme auf dem alten Server die DB runterfahren. hotcopy ist eher was für backups.

Re: Serverumzug - Datenbanken und Passwörter

Posted: 2008-04-11 19:44
by isotopp
tomotom wrote:Wie macht man einen Serverumzug, ohne die Namen der Datenbanken und der dazugehörigen Passwörter zu verlieren?
Mit mysqldump --all-databases -triggers --routines --lock-all-tables | gzip -9 > fulldump.sql.gz und den dann im Ziel einspielen. Unter Umständen mußt Du danach auf dem Zielrechner mysql_fix_privileges laufen lassen, weil Du etwa eine 4.1er MySQL Systemdatenbank in ein 5.0er System restored hast.

Ich bevorzuge einen anderen Weg: Und das ist ein

mysqldump --lock-all-tables --triggers --routines -B databasename

für jede Datenbank und ein mk-show-grants (http://maatkit.sf.net) für die Übertragung der Userdaten.