2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

MySQLでDBのコピーを作成する

Posted at

MySQLで検証用に現行のDBのコピーを作りたい場合など、
サーバー内のDBのコピーを作成したい場合、以下コマンドでDBのコピーが可能。

$ mysqldump -u <ユーザー名> -p <コピー元DB名> > <コピー元DB名>.sql
$ mysqladmin -u <ユーザー名> -p create <コピー先DB名>
$ mysql -u <ユーザー名> -p <コピー先DB名> < <コピー元DB名>.sql

1行目のmysqldumpコマンドでコピー元DBのデータを出力させて
2行目のMySQLを操作するコマンドmysqladminにcreateオプションを付けてコピー先のDBを作成する。
その後3行目のコマンドで、コピー先DBに対してmysqldumpで作成したファイルのデータを投入する。

実行例

▼コピー元DB(FromDB)の内容をFromDB.sqlというファイル名で出力。
mysqldump -u UserName -p FromDB > FromDB.sql

▼MySQLにコピー先となるDB(ToDB)を作成。
mysqladmin -u UserName -p create ToDB

▼コピー元DBのデータが書かれているFromDB.sqlをコピー先DB(ToDB)に対して実行。
mysql -u UserName -p ToDB < FromDB.sql

出力させたFromDB.sqlは他のMySQLにも使用できるので、
DBの複製やバックアップの取得はめっちゃ楽。
OracleにもDataPumpよりもこういう機能が欲しい…。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?