Bug #30786 | innobackup fails with ERROR 1005 (errno: 121) | ||
---|---|---|---|
Submitted: | 4 Sep 2007 9:54 | Modified: | 5 Sep 2007 12:36 |
Reporter: | Elan Ruusamäe (OCA) | Email Updates: | |
Status: | Not a Bug | Impact on me: | |
Category: | MySQL Server: InnoDB storage engine | Severity: | S2 (Serious) |
Version: | 1.3.0 | OS: | Linux (PLD Linux) |
Assigned to: | Pekka Lampio | CPU Architecture: | Any |
Tags: | ibbackup, innobackup |
[4 Sep 2007 9:54]
Elan Ruusamäe
[4 Sep 2007 9:56]
Elan Ruusamäe
console log of process failure
Attachment: innobackup.log (text/x-log), 3.12 KiB.
[4 Sep 2007 11:01]
Sveta Smirnova
Thank you for the report. InnoDB Backup Utility is product of Innobase Oy so better if you open this bug there. But "ERROR 1005 (HY000) at line 7: Can't create table './mysql/ibbackup_binlog_marker.frm' (errno: 121)" can be MySQL error too. So, please, indicate accurate version of MySQL server you use.
[4 Sep 2007 11:48]
Elan Ruusamäe
mysql-5.0.45-1.amd64
[4 Sep 2007 15:28]
Heikki Tuuri
Elan, error 121 means that the table mysql.ibbackup_binlog_marker already exists inside InnoDB's system tablespace though you do not have the .frm file ibbackup_binlog_marker.frm in the /mysql database directory. Have you used an earlier backup taken with the innobackup Perl script, but forgotten to put the .frm files to appropriate directories? Regards, Heikki
[4 Sep 2007 19:36]
Elan Ruusamäe
Thanks. that seemed the cause of the problem. I think the problem appeared when was creating snapshot to update crashed slave and in the process i restored mysql database from slave, ie not using the mysql database from master due different GRANT options. However i looked the script and it seems to drop the mentioned table, so probably the innobackup run was interrupted or it failed by some other reason. Here's how i solved the situation: mysql> CREATE TABLE ibbackup_binlog_marker2(a INT) TYPE=INNODB; Query OK, 0 rows affected, 1 warning (0.02 sec) Warning (Code 1287): 'TYPE=storage_engine' is deprecated; use 'ENGINE=storage_engine' instead sh# mv mysql/ibbackup_binlog_marker{2,}.frm sh# mysqladmin flush-tables mysql> SET SQL_LOG_BIN = 0; Query OK, 0 rows affected (0.00 sec) mysql> DROP TABLE IF EXISTS ibbackup_binlog_marker; Query OK, 0 rows affected (0.12 sec)
[5 Sep 2007 12:36]
Heikki Tuuri
Elan, thank you. Restoring a backup is tricky because you have to remember all files, .frm and others. Regards, Heikki