2.备份目前的数据库数据,可以导出数据库文件,作为备份。
3.备份 PhpStudy 下的 MySQL 文件夹、以防升级失败、还可以使用旧版本5.5的数据库。
4.将下载的压缩包解压到PhpStudy/MYSQL。
5.新建PhpStudy/MYSQL/my.ini文件(这个压缩包没有my.ini需要新建,如果已有,就不用),修改这两项
basedir="D:/phpStudy/MySQL/"
datadir="D:/phpStudy/MySQL/data/"
文件配置如下
[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目录,运行
> 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。