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

Невозможно создать резервную копию таблицы mysql с помощью mysqldump. Команда SELECT, LOCK TABL отклонена для 'cond_instances'

У меня проблемы с бегом mysqldump как пользователь root mysql. Когда я пытаюсь сделать резервную копию mysql table Я получаю эту ошибку:

mysqldump: Got error: 1142: SELECT,LOCK TABL command denied to user
'root'@'localhost' for table 'cond_instances' when using LOCK TABLES

Кто-нибудь видел это раньше? Я видел несколько ссылок на мои mysql и mysqldump, которые были разными версиями, но когда я запускаю, они находятся в одном каталоге.

Я использую MySQL 5.5.8.

--skip-add-locks не работает:

# mysqldump -u root -p`cat mysqlRoot.txt` --databases performance_schema --routines --quote-names --skip-add-locks > mysql_performance_schema

mysqldump: Got error: 1142: SELECT,LOCK TABL command denied to user 'root'@'localhost' for table 'cond_instances' when using LOCK TABLES

вы хотите вместо этого --skip-lock-tables

(Я понимаю, что это произошло с опозданием на 8 месяцев)

Это не проблема блокировок, и предлагаемые решения просто обходят реальную проблему:

А 5.5 mysqldump приложение не должно экспортировать performance_schema база данных в первую очередь.

Основываясь на моем предыдущем опыте, я предлагаю mysqldump программа, которую вы использовали, является 5.1 версия. Как сказать? Проблема:

mysqldump --version

А 5.1 клиент не подозревает о «футуристическом» существовании performance_schema и поэтому пытается его сбросить. Он не знает, что этого не должно быть.

Попробуйте найти 5.5 версию и используйте ее для сброса, не добавляя предложенных блокировок, и это должно работать хорошо.

Добавьте --skip-add-locks в свою команду mysqldump

Как упомянул Шломи Ноах, резервное копирование performance_schema не предполагается.

Самый простой способ исправить это - установить в файле конфигурации следующее:

CONFIG_db_exclude=( 'performance_schema' 'information_schema' )