Làm cách nào để dừng automysqlbackup ném lỗi LOCK TABLES?


21

Cách dừng tập lệnh cron.daily của automysqlbackup - như đã cài đặt và định cấu hình từ apt-get install automysqlbackup- đưa ra lỗi sau:

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

Điều này xảy ra lần đầu tiên (đối với tôi) sau khi đã nâng cấp lên MySQL 5.5 do hậu quả của việc nâng cấp lên Ubuntu 12.04 LTS.

Câu trả lời:


32

Lỗi này (đã được sửa trong automysqlbackup 2.6+debian.2-1) có thể được khắc phục bằng cách dừng automysqlbackup từ bỏ cơ sở dữ liệu performance_schemainformation_schemacơ sở dữ liệu. Điều này có thể được thực hiện bằng cách chỉnh sửa /etc/default/automysqlbackupnhư sau:

Thêm một đường ống bổ sung vào bước grep để loại bỏ performance_schemainformation_schemakhỏi danh sách DBNAMES.

Vì vậy, trong dòng bắt đầu DBNAMES=và sau khi | grep -v ^mysql$chèn

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

trước | tr \\\r\\\n ,\đó để dòng cuối cùng trông giống như

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 ,\ `

Cảm ơn Drouet Jérôme.

Ngoài ra, nếu bạn sử dụng gói automysqlbackup gốc từ sourceforge chứ không phải gói apt, bạn có thể thêm cơ sở dữ liệu Performance_schema vào cơ sở dữ liệu bị loại trừ của mình bằng cách sửa đổi dòng có chứa CONFIG_db_exclude trong /etc/automysqlbackup/myserver.conf:

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

Câu trả lời của bạn hoạt động. Đi trước và chọn câu trả lời của bạn là câu trả lời đúng.
Stefan Lasiewski

Đây là bản sửa lỗi trên OS X (thông qua Homebrew).
Michael Thompson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.