LoginSignup
11
13

More than 5 years have passed since last update.

mysqldump の使い方とよくあるエラー

Last updated at Posted at 2016-06-16

基本

とあるDBをDumpしたい場合は
$ mysqldump -u user DB名 > dump.sql

複数のDBをDumpしたい場合は
$ mysqldump -u user -databases DB名1 DB名2 > dump.sql

すべてのDBをDumpしたい場合は --all-databases
$ mysqldump -u user --all-databases > dump.sql

DB内のテーブルを指定して取ってきたい場合は
$ mysqldump -u user DB名 テーブル名1 テーブル名2 > dump.sql

テーブルを取得するときDROPTABLEやCREATE TABLEが必要ない場合 -t オプション
$ mysqldump -u user -t DB名 テーブル名1 テーブル名2 > dump.sql

構成情報のみ取ってきたい場合は --no-data
$ mysqldump -u user --no-data DB名 > dump.sql

error: 1044 が出た場合

使用するmysqlのユーザに「LOCK TABLES」の権限がないと
error: 1044: Access denied for user '{username}'@'localhost' to database '{database}' when using LOCK TABLES

のエラーが出る

その場合は
--lock-tables=false

オプションをつけ
$ mysqldump -u user --lock-tables=false DB名 > dump.sql

等とする

バックアップしたデータは

sourceコマンドで読みこめば復元可能

11
13
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
11
13