Mysql 修改密码
问题描述
[root@bogon bin]# mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
通过密码登陆Mysql,出现以上这种情况的错误时,需要修改密码,具体操作如下:
1、重启Mysql
[root@bogon ~]# service mysql start
Redirecting to /bin/systemctl start mysql.service
[root@bogon ~]# cd /bin
[root@bogon bin]# systemctl start mysql.service
2、查找到my.cnf
[root@bogon ~]# whereis my
my: /etc/my.cnf
3、打开文件my.cnf
[root@bogon ~]# vim /etc/my.cnf
4、添加一行代码,用于跳过输入密码
按下I
键,输入代码
skip-grent-tables
按下ESC
键,退出命令模式
输入:wq
保存并退出
5、重启Mysql
[root@bogon ~]# /etc/init.d/mysqld restart
Shutting down MySQL.. SUCCESS!
Starting MySQL.. SUCCESS!
6、输入mysql,即可进入Mysql
[root@bogon ~]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
mysql>
7、修改密码
mysql> use mysql;
8、在5.7版本使用authentication_string
update user set password=password("123456") where user="root";
会出现错误
ERROR 1054 (42S22): Unknown column 'password' in 'field list'
可以使用如下语句
mysql> update mysql.user set authentication_string=password('123456') where user='root';
Query OK, 1 row affected, 1 warning (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 1
9、立即生效
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
10、退出Mysql数据库
mysql> quit
Bye
11、登陆数据库,输入新密码。
[root@bogon ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.26-log
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
登陆成功