数据库登录报错信息: ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES) 解决数据库登录报错 在今天的MySQL数据库重置之后使用默认密码登录报错:
查看数据库的初始密码:
awk '/temporary password/' /var/log/mysqld.log //方法一
grep 'temporary password' /var/log/mysqld.log //方法二
[root@localhost ~]
2022-05-11T22:16:55.167414Z 1 [Note] A temporary password is generated for root@localhost: wtCqfv!1hZ2u
[root@localhost ~]
mysql -uroot -pwtCqfvsetenforce 0hZ2u
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
报错信息为:
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
解决方法一为将一条命令改换为两行命令执行
[root@localhost ~]
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.38
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
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>
Query OK, 0 rows affected (0.00 sec)
初始化登录成功后即可修改密码:
mysql> alter user root@localhost identified by 'MySQL@123';
Query OK, 0 rows affected (0.00 sec)
解决方法二开启symbolic-links=0 跳过密码登录到数据库
[root@node3 ~]
[mysqld]
symbolic-links=0
重启数据库
[root@node3 ~]
再次输入登录到MySQL的命令,执行按回车即可进入数据库
[root@node3 ~]
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.38 MySQL Community Server (GPL)
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
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>
登录数据库后即可进行修改密码 如在修改密码时有保错信息
mysql> alter user root@localhost identified by '123456';
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
使用flush privileges; 再次修改命令即可
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> alter user root@localhost identified by '123456';
Query OK, 0 rows affected (0.00 sec)
|