mysqldump: Couldn't execute SHOW TRIGGERS LIKE
Just had the following error on an old Gentoo MySQL server. On attempting to extract all database content I got a:
mysqldump: Couldn't execute 'SHOW TRIGGERS LIKE 'tt\_ticket\_dat'': Got error 28 from storage engine (1030)
I followed a similar issue (found here) which describes that the open files limit needs modification:
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 279 Server version: 5.0.70 Gentoo Linux mysql-5.0.70-r1 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> SHOW VARIABLES LIKE 'Open_files_limit'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | open_files_limit | 2500 | +------------------+-------+ 1 row in set (0.00 sec) mysql> exit Bye
This then needs the open files limit changing by altering the O/S limit using: ulimit -n 10000
. The result in MySQL should then reflect this change:
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 279 Server version: 5.0.70 Gentoo Linux mysql-5.0.70-r1 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> SHOW VARIABLES LIKE 'Open_files_limit'; +------------------+-------+ | Variable_name | Value | +------------------+-------+ | open_files_limit | 10000 | +------------------+-------+ 1 row in set (0.00 sec) mysql> exit Bye
Then you can re-run (including the skip locking parameter):
mysqldump --all-databases --skip-lock-table -p > alldata.sql
The result should be a SQL file containing the data you need. Worst case, if there are multiple tables in the dump, simply extract them individually so that the mysqldump tool has less work to do.