mysql启动错误1067一解决方法

上一篇 / 下一篇  2009-06-09 11:26:27 / 个人分类:日志

有时我们要对于mysql的data文件夹进行复制。在另一台机器的mysql上使用这些数据库

如果你的数据库是InnoDB格式,那么在启动mysql的服务时会出现1067错误。

网上有许多的解决方法,但在我这都不成功。自己试,试出一法。

不动你要运行机器上的mysql/data文件夹的东西。直接将你要复制到这台机器的数据库(是个文件夹)和ibdata1文件复制到data文件夹下(不要复制其它的)。启动服务,OK。(可能需要先建同名,同类型的数据库,没试)

附,网上的解决办法:

mysql启动错误1067的解决
关键字: mysql启动错误, mysql, 1067的解决
安装后MYSQL5后,发现启动出错,有时启动正常,但加接时马上出错。

出错代码:1067

解决办法如下:

删除%windows%/my.ini
删除其它地方的my.ini
在mysql安装目录下把my-small.ini复制为my.ini
在my.ini最后一行插入:
CODE:
[mysqld]
#设置basedir指向mysql的安装路径
basedir=C:\mysql-5.1.11-beta-win32
datadir=C:\mysql-5.1.11-beta-win32\data

MySQL 無法啟動,錯誤:1607
在使用MySQL的過程中,有時候會遇到這個錯誤,當MySQL啟動的時候,
它必須去讀取設定檔,也就是my.ini,然後從my.ini得到所要啟動的相關
細節後,接著才啟動服務,有點像讀取相關configure。
當發生錯誤:1067的時候,原因是因為,my.ini檔案裡面的設定值,在原先
的MySQL,並無法達到它所要求的動作,所以,如果你記得你是更改了my.ini哪個
設定值,就馬上去把它改回來吧。
我曾經遇過一次經驗,罪魁禍首則是InnoDB在作祟,MySQL的InnoDB資料庫格式,用
兩個檔案儲存,一個是logfile,一個是datafile;當時會發生1067錯誤,是因為在
my.ini裡面,除了選擇啟動InnoDB格式的資料庫格式,但如果只選擇啟用,還不一定
會發生這樣的情形,會造成1067錯誤是因為,我們選擇了InnoDB為預設儲存格式,倘若
你覺得不一定要用InnoDB,你可以把my.ini裡的defaut-storage-engine=INNODB
這一行拿掉,但是這樣一來,你的原先資料都會從InnoDB改成MyISAM,MyISAM目前沒
提供外來鍵,關聯等的支援就是了。
網路上的流傳解決1067錯誤方法有下列幾種:
一、將所有的Datafile砍掉,這個地方就是你資料庫系統要存資料的地方,其實原先的
  錯誤就從這裡延伸出去,倘若你光重灌MySQL而沒砍掉這些東西,原先的1067錯誤還是
  有可能存在的,不過這樣的方法,將會使你的舊有資料完全不見了,就像痘痘一樣。
二、將原先和my.ini的鄰居,my-small.ini或是my-INNODB-heave-4G.ini這類的檔案,
  改成my.ini,然後覆蓋原先的my.ini,其實my-small.ini這一類的檔案,是屬於官方
  的預設檔案,你可以依照你的系統大小,來選擇這些檔案,譬如像my-small.ini,就是
  給予低負載小系統,算是官方推薦的設定值,但值得注意的是,這些預設值,並沒有啟動
  InnoDB,就算有選擇啟動,也沒把它當成預設儲存引擎,就算有選擇啟動,也有可能因為
  啟動失敗,而你依然只能用MyISAM作為儲存引擎,我們一開始會選擇InnoDB作為預設引擎
  ,是因為我們在GUI安裝介面就選擇了,所以才會在my.ini加上那行指令。
那為什 會有可能因為InnoDB的關係,而造成1067錯誤?第一種可能是因為,我們在重灌MySQL
的時候,因為logfile的關係,而造成新的系統無法正確載入logfile,載入了舊的logfile,而
這個檔案的新設定又跟以前不一樣,所以它無法正確讀入;第二種可能是因為,我們在重新對MySQL
作設定時,在舊的那個服務,動到了以前的logfile,使它無法讀入,總言之,logfile是罪魁禍首
,倘若你建立一個新的logfile,似乎還是會有問題,因為新的logfile不一定能讀到舊的datafile
,相反地,它還會建立一個新的datafile,而你得到的,還是新的空白,而舊的資料就像變了心的
女朋友,回不來了!
所以我使用了這種方法,首先,備份舊的datafile,並且把你的MySQL砍掉重練,原先的資料夾也一
並砍掉,在重新安裝系統時,MyDataFiles的存放位置,和原先的舊系統存放位置要一樣,然後把舊
的datafile覆蓋過去,覆蓋新的datafile,這樣一來,新的logfile是屬於正常沒問題的,它也會
乖乖的把你舊的datafile當新的讀入,這樣一來,你就可以解決1067錯誤,而舊的資料依然陪伴著你

當然,這只是我的作法,至於正不正確,我可不敢保證喔XD


TAG:

 

评分:0

我来说两句

我的栏目

日历

« 2024-02-20  
    123
45678910
11121314151617
18192021222324
2526272829  

数据统计

  • 访问量: 38888
  • 日志数: 57
  • 图片数: 4
  • 文件数: 1
  • 建立时间: 2008-12-01
  • 更新时间: 2012-06-27

RSS订阅

Open Toolbar