MariaDB初始登陆报错 ERROR 1045 (28000) 的解决办法

今天,测试环境下需要使用到mysql数据库;于是我使用yum安装方式快速部署了MariaDB。使用的Linux系统版本为CentOS 7.x。

安装完成后,我很自然的使用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,登录:

[root@node ~]# mysql -u root mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 1
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 [mysql]>

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)]>

到此,该问题成功解决!

MariaDB 的详细介绍:请点这里
MariaDB 的下载地址:请点这里

相关推荐