Mysql

恢復 InnoDB

  • January 12, 2013

處境艱難。在 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         |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+

我發現了這個問題。這是使用錯誤 ibdata1 文件的組合,然後我錯誤地將文件複製到 /var/lib/mysql/mysql 文件夾中。解決了這兩個問題後,一切都恢復了正常。

我不明白的是,為什麼事情一開始就壞了?我安裝了 Kaltura,事情壞了,據我所知,最後只是將文件複製並粘貼回 mysql 目錄。所以就好像我什麼都沒改變。

嗯嗯嗯……

但是感謝大家的幫助!這裡的評論和其他相關問題的答案讓我對 InnoDB、備份和文件結構有了更好的理解。謝謝!

-和

引用自:https://serverfault.com/questions/466165