2012-02-08 14 views
1

私は64ビットLinuxサーバーにインポート/コピー/移行したいMySQLを備えた32ビットLinuxサーバーにデータベースを持っています。MySQL 32bitデータベースを64bit MySQLにインポート/コピーできますか?

私は

service mysqld stop 
tar czf /root/db.tar.gz /var/lib/mysql 

とみなされ、新しいサーバーにこれをコピーしてきました。

それとも

mysqldump -uroot -p --all-databases > /root/db.sql 

質問

が可能、そうであれば、どのような方法をお勧めしていることですか?

+2

すべてのファイルをほぼ確実にコピーすることはできません。 2番目のオプションは(両方のサーバーで適切なオプションが与えられている)確かになりますが、時間がかかることがあります。あなたの最善の策は、おそらく目的のバックアップツールです。どのデータベースエンジンを使用していますか? –

+0

私は参照してください。私はInnoDBを使用しています。 –

+0

InnoDBのデータファイルフォーマットはプラットフォームに依存しません。ソースからデータを正しくコピーして、正しいパーミッションの正しい場所に置くと問題はありません。 –

答えて

2

mysqldumpを使用して、結果のファイルを再インポートすることは確実に機能し、データベースが非常に大きく、ダンプ/インポートプロセスの速度が遅い場合を除き、お勧めします。

ほとんどの場合、サーバー環境が同一でない限り、データファイルを直接コピーする場合は、何らかの浄化と権限の修正が必要になることがあります。 There is documentationは、生データファイルを使用して転送を実行しますが、通常は、mysqldumpです。

+0

ダンプとリロードは、データをディスク上の形式からSQLに変換してから、オンディスク形式に変換することによって、実際には何らかの問題を引き起こす可能性が高くなります。 –

2

大きなデータベースがある場合は、XtraBackupを使用することをおすすめします。 mysqldumpを使用してインポートするよりもはるかに高速になる可能性があります。

関連する問題