次のようなCSV形式として、クエリでテーブルをバックアップできることを私は知っています:
SELECT * FROM db.table
INTO OUTFILE 'C:/backup'
CHARACTER SET UTF8
FIELDS TERMINATED BY ';'
ENCLOSED BY '"'
LINES TERMINATED BY '\n';
しかし、これはバックアップを CSV 形式で作成しています。SQL形式にする方法はありますか?
次のようなCSV形式として、クエリでテーブルをバックアップできることを私は知っています:
SELECT * FROM db.table
INTO OUTFILE 'C:/backup'
CHARACTER SET UTF8
FIELDS TERMINATED BY ';'
ENCLOSED BY '"'
LINES TERMINATED BY '\n';
しかし、これはバックアップを CSV 形式で作成しています。SQL形式にする方法はありますか?
現在、クエリ コマンドを使用してデータベースやテーブルを sql ファイルにエクスポートする方法はありません。mysqldumpコマンドライン機能を利用する必要があります。
簡単なエクスポート:
mysqldump db_name tbl_name > backup-file.sql;
宛先パスを指定しないと、ファイルはダンプを実行したのと同じディレクトリに配置されることに注意してください。
指定したパスにエクスポート:
mysqldump db_name tbl_name > C:\"backup"\backup-file.sql;
単純なインポート:
mysql> use db_name;
mysql> source backup-file.sql;
指定したパスからインポート:
mysql> use db_name;
mysql> source C:\"backup"\backup-file.sql;
パスを二重引用符"
で囲む必要があるのは、ディレクトリ パスに空白を使用する場合のみです。