MySQLのデータベースをインポート、エクスポートする際は、MySQLにログインしてない状態で行います。
この状態はNG
この状態はOK
エクスポート
どのデータベースをエクスポートするか確認するため、一旦MySQLにログインします。
mysql -u ユーザー名 -p
データベース一覧を確認。
SHOW DATABASES;
今回は、fs6project_dbというデータベースをエクスポートします。エクスポートの前に、fs6project_dbを選択し、
データベースの中身を確認。
それでは、一旦、データベースから抜けます。exitでもいけます。
quit
それではエクスポート。
エクスポートファイルのパス指定はできないようなので、保存先を指定したい場合は、あらかじめcdコマンドなどでディレクトリを移動しておきます。今回はカレントディレクトリ(いまいるディレクトリなので、ここでは『C:¥Users¥Toshinobu』)にエクスポートファイルを作成。
・【MySQL】mysqldump: Got error: 1044 | enjoyブログ♪
ファイルがエクスポートされました。
インポート
エクスポートしたファイルをインポートしていきます。 その前に、インポート先のデータベースを作成します。rootユーザーでないとデータベース作成ができないようなので、rootユーザーでMySQLにログインしました。
作成したデータベース(『import_test』)に対して、ユーザー『owner』に権限を付与しておきます。「dbname」は「データベース名」、「dbuser」は「ユーザー名」、「dbpassword」は「ユーザーのパスワード」にそれぞれ合わせてください。
GRANT ALL PRIVILEGES ON dbname.* TO dbuser@'localhost' IDENTIFIED BY 'dbpassword';
それでは、またMySQLからログアウトし、インポートを実行します。
※ インポート先のデータベースにインポートするテーブルと同じ名前のテーブルがある場合、DROP TABLEコマンドでテーブルが削除されるので注意です。
「dbname」は「データベース名」、「dbuser」は「ユーザー名」にそれぞれ合わせてください。
mysql -u dbuser -p --default-character-set=utf8 dbname < インポートするファイル名 Enter password: ******
MySQLにログインし、データベースにデータのインポートができたか確認します。
データベース一覧表示。
使用するデータベースを選択。
テーブルを表示。
無事、インポートできました。
今回はこのへんで。