mysql5.7.19zip免安装以及修改root密码

下载

官方下载地址,可能你需要注册账号

下载64位版本,如下图:


解压到安装目录,比如我是E:\IDE\mysql-5.7.19-winx64

配置环境变量

新建环境变量MYSQL_HOME,值为安装目录E:\IDE\mysql-5.7.19-winx64
同时,添加安装目录下bin至path,以下两值皆可:

E:\IDE\mysql-5.7.19-winx64\bin;
%MYSQL_HOME%\bin;

命令行安装

嗯?难道不是免安装?


配置好了环境变量,就可以直接在命令行使用mysqld工具了

mysqld install
mysqld remove // 对应卸载


权限不足,另管理员权限开一个cmd


然后开启mysql服务,记得也是管理员权限

net start mysql
net stop mysql // 对应关闭

那么happy地

mysql -u root -p
// 回车


初始密码到底是什么!

修改默认密码

参考windows下修改Mysql5.7.11初始密码的图文教程

先关闭服务

net stop mysql

用安全模式打开

mysqld --skip-grant-tables

光标一直在闪,不要管,另开一个cmd

mysql -u root -p    // 登录
// 密码为空,直接回车

登录成功!

use mysql;  // 不要忘记分号

查看一下user表,密码都是个啥

select * from user;

可能先前的版本密码的抬头是password,5.7.19是 authentication_string。这密码太长,我不能接受

update user set authentication_string=password("123456") where user="root";
// 下面是老版本的,具体要看表里面的字段
update user set password=password("123456") where user="root";

更新为自己记得住的密码,再刷新一下

flush privileges;

为什么要flush呢?这是什么意思?我顺便百度了一下,下面这个解释原理讲的很清楚:

flush privileges; 命令本质上的作用是将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里。MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。通常是在修改ROOT帐号的设置后,怕重启后无法再登录进来,那么直接flush之后就可以看权限设置是否生效。而不必冒太大风险。

这样就能用新密码登录mysql了!
nice,结束!

using ALTER USER

还有bug:


参考mac mysql error You must reset your password using ALTER USER statement before executing this statement.执行如下3行命令即可

SET PASSWORD = PASSWORD('your new password');

ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

flush privileges;

也不用重启命令行

推荐阅读更多精彩内容