当前位置: 移动技术网 > IT编程>数据库>Mysql > windows 下phpstudy 升级mysql版本5.7

windows 下phpstudy 升级mysql版本5.7

2018年11月20日  | 移动技术网IT编程  | 我要评论

六级考前答案,玄法变,史旭霞

今天在导入sql文件的时候遇到了sql执行错误。最后找到原因是因为mysql版本过低,导致出错

原因:在执行sql的时候出现了两次current_timestamp ,最后得知在5.7版本之前都是不支持同时出现两个current_timestamp

所以导致执行sql出错。下面是将mysql升级到5.7:

首先到官方区下载所需要的版本5.7

官方网址:

一、备份原来 phpstudy 中 mysql 安装目录

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

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

basedir="c:/phpstudy/phptutorial/mysql/" 
datadir="c:/phpstudy/phptutorial/mysql/data/"

以上两个是我对应的文件目录

三、在 cmd 下进入 mysql 的 bin 目录(我的是 d:/phpstudy/mysql/bin),执行:

mysqld --initialize   初始化数据库

四、安装服务

mysqld -install

五、安装成功后重启服务net start mysql,这个时候就可以查看自己的版本了

六、在此时登入 mysql 报错:

enter password: ****
error 1045 (28000): access denied for user 'root'@'localhost' (using password: yes)

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

skip-grant-tables      声明一下 skip-grant-tables  这行代码我见有人发布的是 要注释掉,但是我这边在使用laravel项目的时候注释掉就报错。大家可以试试这里两种情况

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

八、修改密码

mysql>update mysql.user set authentication_string=password('new_password') where user='root' and host ='localhost'
mysql> alter user user() identified by 'news_password';
 
刷新完在刷新一次权限:
flush privileges;
 

重新登录。

此时查看 mysql 版本:

 

最后在给大家说一个问题。5.7版本是装上了 但是phpstudy启动不了mysql,但是可以通过服务来进行启动。 只需要在执行一个

sc delete mysql 命令就可以了 因为你会看到服务里面有个mysql跟mysqla两个服务 ,两者发生了冲突所以就起不来了  

以上就是我今天所遇到的问题            希望大家多多交流

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网