恢复 InnoDB

恢复 InnoDB

情况有点棘手。在 Ubuntu 12.04 上运行 MySQL 5.5。为了给我们的内部站点添加一些功能,我安装了 Kaltura。安装后,我现有的 MySQL 数据库似乎丢失了所有数据。数据库仍然列出,但没有表。当然,5 个月前应该安装的备份软件并没有安装,所以在解决这个问题后,我拥有的最新备份是整个 /var/lib/mysql 文件夹的副本。根据 ibdata1 文件的大小,我相信所有内容都还在那里。

我尝试过几种恢复建议,但都不起作用。最后,mysql 无法启动,所以我重新安装了它并复制了我已有的文件夹,但 mysql 服务仍然无法启动。我真的不知道接下来该怎么办。(是的,我知道,备份,备份,备份)。任何帮助都将不胜感激。

谢谢

由@RolandoMySQLDBA 编辑 2013-01-11 11:44 EDT

请运行此程序并粘贴至此行下方

请求 #1ls -l /var/lib/mysql

请求 #2cat /etc/my.cnf | grep innodb

请求 #3:如果你可以登录mysql,运行show engines;

回复@RolandoMySQLDBA

请求 #1ls -l /var/lib/mysql

drwx------ 2 mysql mysql      4096 Jan 11 11:34 asdf
-rw-r--r-- 1 mysql mysql         0 Jan 11 11:34 debian-5.1.flag
-rw-r--r-- 1 mysql mysql         0 Jan 11 11:34 debian-5.5.flag
-rw-r----- 1 mysql mysql  18874368 Jan 11 11:34 ibdata1
-rw-r----- 1 mysql mysql 220200960 Jan 11 11:34 ibdata1.bak
-rw-r--r-- 1 mysql mysql 220200960 Jan 11 11:34 ibdata1.recovery
-rw-r----- 1 mysql mysql   5242880 Jan 11 11:35 ib_logfile0
-rw-r----- 1 mysql mysql   5242880 Jan 11 11:34 ib_logfile0.bak
-rw-r----- 1 mysql mysql   5242880 Jan 11 11:34 ib_logfile1
-rw-r----- 1 mysql mysql   5242880 Jan 11 11:34 ib_logfile1.bak
drwx------ 2 mysql mysql     16384 Jan 11 11:34 kaltura
drwx------ 2 mysql mysql    167936 Jan 11 11:34 kalturadw
drwx------ 2 mysql mysql      4096 Jan 11 11:34 kalturadw_bisources
drwx------ 2 mysql mysql      4096 Jan 11 11:34 kalturadw_ds
drwx------ 2 mysql mysql      4096 Jan 11 11:34 kalturalog
drwx------ 2 mysql mysql      4096 Jan 11 11:34 kaltura_sphinx_log
drwx------ 2 mysql mysql      4096 Jan 11 11:34 mysql
-rw-r----- 1 mysql mysql         6 Jan 11 11:34 mysql_upgrade_info
drwx------ 2 mysql mysql      4096 Jan 11 11:34 performance_schema
drwx------ 2 mysql mysql      4096 Jan 11 11:34 phpmyadmin
-rw-r----- 1 mysql mysql         4 Jan 11 11:34 ptl-cloud.pid
drwx------ 2 mysql mysql      4096 Jan 11 11:34 ptlEquipmentTracker
drwx------ 2 mysql mysql      4096 Jan 11 11:34 ptlTestDB
drwx------ 2 mysql mysql      4096 Jan 11 11:34 ptlTestDBArchive1
drwx------ 2 mysql mysql      4096 Jan 11 11:34 ptltestdbrec
drwx------ 2 mysql mysql      4096 Jan 11 11:34 rawr
drwx------ 2 mysql mysql      4096 Jan 11 11:34 test
drwx------ 2 mysql mysql      4096 Jan 11 11:34 testing
drwx------ 2 mysql mysql      4096 Jan 11 11:34 VirtualStripChart

请求 #2cat /etc/my.cnf | grep innodb

cat: /etc/my.cnf: No such file or directory

我运行了cat /etc/mysql/my.cnf | grep innodb它,运行良好,没有任何反馈

请求 #3:如果你可以登录mysql,运行show engines;

+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+

答案1

我找到了问题所在。这是由于使用了错误的 ibdata1 文件,而且我还错误地将文件复制到了 /var/lib/mysql/mysql 文件夹中。修复这两个问题后,一切都恢复正常了。

我不明白的是为什么事情一开始就出错了?我安装了 Kaltura,事情就出错了,据我所知,最后只是将文件复制并粘贴回 mysql 目录。所以就像我什么都没做一样。

嗯嗯......

但还是要感谢大家的帮助!这里的评论和其他相关问题的答案让我对 InnoDB、备份和文件结构有了更好的理解。谢谢!

-担

相关内容