问题描述
想从服务器上DOWN下数据库。操作:先把数据库转存为SQL文件,然后在本地利用navicate运行SQL文件,出现错误信息:
Incorrect table definition;there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause
解决思路
参考:
http://www.cnblogs.com/joeylee/p/3877578.html
原因:TIMESTAMP中,低版本中不支持一个表中有两个TIMESTAMP字段。
解决方案:
1、select version(); 查看服务器上用的哪个SQL版本。 同步到本地。
2、卸载Mysql (原来已安装mysql 5.5 --->mysql 5.6)
I.利用安装与卸载应用程序卸载mysql。(需要关机重启)
II.cmd->services.msc 打开服务,看到MySQL服务名还在。
cmd->sc delete MySQL(要删除的服务名)
3、安装mysql
I.下载mysql 5.6 -64x.zip,解压后放到对应位置**。 下载位置:http://pan.baidu.com/s/1kVvYtIf
II.配置PATH环境变量
**/bin 配置到PATH
在**路径下找到my_default.ini或者新建一个my.ini
输入或更改
[mydqld]
basedir = **
datadir= **\data
4、启动mysql
I.cmd->cd **\bin ->mysqld --install
II.成功后继续输入 net start mysql
5、登录mysql
I.cmd->cd **\bin->mysql -u root -p
II.首次登录没有密码 直接登录成功
III.修改root的密码
use mysql;
update user set password=password("new_pass") where user="root";
flush privileges;
exit;
6、想要修改已经存在root密码
I.my.ini中加入(如果没有,可以在my_default.ini中)
[mysqld]
#跳过密码验证
#skip-name-resolve
II.然后在cmd中直接输入mysql -uroot 就可以直接登录 执行上一步的第三项就可以了
7、登录成功后,再次执行同步后就不出现问题了.