您的位置:首页 > 数据库 > MySQL

MySQL5.7重置root密码

2016-01-18 14:15 721 查看
版本更新 缘故,好多网上的教程都不适用了,甚至连官网的文档也不是能够顺利操作的。

如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。

运行mysqld_safe --skip-grant-tables &

如果此时不想被远程连接:mysqld_safe --skip-grant-tables --skip-networking &

使用mysql连接server

更改密码: update mysql.user set authentication_string=password('12345678') where user='root' and Host = 'localhost';

*特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了

而是将加密后的用户密码存储于authentication_string字段

mysql> flush privileges;

mysql> quit;

修改完毕。重启

killall -TERM mysqld

mysqld_safe &

然后mysql就可以连接了

再次登入之后

ALTER USER USER() IDENTIFIED BY
'12345678'
;(5.7之后)


SET GLOBAL validate_password_policy='LOW';

降低安全等级后,就可以直接使用,限制是必须8个字符以上;

在进入:

show databases;

use mysql;

select host,user from mysql.user;

create user 'test'@'%' identified by '12345678';
GRANT ALL PRIVILEGES ON *.* TO 'test'@'%' IDENTIFIED BY '12345678' WITH GRANT OPTION;  赋予打开数据内容以及远程访问

mysql>update user set host = '%' where user = 'root';

flush privileges;
#刷新才会生效


参考:

打开MySQL数据库远程访问的权限

自启动

cp mysql.server /etc/init.d/mysql

chmod +x /etc/init.d/mysql

chkconfig --add mysql
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: