2013-05-30 15 views
5

好吧,這是我的故事,我去mysql.com網站&下載的文件mysql-5.6.11-winx64.zip到C :,然後我解壓的它。然後我去bin文件夾&使用以下命令啓動服務器:我無法啓動mysql服務器5.6,由於「與隱含的默認值TIMESTAMP已過時」錯誤?

C:\mysql-5.6.11-winx64\bin\mysqld --standalone --local-infile=1 

一切順利的MySQL服務器順利開工。然後我停止服務器使用此命令:

C:\mysql-5.6.11-winx64\bin\mysqladmin -u root shutdown 

服務器已正確關閉。

我用這樣的方式開始&停止MySQL服務器幾次沒有任何問題。我的MySQL服務器仍然處於啓動模式(即,我沒有使用「bin\mysqladmin -u root shutdown」來關閉mysql),但是,我開始使用Mysql服務器,但當天結束時,我關閉了我的電腦,關掉我的電腦之前)。

而且,當我的電腦在那個時候得到了關閉,Win 7的已開始從互聯網上下載一些軟件包更新的Win7所以WIN7的配置可以改變。

 
[Warning] TIMESTAMP with implicit DEFAULT value is deprecated. 
Pls use --explicit_defaults_for_timestamp server option (see documentation for more details). 

我搜索了網上&有人說我必須去my.cnf文件&加入這一行:今天

但我無法使用上述命令有錯誤啓動MySQL服務器成:

explicit_defaults_for_timestamp = TRUE 

然而,在MySQL 5.6沒有my.cnf文件,還有在mysql5.6,但以不同的名稱很多CNF文件:

mysql-5.6.11-winx64\data\auto.cnf 
mysql-5.6.11-winx64\mysql-test\include\default_client.cnf 
mysql-5.6.11-winx64\mysql-test\include\default_my.cnf 
mysql-5.6.11-winx64\mysql-test\include\default_mysqld.cnf 
mysql-5.6.11-winx64\mysql-test\include\default_mysqld_autosize.cnf 
mysql-5.6.11-winx64\mysql-test\include\default_mysqld_ndbd.cnf 

我嘗試添加explicit_defaults_for_timestamp = TRUE到上述所有CNF文件,但沒有任何幫助,我仍然couln't啓動mysql

我不想重裝因爲我目前的MySQL服務器中創建一個大的數據庫。

那麼如何解決呢?當我第一次運行Mysql服務器時,win7彈出一條消息,說「你允許...防火牆」,所以你認爲這是造成這種情況的原因之一(我記不清了)的問題,因爲Win7的得到了它的配置更新&不知它重置防火牆,以便MySQL服務器無法啓動?

回答

3

@ Galadai,我定的,我解壓「mysql-5.6.11-winx64.zip」 &然後在舊的「mysql-5.6.11-winx64」中的數據複製文件夾到新的「mysql-5.6.11-winx64」,而不是複製「ib_logfile0」 &「 ib_logfile1「文件,然後啓動新的」mysql-5.6.11-winx64「,那麼它工作正常。無論如何,謝謝你的幫助。

1

在Windows上,配置文件是my.ini,不my.cnf,這在我的情況是在

C:\ProgramData\MySQL\MySQL Server 5.6 

一旦你已經更改了。ini文件中啓動它:

mysqld --defaults-file="C:\{path to .ini file}\my.ini"  
+0

此時,當我跑 「的mysqld --defaults文件=」 C:\ {路徑.ini文件} \的my.ini 「有沒有錯誤消息,但whenlogin到MySQL查詢瀏覽器GUI,它表示」 MySql錯誤沒有2003,無法連接到'127.0.0.1'(10061) – Tum

+0

上的Mysql服務器當我ping'127.0.0.1'時,它沒有任何問題回覆 – Tum

+0

它可能是window7上的防火牆問題?你是這麼認爲的嗎? – Tum