MariaDB 连不上的问题

  • Posted on | Updated on
  • by
  • in

在前文介绍 MariaDB 数据库的安装中,有用了 mysql_secure_installation 命令,给 root 用户加上密码,看上去一切都很正常,在 Webmin 控制面板中也能很正常的操作。
但是在安装 phpBB 3 的论坛程序时,发现始终连不上 MariaDB 服务器,也没有找到错误信息的地方,不过我记得在我第一次在虚拟机里试装 Ubuntu 18.04 RC 版本的时候,曾经有过数据库 root 密码设置不生效的情况,当时是有错误信息的,也是连不上。

具体解决办法就是重新设置 root 用户密码。


sudo service mariadb stop
mysqld_safe --skip-grant-tables &
mysql -uroot

上面的步骤是关掉 MariaDB,忽略用户认证,并用 root 用户连上。 然后在 mysql 终端里,选择使用 mysql 管理库:

use mysql;

重置 root 密码为 mypassword (用真实密码代替)。

update user set password=PASSWORD("mypassword") where User='root';

下面一步是重写用户认证方式,如果是 unix_socket 方式也好,都会被普通的用户名密码方式所代替。

update user set plugin="mysql_native_password";

最后退出 mysql 控制台。

quit;

以上都做好之后,就需要关掉重启 mysql 服务器。


sudo service mariadb stop
sudo service mariadb start

又尝试重现了一下,同样的问题,在 phpmyadmin 中的错误信息。

mysql-connect-error.jpg

显示的错误信息是

mysqli_real_connect(): (HY000/1698): Access denied for user 'root'@'localhost'

重现错误信息后,通过重写用户认证方式,解决了问题。


作者: David Yin
原载: SEO 网站优化推广
版权所有。转载时必须以链接形式注明作者和及本声明。