如何停止automysqlbackup抛出LOCK TABLES错误?


21

如何停止automysqlbackup的cron.daily脚本-从安装和配置apt-get install automysqlbackup-抛出以下错误:

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

由于升级到Ubuntu 12.04 LTS,在升级到MySQL 5.5之后(对我而言)第一次出现。

Answers:


32

automysqlbackup 2.6+debian.2-1可通过停止automysqlbackup转储performance_schemainformation_schema数据库来解决此错误(已在中修复)。可以通过/etc/default/automysqlbackup如下编辑来完成:

附加管道grep的步骤加入删除performance_schemainformation_schema从DBNAMES的列表。

因此,在开始的行中DBNAMES=,然后| grep -v ^mysql$插入

| grep -v ^performance_schema$ | grep -v ^information_schema$

| tr \\\r\\\n ,\最后一行看起来像之前

DBNAMES=`mysql --defaults-file=/etc/mysql/debian.cnf --execute="SHOW DATABASES" | awk '{print $1}' | grep -v ^Database$ | grep -v ^mysql$ | grep -v ^performance_schema$ | grep -v ^information_schema$ | tr \\\r\\\n ,\ `

感谢JérômeDrouet。

另外,如果您使用sourceforge的原始automysqlbackup软件包而不是apt软件包,则可以通过修改/etc/automysqlbackup/myserver.conf中包含CONFIG_db_exclude的行,将Performance_schema数据库添加到排除的数据库中:

# List of DBNAMES to EXLUCDE if DBNAMES is empty, i.e. ().
CONFIG_db_exclude=( 'information_schema' 'performance_schema' )

您的答案有效。继续,选择您的答案作为正确答案。
Stefan Lasiewski 2012年

这也是OS X上的修复程序(通过Homebrew)。
Michael Thompson
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.