我本地的服務器用的是wamp , 重裝的時候, 要進行數據備份 , 我使用的最簡單粗暴的備份方式, 就是直接進入到mysql的安裝目錄下, 把data拷貝一份就可以了.
然后卸載wamp后重裝,數據遷移就是把data貼到相同位置替換下就ok了
但是今天遷移完后,mysql怎么也啟動不了,查看log,顯示各種錯誤
2014-11-13 13:40:29 5196 [Note] Plugin "FEDERATED' is disabled.
2014-11-13 13:40:29 5196 [Note] InnoDB: The InnoDB memory heap is disabled
2014-11-13 13:40:29 5196 [Note] InnoDB: Mutexes and rw_locks use Windows interlocked functions
2014-11-13 13:40:29 5196 [Note] InnoDB: Compressed tables use zlib 1.2.3
2014-11-13 13:40:29 5196 [Note] InnoDB: Not using CPU crc32 instructions
2014-11-13 13:40:29 16e4 InnoDB: Error: unable to create temporary file; errno: 2
2014-11-13 13:40:29 5196 [ERROR] Plugin 'InnoDB' init function returned error.
2014-11-13 13:40:29 5196 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2014-11-13 13:40:29 5196 [ERROR] Unknown/unsupported storage engine: InnoDB
2014-11-13 13:40:29 5196 [ERROR] Aborting
查看各種資料后, 又有了粗獷的方式,刪除了data目錄下的除數據庫文件夾以及ibdata1之外的文件, 再重啟, ok了, 小綠圖標出來了,mysql正常啟動了。
*注意: 一定不要刪除ibdata1, 查了資料, 說這個是很重要的文件,保存著innodb相關的數據
當然,身為妹子的博主,自然有自己細心的一面, 為什么刪除了其他文件就可以啟動呢?
并且,在遷移過程中,妹紙做了各種測試.
1.僅替換data內的數據庫文件夾,重啟后mysql可以啟動,但用navicat連接數據庫后無法打開數據表,顯示數據表不存在 (即數據丟失, 上述ibdata1相關)
2.將事先備份的data內的數據庫文件夾以及ibdata1替換到data目錄下,重啟, mysql無法啟動
3.將ib_logfile0以及ib_logfile1刪除, 重啟 , mysql啟動正常, 連接數據庫數據表信息恢復.
大致搞懂了這三部分文件的用途, 具體原因, 還待深究 , 日后補文.
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com