23

を使用してMySQLデータベース全体を正常にダンプしました

mysqldump --databases

素敵な.txtファイルを生成します。ただし、ファイル全体を一度にMySQLに読み戻す方法がわかりません。mysqlimportは、一度に1つのテーブルのみを必要としているようです。

4

3 に答える 3

57

を使用してファイル(たとえばdb-dump.sqlを生成したら、次のコマンドmysqldumpを使用して他のデータベースにインポートできます。mysql

mysql --user=XXX --password=XXX --host=YOUR_HOST DATABASE_NAME < db-dump.sql


また、コマンドにパスワードを表示したくない場合は、次を使用できます。

mysql --user=XXX -p --host=YOUR_HOST DATABASE_NAME < db-dump.sql


補足として、あるDBを別のDBにコピーする場合は、ファイルを使用する必要はなく、次の出力を直接パイプすることができmysqldumpますmysql

mysqldump --user=XXX --password=XXX --host=SOURCE_HOST SOURCE_DB | mysql --user=XXX --password=XXX --host=DESTINATION_HOST DESTINATION_DB

(ディスク上にある一時ファイルを使用していないため、さらに高速になるはずです)

于 2010-02-19T17:28:26.187 に答える
14

私はこれを頻繁に行います:

mysqldump -u username -p databasename > dump.sql

ロードするには:

mysql -u username -p  targetdatabasename < dump.sql

Switchは、コマンドが起動する-pと、ユーザーのパスワードの入力を求めるプロンプトをデータベースに指示します。username

あなたの質問はおそらく重複しています。

于 2010-02-19T17:11:16.810 に答える
6

mysqlクライアント内から「source」を使用できます。

source dumpfile.sql

または、コマンドラインから直接指定します。

mysql -u user -p password database < source dumpfile.sql

これは、mysqldumpの結果が、通常どおりmysqlを介して実行できる単なるSQLファイルであるためです。

于 2010-02-19T17:13:02.500 に答える