30

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

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

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

4

9 に答える 9

33

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

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

例えば:

ソース:

mysqldump -u username -p databasename > dumpfile.sql

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

mysql -u username -p databasename < dumpfile.sql

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

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

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

于 2008-11-30T14:58:38.150 に答える
19

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

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

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

于 2011-01-27T17:19:02.747 に答える
2

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

また、コピーを作成する前に、MySQLを停止することを忘れないでください。MyISAMファイルは実行中にコピーを作成できますが、InnoDBファイルは実際には安全ではなく、WindowsのMySQLはデフォルトでInnoDBファイルになっています。

于 2008-12-02T05:27:34.243 に答える
2

特にWindowsでmysqldumpを使用する場合は、文字セットに注意してください。私は、データベースが使用する文字セットを明示的に設定し、何かが壊れないように、>演算子を使用する代わりに--result-file=fileを使用することを好みます。

于 2008-12-02T06:21:03.933 に答える
0

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

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

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

于 2008-12-02T06:30:36.053 に答える
0

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

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/

于 2009-03-03T22:40:42.440 に答える
0

Mysql Administrator ( Windows ではhttp://dev.mysql.com/downloads/gui-tools/、Ubuntuでは aptitude install mysql-admin) や phpmyadmin ( http://www. Windows ではphpmyadmin.net/home_page/index.php、Ubuntuでは aptitude install phpmyadmin) を実行し、別のコンピューターで復元します。

于 2008-11-30T14:58:06.527 に答える