Назад | Перейти на главную страницу

ошибка mysqldump ТАБЛИЦЫ БЛОКИРОВКИ

Когда я выполняю mysqldump, я получаю следующую ошибку:

mysqldump -u root -ppassword --databases information_schema > test.sql
mysqldump: Got error: 1044: Access denied for user 'root'@'localhost' to database 'information_schema' when using LOCK TABLES

Как я могу это исправить?

Если вам необходимо выгрузить базу данных information_schema, добавьте в нее --skip-lock-tables.

mysqldump по умолчанию не выгружает базу данных INFORMATION_SCHEMA. Начиная с MySQL 5.1.38, mysqldump выгружает INFORMATION_SCHEMA, если вы явно указываете его в командной строке, хотя в настоящее время вы также должны использовать параметр --skip-lock-tables. До 5.1.38 mysqldump молча игнорировал INFORMATION_SCHEMA, даже если вы явно указали его в командной строке.

http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html

Мне пришлось добавить - single-transaction

Согласно руководству по MySQL, эта опция гарантирует только последовательную резервную копию, если вы используете InnoDB или BDB. В отличие от MyISAM и Heap они поддерживают транзакции.

Вчера возникла такая же проблема.

База данных была перенесена с другого сервера, и когда мы удалили несколько пользователей, был VIEW, у которого не было несуществующего DEFINER, и это вызвало проблему.

Он не показывает ошибку propper, когда он был сброшен с предоставлением пользователя SELECT, LOCK TABLES, но под пользователем root была показана правильная ошибка.