Loading

yum安装mysql后root用户的临时密码

1.查看root用户临时随机密码

yum 安装mysql后,无法通过空密码登录数据库,如下:

1 [root@123 mysql]# mysql -u root -p
2 Enter password: 
3 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

 

查找后,原来为了增加数据库的安全性,在安装时会为root用户生成一个临时的随机密码,存放在/var/log/mysqld.log 中。root用户的临时密码查看方法如下(红色标注部分就是其临时密码):

1 [root@123 mysql]# grep 'password' /var/log/mysqld.log |head -n 1
2 2017-06-17T02:01:01.026946Z 1 [Note] A temporary password is generated for root@localhost: XqWlxlV3p.a8
3 [root@junqi mysql]# mysql -u root -p
4 Enter password: 
5 Welcome to the MySQL monitor.  Commands end with ; or \g.
6 Your MySQL connection id is 31169
7 Server version: 5.7.18

2.修改root用户密码

使用临时密码登录数据库后,mysql会提示你修改临时密码,否则无法使用,如下:

1 mysql> show databases;
2 ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

使用ALTER USER命令修改用户:(本人未使用,在此附上链接,以便以后方便查看)

http://blog.csdn.net/ziwen00/article/details/8460754

ALTER USER格式如下:

  alter user [用户名] indentified by [新密码];

修改root的密码,使用了如下方法,三步完成密码密码的更改:

mysql> set password('123455');       #红色部分是新密码
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
#提示信息:密码不适应当前的密码策略的要求,具体的原理不在这里阐述,可以参见安装MySQL5.6新建用户并创建密码时总是提示密码不符合要求:ERROR 1819 (HY000): Your password does NOT..解决
#解决方法:这里我们可以参考为root用户生成的密码的格式【大小写字母+数字——特殊符号】
mysql> ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

使用新密码可以登录到数据库。

3.配置数据库的远程连接

1 mysql>CREATE USER 'root'@'%' IDENTIFIED BY '您的密码';
2 # 增加root用户指定可以任意IP登录,如果想限制只能让指定IP登录请把%替换成IP地址
3    
4 mysql>GRANT ALL PRIVILEGES ON * . * TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
5 #给新添加的root增加权限

 

 

 

  

 

posted @ 2017-06-17 11:23  Q1mt  阅读(19745)  评论(2编辑  收藏  举报