WindowsでDataGripのmysqldumpを利用する
結論
WindowsはMySQLが入っていないのでダウンロードする必要がある。
MySQL8以降だと--skip-column-statistics
を設定する必要がある。
インポートするときに--default-character-set=utf8
をしないといけないかも(環境による?)
動作環境
- Windows10
- DataGrip 2020.2
- MySQL 8
DataGripでdumpを使う
DataGripではデータベースやテーブルを右クリックするとmysqldumpを使ってエクスポートする項目があるがこれを使うためにはWindowsならmysqldump.exe
が必要になる。
なので、MySQL公式からMySQLをダウンロードして解凍する
解凍後は適当なフォルダに移動させておく。
mysqldump.exeを探す
DataGripでmysqldumpを使ってエクスポートするを押すとウィンドウが開き
mysqldump.exeまでのパスの入力を求められるので、解凍したフォルダのbinフォルダの中にあるmysqldump.exeを指定する。
その後、MySQL8の場合は--skip-column-statistics
を指定しないとエラーが出ることがあるので指定する
一度エクスポートしてみてエラーがでたら指定してみるほうが良いかも。
(このオプションはMySQL5.7以下で管理しているDBに対してMySQL8で操作しようとすると起こるエラーを防ぐ?)
インポートする
またもや右クリックからインポートもすることができるのでmysqlを使ってインポートを使う
こちらもmysqldumpと同じくmysql.exeまでのパスを求められるのでbinフォルダの中から探して指定する。
環境によってはUnknown command '\''.
が出るので--default-character-set=utf8
を指定しておくのが吉。
便利なオプション
INSERT文だけエクスポートする(+カラム名もいれる)
--no-create-info --complete-insert