mysql1033錯誤 InnoDB臨時表空間報錯


問題簡介

1 數據庫5.0無法打開innodb的表,只能打開mysam表

2 數據庫5.0啟動異常,無法正常啟動

3 數據庫5.0崩潰,無法正常備份,無法正常導入導出

報錯提示

用mysql的時候出現1033-Incorrect information in file:“.\數據庫名\表名.frm”

InnoDB: Error: unable to create temporary file; errno:

3 InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes    (本次故障未出現)
  InnoDB: than specified in the .cnf file 0 67108864 bytes!

查找問題

1 通過第一個報錯觀察,只有frm的表,無法查詢,但是myisam表可以正常使用,推斷出mysql引擎可能有問題

2 mysql沒有正常啟動,只用了mysql myisam引擎啟動了,但是innodb引擎異常

3 查詢mysql引擎 show engines;show variables like '%storage_engine%';相關 可以看到innodb狀態為安裝未啟用disable

4 查詢什么原因導致innodb異常

5 通過第二個報錯,可以看出innodb表空間無法正常創建

6 查找innodb表空間位置,為C盤,C盤空間不是太多

7 修改配置文件innodb引擎臨時表空間位置 tmpdir="D:\mysqldata\" 不要再C盤 重新啟動mysql

8 修復后正常啟動mysql,可以正常查詢,但是無法正常提交相關,觀察配置文件,innodb_force_recovery 需要關閉(這個參數是用來強制修復innodb損壞數據的,再沒有備份的情況下不推薦使用)

解決問題

1 修改innodb臨時表空間位置

2 查詢innodb引擎是否正常

3 由於可能是磁盤空間滿導致的問題,所以以后所有臨時表空間不要放在C盤,實際上C盤空間並沒有滿,但是可能由於水位和釋放問題,導致mysql臨時表空間無法正常建立文件,有可能會導致日志和數據不一致等問題

4 修改配置文件臨時表空間位置  重新啟動

遇到新的問題

1 本次重啟,發現32位windows系統 啟動innodb buff 無法使用2G啟動,暫時調小1G啟動,解決釋放本機內存,重啟機器更換機器等等

2  InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes    
    InnoDB: than specified in the .cnf file 0 67108864 bytes!

    原來是日志文件的大小與描述的不一致。
    把log文件移走,再重啟mysql,問題解決

    注意innodb_fast_shutdown不能為2    可以在mysql中用 show variables like '%innodb_fast_shutdown%';來查看  默認為1

3  因為沒有備份,所以導致需要更小心謹慎去操作,以后要注意異地備份

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM