今天,测试环境下需要使用到mysql数据库;于是我使用yum安装方式快速部署了mariadb。使用的Linux系统版本为CentOS 7.x。
安装完成后,我很自然的使用mysql命令登陆,因为是刚安装的初始环境,结果报错了:
<code>[root@node ~]</code><code># mysql</code>
<code>ERROR 1045 (28000): Access denied </code><code>for</code> <code>user </code><code>'root'</code><code>@</code><code>'localhost'</code> <code>(using password: NO)</code>
第一次碰到这种情况。我检查了配置文件,没发现异常,另外yum安装,也是初始环境,应该不会有问题。无奈只能上网找找相关的案例试试。
还好,最后成功的解决了此问题。
解决步骤如下:
1,首先停掉数据库服务:
<code>[root@node ~]</code><code># systemctl stop mariadb.service</code>
2,使用mysqld_safe来启动mysqld服务器:
<code>[root@node ~]</code><code># mysqld_safe --user=mysql --skip-grant-tables --skip-networking &</code>
<code>[1] 4120</code>
<code>[root@node ~]</code><code># 170301 11:04:57 mysqld_safe Logging to '/var/log/mariadb/mariadb.log'.</code>
<code>170301 11:04:57 mysqld_safe Starting mysqld daemon with databases from </code><code>/var/lib/mysql</code>
3,登录:
<code>[root@node ~]</code><code># mysql -u root mysql</code>
<code>Reading table information </code><code>for</code> <code>completion of table and column names</code>
<code>You can turn off this feature to get a quicker startup with -A</code>
<code>Welcome to the MariaDB monitor. Commands end with ; or \g.</code>
<code>Your MariaDB connection </code><code>id</code> <code>is 1</code>
<code>Server version: 5.5.52-MariaDB MariaDB Server</code>
<code>Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.</code>
<code>Type </code><code>'help;'</code> <code>or </code><code>'\h'</code> <code>for</code> <code>help. Type </code><code>'\c'</code> <code>to </code><code>clear</code> <code>the current input statement.</code>
<code>MariaDB [mysql]></code>
4,修改root用户密码:
<code>MariaDB [mysql]> UPDATE user SET PASSWORD=PASSWORD(</code><code>'newpassword'</code><code>) where USER=</code><code>'root'</code><code>;</code>
<code>Query OK, 4 rows affected (0.00 sec)</code>
<code>Rows matched: 4 Changed: 4 Warnings: 0</code>
<code>MariaDB [mysql]> FLUSH PRIVILEGES;</code>
<code>Query OK, 0 rows affected (0.00 sec)</code>
<code>MariaDB [mysql]> QUIT</code>
<code>Bye</code>
<code>[root@node ~]</code><code>#</code>
5,使用修改后的root用户和新密码newpassword登录数据库:
<code>[root@node ~]</code><code># mysql -uroot -p</code>
<code>Enter password: </code>
<code>Your MariaDB connection </code><code>id</code> <code>is 6</code>
<code>MariaDB [(none)]></code>
到此,该问题成功解决!
本文转自 羽丰1995 51CTO博客,原文链接:http://blog.51cto.com/13683137989/1902267