http://www.jb51.net/article/120263.htm

前言

今天在工作发现一个错误,在往本地导数据表的时候老是报错:

1
[Err] 1294 - Invalid ON UPDATE clause for '字段名' column

报错的数据表字段:

1
`字段名` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP

同事说同一个 sql 文件他可以导成功。猜可能是数据库版本的问题,同事的是 5.6,我查了下本地的数据库版本是 5.5.53。网上查了一下,果然是版本的问题,5.5 和 5.6 在 TIMESTEMP 的行为上有所不同,5.6.5 之前的版本不支持多个CURRENT_TIMESTAMP 默认值。

由于本地用的集成环境是 phpStudy 2016,没有找到升级 MySQL 版本的选项,所以自己升级一下。

从官网上下载高版本的 MySQL :

官方网址:https://dev.mysql.com/downloads/file/?id=467269

百度云盘地址:https://pan.baidu.com/s/1mi4UHtA

选的版本是 5.7.17(后面才发现 5.7 版本的安装、系统表字段等又和之前的版本有所不同)。

步骤:

一、备份原来 phpStudy 中 MySQL 安装目录

二、把下载的 MySQL 压缩文件解压至 phpStudy 下的 MySQL目录,复制 my-default.ini ,重命名为 my.ini。

打开 my.ini,找到 #basedir 处编辑:

1
2
basedir=D:/phpStudy/MySQL
datadir=D:/phpStudy/MySQL/data

三、把 MySQL 安装路径添加至系统环境变量

四、在 cmd 下进入 MySQL 的 bin 目录(我的是 D:/phpStudy/MySQL/bin),执行:

1
mysqld --initialize

初始化数据库

五、安装服务:

1
mysqld -install

启动服务:

1
net start MySQL

六、此时登入 MySQL 报错:

1
2
3
C:\Users\dell>mysql -uroot -p
Enter password: ****
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

尝试修改 root 用户密码:

打开 my.ini,找到 [mysqld],在下面添加:

1
skip-grant-tables

此时使用 root 账号,密码处按回车即可登录。

修改密码:

1
2
mysql>update mysql.user set authentication_string=password('new_password') where user='root' and Host ='localhost'
mysql> ALTER USER USER() IDENTIFIED BY 'news_password';

刷新权限:

1
FLUSH PRIVILEGES;

注释掉 my.ini 中刚才添加的

1
skip-grant-tables

重新登录。

此时查看 mySQL 版本:

1
2
3
4
5
6
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.7.17  |
+-----------+

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

phpStudy中升级MySQL版本到5.7.17的方法步骤的更多相关文章

  1. phpstudy里升级mysql版本到5.7

    phpstudy里没有地方可以设置mysql数据库,很多人都疑惑在phpstudy里怎么升级mysql数据库版本,本文就教你如何在phpstudy中升级mysql的版本. PhpStudy集成环境中的 ...

  2. 升级 phpStudy 中 MySQL 版本至 5.7.17

      由于本地用的集成环境是 phpStudy 2016,没有找到升级 MySQL 版本的选项,所以自己升级一下. 从官网上下载高版本的 MySQL :https://dev.mysql.com/dow ...

  3. 关于升级 phpStudy 中 MySQL 版本至 5.7.17

    mysql版本低于5.6 自动更新时间会报错.因此要升级mysql版本.综合网上资料和实际过程中遇到的问题,具体细节和注意事项如下: 1.从官网上下载高版本的 MySQL :https://dev.m ...

  4. 好多坑的升级 phpStudy 中 MySQL 版本至 5.7.17

      由于本地用的集成环境是 phpStudy 2016,没有找到升级 MySQL 版本的选项,所以自己升级一下. 从官网上下载高版本的 MySQL :https://dev.mysql.com/dow ...

  5. PHPSTUDY下升级mysql后无法启动

    说来也是搞笑,之前很早就想看Laravel了~其中,之前项目忙,还有就是自己也出了点事故!但是呢,我个人哭过,抱怨过,但是我还是很懂我自己的.也许没心没肺也是一种好事,但也是坏事~ 闲话说多了,来说正 ...

  6. CentOS6.x升级MySQL版本5.1到5.6

    CentOS6.x升级MySQL版本5.1到5.6 分类: Web MySQL 2014-08-04 11:22 2813人阅读 评论(1) 收藏 举报 mysql云服务器升级centos6 有一些虚 ...

  7. Centos 升级MySQL版本或者Yum安装Mysql5.6

    Centos 升级MySQL版本或者Yum安装Mysql5.6 1.从MySQL Yum仓库下载最新的rpm文件:http://dev.mysql.com/downloads/repo/yum/Cen ...

  8. 云服务器 ECS > 建站教程 > 部署 LAMP (CentOS 7.2 ,Apache版本:2.4.23, Mysql 版本:5.7.17 , Php版本:7.0.12)

    云服务器 ECS > 建站教程 > 部署 LAMP (CentOS 7.2) 部署 LAMP (CentOS 7.2) 文档提供方:上海驻云信息科技有限公司    更新时间:2017-06 ...

  9. PHPNow升级PHP版本为5.3.5的方法(转)

    PHPNow升级PHP版本为5.3.5的方法 原文:http://sharebar.org/1142.html 在WIN上有时候需要测试一些PHP程序,又不会自行独立配置环境,那么PHPNow是非常好 ...

随机推荐

  1. jsp之jstl(展示所有商品、重写登录案例)

    jsp之jstl jstl: jsp标准的标签库语言,apache的,是用来替代java脚本 使用步骤: 1.导入jar包 (jstl.jar和standard.jar) 2.在页面上导入标签库 &l ...

  2. 洛谷 P3950 部落冲突 树链剖分

    目录 题面 题目链接 题目描述 输入输出格式 输入格式 输出格式 输入输出样例 输入样例1 输出样例1 输入样例2 输出样例2 输入样例3 输出样例3 说明 思路 AC代码 总结 题面 题目链接 P3 ...

  3. Leetcode917.Reverse Only Letters仅仅反转字母

    给定一个字符串 S,返回 "反转后的" 字符串,其中不是字母的字符都保留在原地,而所有字母的位置发生反转. 示例 1: 输入:"ab-cd" 输出:" ...

  4. 如何实现已发布app的自动更新

    要实现app的自动更新,做两件事情就可以搞定 1.获取当前手机中的app版本号 我们可以通过查询mainbundle中的获取CFBundleVersion NSDictionary *infoDict ...

  5. Servlet小结(转载)

    http://www.iteye.com/topic/766418 1 .首先,什么是Servlet?        Servlet是一个Java编写的程序,此程序是在服务器端运行的,是按照Servl ...

  6. Oracle之PL/SQL编程

    PL/SQL(Procedural Language/SQL,过程语言/SQL) 是结合了Oracel过程语言和结构化查询语言(SQL)的一种扩展语言. 优点: (1)PL/SQL具有编程语言的特点, ...

  7. Directx11教程(7) 画一个颜色立方体

    原文:Directx11教程(7) 画一个颜色立方体       前面教程我们通过D3D11画了一个三角形,本章我们将画一个颜色立方体,它的立体感更强.主要的变动是ModelClass类,在Model ...

  8. python 正则表达式匹配过程

  9. More Effective C++: 05技术(29)

    29:引用计数 本章首先实现一个带引用计数String,然后逐步优化,介绍引用计数的常规实现. 实现引用计数的String,首先需要考虑:引用计数在哪存储.这个地方不能在String对象内部,因为需要 ...

  10. 四.使用JDBC进行批处理操作

    1 create table testbatch 2 ( 3 id int primary key, 4 name varchar(20) 5 ); 在实际的项目开发中,有时候需要向数据库发送一批SQ ...