我无法启动Mysql 5.6服务器,因为“TIMESTAMP隐含DEFAULT值已被弃用”错误?

时间:2013-05-30 09:36:07

标签: mysql

好的,这是我的故事,我去了mysql.com网站&将文件mysql-5.6.11-winx64.zip下载到C:中,然后我将其解压缩。然后我去了bin文件夹&使用以下命令启动服务器:

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服务器,但是当天结束的时候,我关闭了我的电脑,而我的MySQL服务器仍处于启动模式(即,我没有使用“{{1关闭mysql “关闭我的电脑之前”。

此外,当我的PC关闭时,Win 7开始从互联网上下载一些软件包以更新Win7,因此可以更改win7的配置。

但是今天我无法使用上面的命令启动Mysql Server,因为有一个错误:

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

我搜索了互联网&有人说我要去my.cnf档案&将此行添加到:

bin\mysqladmin -u root shutdown

但是,mysql 5.6中没有my.cnf文件,mysql5.6中有很多cnf文件,但名称不同:

explicit_defaults_for_timestamp = TRUE

我尝试将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 添加到上面的所有cnf文件中但没有帮助,我仍然无法启动mysql

我不想重新安装cos我在当前的mysql Server中创建了一个大数据库。

那么如何解决呢?

注意:当我第一次运行Mysql服务器时,win7会弹出一条消息说某些东西(我记不起来),比如“你允许......防火墙”,所以你认为自从Win7更新了配置以来,这就引起了这个问题。不知怎的,它重置防火墙,以便Mysql服务器无法启动?

2 个答案:

答案 0 :(得分: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 :(得分:1)

在Windows上,配置文件为my.ini,而不是my.cnf,在我的情况下是

C:\ProgramData\MySQL\MySQL Server 5.6

对.ini文件进行更改后,请执行以下操作:

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