| 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
