mysql
データベースをいっぱいにしてWindowsコンピューターで実行していますが、データベースを別のコンピューターに転送するツールはありますか(buntを実行しています)?
それ以外の場合は、script
を記述して、すべてのデータベースをSQL
に取り込み、他のコンピューターでinsertにします。ただ時間を節約しようとしています:)
皆さん、ありがとうございました。
あなたが話すツールはすでに存在します:mysqldump
それはsqlにダンプし、それを別のマシンにコピーして再ロードできます。
例えば:
ソース:
mysqldump -u username -p databasename > dumpfile.sql
次に、ftp/rsync/whateverを使用してファイルを宛先マシンに移動し、そこで空のデータベースを作成して、インポートして実行します。
mysql -u username -p databasename < dumpfile.sql
また、データベース内に保持されていないため、転送された可能性のあるすべてのユーザーに権限を設定する必要もあります。
または、mysqlデータディレクトリからファイルをコピーすることもできますが、mysqldumpが最も簡単で信頼性の高い方法です。
テーブル名が元のシステムにない場合、1つのシステムでは大文字と小文字が区別される可能性があることに注意してください。それは両端の設定に依存します-特にファイルシステムの大文字小文字の区別(またはその他)。
データベースを1つずつエクスポートするのではなく、1つのコマンドですべてをエクスポートできます。次に、それらをインポートします。例えば。
mysqldump -u username -p --all-databases > c:\alldbs.sql
PS-最大の利点は、ユーザー特権を失うことがないことです。
ディスク上のファイルは、MySQLのすべてのエディション間で100%互換性があります。ファイル名の大文字小文字に注意する必要があります。Unixでは問題になるためですが、Windowsでは問題になることがあるからです。
コピーを取る前にMySQLを停止することを忘れないでください。 MyISAMファイルは実行中にコピーを取っても問題ありませんが、InnoDBファイルはそれを行うのに本当に安全ではなく、WindowsのMySQLはデフォルトでInnoDBファイルになっています。
特にWindowsでmysqldumpを使用するときは、文字セットに注意してください。私は、dbが使用する文字セットを明示的に設定し、>演算子を使用する代わりに--result-file = fileを使用することをお勧めします。
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
このワンライナーのバリエーションを使用して、ネットワーク経由でデータベースをコピーすることがよくあります。
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/
新しいmysqlワークベンチ(guiツール)を使用すると、データベースを簡単にエクスポートして、移行するデータベースにインポートできます。
mysqldumpはそれを正しくダンプし、データベース内のすべての文字セットを保持する必要があります。問題が発生しない場合は、同じバージョンのmysqlに移行することをお勧めします。
Mysqldumpによって生成されたファイルは、外観にもかかわらずテキストファイルではありません。notepad.exeなどで編集しないでください。問題が発生します。
サードパーティのGUIツール、特にphpmyadminによって生成されたダンプは、一般に不正確であり、必ずしも正しく復元されるとは限りません。
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にインストールします)、他のコンピューターで復元します。