PhpStudy升级MySQL5.5到5.7记录

1.下载mysql 5.7 https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.25-winx64.zipphp

2.备份目前的数据库数据,能够导出数据库文件,做为备份。mysql

3.备份 PhpStudy 下的 MySQL 文件夹、以防升级失败、还可使用旧版本5.5的数据库。sql

4.将下载的压缩包解压到PhpStudy/MYSQL。数据库

5.新建PhpStudy/MYSQL/my.ini文件(这个压缩包没有my.ini须要新建,若是已有,就不用),修改这两项安全

basedir="D:/phpStudy/MySQL/"服务器

datadir="D:/phpStudy/MySQL/data/"工具

文件配置以下ui

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 
[mysqld]
skip-grant-tables
#设置3306端口
port = 3306 
# 设置mysql的安装目录
basedir="D:/phpStudy/PHPTutorial/MySQL/"
# 设置mysql数据库的数据的存放目录
datadir="D:/phpStudy/PHPTutorial/MySQL/data/"
# 容许最大链接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 建立新表时将使用的默认存储引擎
default-storage-engine=INNODB
default-storage-engine=INNODB
default-storage-engine=INNODB

6.以管理员的身份运行cmd、进入MySQL目录,运行this

> mysqld --initialize编码

> mysqld -install

这里可能出错:安装 mysql出现 Install/Remove of the Service Denied!

缘由:命令行没有以管理员权限打开

解决方法:打开cmd.exe程序的时候选择“用管理员身份打开”,再运行mysqld install便可,win10打开方法:定位到桌面左下角的搜索按钮,而后输入cmd搜索,右键-》以管理员身份运行

 

7.启动mysql服务: D:\phpStudy\PHPTutorial\MYSQL\bin>net start mysql

8.设置密码    mysqladmin -u root -p password root

点击enter,再点击enter。

然而我这边点 enter 以后是报错,也登陆不了mysql

怎么输密码都不行

 

9.好事多磨,只能按修改root 密码的方式从新设置密码了。

 

10.中止mysql服务net stop mysql

11.my.ini 开启skip-grant-tables

12.用安全模式打开,mysqld --skip-grant-tables

这个时候,光标会一直闪。注意,不要动,打开另外一个命令行窗口。

13.和前面同样的操做来到bin目录下,登陆 mysql -u root -p

密码为空,直接回车;就能够进去了

14.修改root密码,而后刷新权限,退出,再用密码登陆,能够成功登陆。欧耶!

mysql> update mysql.user set authentication_string=password("root") where user="root";

mysql> flush privileges;

mysql> quit;

D:\phpStudy\PHPTutorial\MYSQL\bin>mysql -u root -p

15.但是执行sql语句的时候仍是会报错,使用phpMyAdmin管理工具也没法登陆,显示错误:#1862 没法登陆 MySQL 服务器

ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

16.登陆mysql -》执行sql 查看

D:\phpStudy\PHPTutorial\MYSQL\bin>mysql -u root -p

mysql> select 1;

17.重置mysql 的root 密码

mysql> set password = password('root');

mysql> alter user 'root'@'localhost' password expire never;

mysql> flush privileges;

mysql> quit;

18.搞定,收工,吹牛逼,注释my.ini的skip-grant-tables。

相关文章
相关标签/搜索