CentOS 初次登录mysql

执行mysql -u root -p命令,此时并不知道root密码是什么。

[root@localhost bin]# mysql -u root -p

Enter password: 

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

2 详细步骤操作

Mysql 安装完成后临时密码存于 /var/log/mysqld.log文件中。获取自动生成的临时密码

[root@localhost bin]# grep "password" /var/log/mysqld.log 

2016-12-26T05:36:59.714175Z 1 [Note] A temporary password is generated for root@localhost: tw=gB-DvY4CI

 

跳过root临时密码登录数据库修改密码

1. Stop mysql:systemctl stop mysqld

2. Set the mySQL environment option 

systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"

3. Start mysql usig the options you just set

systemctl start mysqld

4. Login as root

mysql -u root

5. Update the root user password with these mysql commands

mysql> UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPassword')  WHERE User = 'root' AND Host = 'localhost';

mysql> FLUSH PRIVILEGES;

mysql> quit

6. Stop mysql

systemctl stop mysqld

7. Unset the mySQL envitroment option so it starts normally next time

systemctl unset-environment MYSQLD_OPTS

8. Start mysql normally:

systemctl start mysqld

9. Try to login using your new password:

 mysql -u root -p

猜你喜欢

转载自blog.csdn.net/weixin_37773766/article/details/80303576