2つのコンピュータをまたいでデータベースを移行する方法を解説する。
環境
- Intel Mac (MacOS Ventura 13.5)
- MySQL (Ver 8.0.33 for macos13.3 on x86_64 (Homebrew))
手順
移行元の現状は次のようになっている。
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| deetabeesu |
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)
deetabeesu
というデータベースを異なるコンピュータに移行していく手順を示す。
まず、次のコマンドでバックアップ(dump)を作成する。
MySQLのプロンプトではなく、ターミナルで
$ mysqldump -u root -p deetabeesu > deetabeesu_dump.sql
を実行すると、カレントディレクトリにdeetabeesu_dump.sql
が生成される。
ここでdeetabeesu_dump.sql
の名前はなんでもよい。
次に、移行先のコンピュータに空のデータベースを作成する。
こちらはMySQLのプロンプトで、
mysql> CREATE DATABASE deetabeesu;
を実行する。
このとき、データベースの名前は移行元のものと同じにしておく。
次に、移行先のコンピュータにdumpファイルを持ってきたあと、ターミナルで
$ mysql -u root -p deetabeesu < deetabeesu_dump.sql
を実行する。
ここで、deetabeesu_dump.sql
の部分にはdumpファイルのパスを指定できる。
以上の手順により、MySQLのデータベースの移行が完了した。