安装完成后,我很自然的使用mysql命令登陆,因为是刚安装的初始环境,结果报错了:
[root@node ~]# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
第一次碰到这种情况。我检查了配置文件,没发现异常,另外yum安装,也是初始环境,应该不会有问题。无奈只能上网找找相关的案例试试。
还好,最后成功的解决了此问题。
解决步骤如下:
1,首先停掉数据库服务:
[root@node ~]# systemctl stop mariadb.service
2,使用mysqld_safe来启动mysqld服务器:
[root@node ~]# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
[1] 4120
[root@node ~]# 170301 11:04:57 mysqld_safe Logging to '/var/log/mariadb/mariadb.log'.
170301 11:04:57 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
3,登录:
4,修改root用户密码:
MariaDB [mysql]> UPDATE user SET PASSWORD=PASSWORD('newpassword') where USER='root';
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4? Changed: 4? Warnings: 0
?
MariaDB [mysql]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
?
MariaDB [mysql]> QUIT
Bye
[root@node ~]#
5,使用修改后的root用户和新密码newpassword登录数据库:
[root@node ~]# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor.? Commands end with ; or \g.
Your MariaDB connection id is 6
Server version: 5.5.52-MariaDB MariaDB Server
?
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
?
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
?
MariaDB [(none)]>
到此,该问题成功解决!