I run:
MariaDB 10.0.5
Ubuntu 12.04 LTS
Both up to the latest patch level as per last Friday
I ended up in pretty pickle with a previous problem:
http://stackoverflow.com/questions/19910996/mysql-connect-headers-and-client-library-minor-version-mismatch-library10000
This led to massive corruption because I copied and deleted my ibdata1, ib_logfile0 and ib_logfile1 to solve the symptom of the above problem. This problem started, I think, when I started the mariadb service. When I try to select one of the affected tables or run mysqldump, I get the following:
mysqldump -u backupusr -p'somepass' --all-databases > dump.sql
mysqldump: Got error: 1932: "Table 'some_db.dw_commentmeta' doesn't exist in engine" when using LOCK TABLES
Fortunately (EXTREMELY, fortunately) the data of my large website with the production client remains intact, and the website is online. Although in this database there is at least one damaged table. Now, to restore all the databases of my other sites.
ibdata1, ib_logfile0 ib_logfile1. /var/lib/mysql/, mariaDB .
, , - InnoDB:
http://dev.mysql.com/doc/refman/5.0/en/forcing-innodb-recovery.html
. Mysql, , :
mysql_upgrade --password --force
FATAL ERROR: Upgrade failed
, . REPAIR TABLE ALTER TABLE ENGINE:
http://dev.mysql.com/doc/refman/5.0/en/rebuilding-tables.html
:
MariaDB [sictnl_db]> ALTER TABLE si_users ENGINE = MyISAM;
ERROR 1932 (42S02): Table 'sictnl_db.si_users' doesn't exist in engine
:
MariaDB [sictnl_db]> REPAIR TABLE si_users;
+--------------------+--------+----------+----------------------------------------------------+
| Table | Op | Msg_type | Msg_text |
+--------------------+--------+----------+----------------------------------------------------+
| sictnl_db.si_users | repair | Error | Table 'sictnl_db.si_users' doesn't exist in engine |
| sictnl_db.si_users | repair | status | Operation failed |
+--------------------+--------+----------+----------------------------------------------------+
2 rows in set (0.00 sec)
, , . https://mariadb.com/kb/en/mariadb-storage-engines/ , , :
Aria
MyISAM
SHOW CREATE TABLE :
ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 |
, MyISAM , googling 'mysql repair myisam' :
Note: Would Aria have protected me against this issue?
http://dev.mysql.com/doc/refman/5.0/en/myisamchk.html
myisamchk, :
myisamchk /var/lib/mysql/sictnl_db/*
myisamchk: error: '/var/lib/mysql/sictnl_db/db.opt' is not a MyISAM-table
---------
myisamchk: error: '/var/lib/mysql/sictnl_db/si_commentmeta.frm' is not a MyISAM-table
---------
myisamchk: error: '/var/lib/mysql/sictnl_db/si_commentmeta.ibd' is not a MyISAM-table
, , , .MYI, .
, , - , , .
!