ここにいくつかのオプションがあります:
mysqldump
これを行う最も簡単で確実に機能する方法は、mysqldump
を使用することです。 。ユーティリティのマニュアルページはこちらをご覧ください:
http://dev.mysql.com/doc/refman/5.1 /en/mysqldump.html
基本的に、テーブル、トリガー、その他のオブジェクトの作成やデータの挿入など、データベースのコンテンツを再構築するために必要なSQLスクリプトをダンプします(すべて構成可能であるため、スキーマを別の場所に既に設定している場合は、次のことができます。たとえば、データをダンプするだけです。
個々のMyISAMテーブルファイルをコピーする
大量のデータがある場合および コピーするテーブルにMyISAMストレージエンジンを使用している場合は、mysqldをシャットダウンして、.frm、.myd、および.myiファイルをあるデータベースフォルダーから別のデータベースフォルダーにコピーできます(別のシステムでも)。これはInnoDBテーブルでは機能せず、他のストレージエンジン(私はあまり馴染みがない)では機能する場合と機能しない場合があります。
mysqlhotcopy
データベースサーバーの実行中にデータベースの内容をダンプする必要がある場合 、mysqlhotcopy
を使用できます (これはMyISAMテーブルとアーカイブテーブルでのみ機能することに注意してください):
http://dev.mysql.com/doc/refman/5.0 /en/mysqlhotcopy.html
データフォルダ全体をコピーする
データベースインストール全体をコピーする場合 したがって、すべてのデータベースとすべてのデータベースのコンテンツは、mysqldをシャットダウンし、MySQLデータディレクトリ全体を圧縮して、新しいサーバーのデータディレクトリにコピーするだけです。
これは、あるインスタンスから別のインスタンスにInnoDBファイルをコピーする(私が知っている)唯一の方法です。これは、同じOSファミリと同じバージョンのMySQLを実行しているサーバー間を移動する場合に正常に機能します。 かもしれません オペレーティングシステムやMySQLのバージョン間を移動するために動作します。頭のてっぺんから、わかりません。