web-dev-qa-db-ja.com

Mysqlデータベースを別のコンピューターに転送する

mysqlデータベースをいっぱいにしてWindowsコンピューターで実行していますが、データベースを別のコンピューターに転送するツールはありますか(buntを実行しています)?

それ以外の場合は、scriptを記述して、すべてのデータベースをSQLに取り込み、他のコンピューターでinsertにします。ただ時間を節約しようとしています:)

皆さん、ありがとうございました。

27
fmsf

あなたが話すツールはすでに存在します:mysqldump

それはsqlにダンプし、それを別のマシンにコピーして再ロードできます。

例えば:

ソース:

mysqldump -u username -p databasename > dumpfile.sql

次に、ftp/rsync/whateverを使用してファイルを宛先マシンに移動し、そこで空のデータベースを作成して、インポートして実行します。

mysql -u username -p databasename < dumpfile.sql

また、データベース内に保持されていないため、転送された可能性のあるすべてのユーザーに権限を設定する必要もあります。

または、mysqlデータディレクトリからファイルをコピーすることもできますが、mysqldumpが最も簡単で信頼性の高い方法です。

テーブル名が元のシステムにない場合、1つのシステムでは大文字と小文字が区別される可能性があることに注意してください。それは両端の設定に依存します-特にファイルシステムの大文字小文字の区別(またはその他)。

31
benlumley

データベースを1つずつエクスポートするのではなく、1つのコマンドですべてをエクスポートできます。次に、それらをインポートします。例えば。

mysqldump -u username -p --all-databases > c:\alldbs.sql

PS-最大の利点は、ユーザー特権を失うことがないことです。

17
Sanjay Zalke

ディスク上のファイルは、MySQLのすべてのエディション間で100%互換性があります。ファイル名の大文字小文字に注意する必要があります。Unixでは問題になるためですが、Windowsでは問題になることがあるからです。

コピーを取る前にMySQLを停止することを忘れないでください。 MyISAMファイルは実行中にコピーを取っても問題ありませんが、InnoDBファイルはそれを行うのに本当に安全ではなく、WindowsのMySQLはデフォルトでInnoDBファイルになっています。

2
staticsan

特にWindowsでmysqldumpを使用するときは、文字セットに注意してください。私は、dbが使用する文字セットを明示的に設定し、>演算子を使用する代わりに--result-file = fileを使用することをお勧めします。

2
Ariel Arjona

MySQLのドキュメントから: http://dev.mysql.com/doc/refman/5.0/en/copying-databases.html

Shell> mysqldump --quick db_name | gzip > db_name.gz

データベースの内容を含むファイルをターゲットマシンに転送し、そこで次のコマンドを実行します。

Shell> mysqladmin create db_name
Shell> gunzip < db_name.gz | mysql db_name
1
Petre Lukarov

このワンライナーのバリエーションを使用して、ネットワーク経由でデータベースをコピーすることがよくあります。

mysqldump --opt --compress --user=username database | mysql --user=username2 --password=p2 --Host=hostB -D database -C database

私が最初にここで読んだもの:

http://www.igvita.com/2007/10/10/hands-on-mysql-backup-migration/

0
AdamK

新しいmysqlワークベンチ(guiツール)を使用すると、データベースを簡単にエクスポートして、移行するデータベースにインポートできます。

0
zhongxiao37

mysqldumpはそれを正しくダンプし、データベース内のすべての文字セットを保持する必要があります。問題が発生しない場合は、同じバージョンのmysqlに移行することをお勧めします。

Mysqldumpによって生成されたファイルは、外観にもかかわらずテキストファイルではありません。notepad.exeなどで編集しないでください。問題が発生します。

サードパーティのGUIツール、特にphpmyadminによって生成されたダンプは、一般に不正確であり、必ずしも正しく復元されるとは限りません。

0
MarkR

Mysql Administrator( http://dev.mysql.com/downloads/gui-tools/ on Windows、aptitude install mysql-admin on Ubuntu)またはphpmyadminなどの任意のguiツールを使用してバックアップを作成できます。 ( http://www.phpmyadmin.net/home_page/index.php Windowsの場合、aptitudeはphpmyadminをUbuntuにインストールします)、他のコンピューターで復元します。

0
Gonzalo Quero