MySQL
mysqldump

mysqldumpでGot error: 1044: Access deniedが出た

備忘録っす

何をしたら出たの?

# mysqldump -u ユーザ名 -p データベース名 > dump-data.sql

どんなエラーログ?

mysqldump: Got error: 1044: Access denied for user 'ユーザ名'@'localhost' to database データベース名 when using LOCK TABLES

かなしいなあ

原因は?

テーブルロック権限(LOCK TABLES)がないから。

解決

--single-transactionをつける

# mysqldump --single-transaction -u ユーザ名 -p データベース名 > dump-data.sql

別にルートユーザーでやっても一般ユーザーでもいい。