首页 > 解决方案 > 无法为 MySQL root 用户设置密码

问题描述

我试图让 MySQL 在我的本地主机上运行。我以前从未遇到过这种情况,但在安装sudo apt-get install mysql-server时并没有要求我输入初始密码。

在搜索“重置”我的密码并与目录权限作斗争的答案后,我目前处于这种状态:

mysqld_safe 解决方案:

该系统是Linux 4.15.0-48-generic #51-Ubuntu SMP.

mysqladmin 解决方案

如果我运行mysqladmin -u root password '0000'(没有sudo),我得到:

mysqladmin:连接到“localhost”的服务器失败

错误:'拒绝访问用户'root'@'localhost''

如果我用 运行它sudo,我会得到:

mysqladmin:[警告] 在命令行界面上使用密码可能不安全。

警告:由于密码将以明文形式发送到服务器,请使用 ssl 连接以确保密码安全。

最后一个并没有真正告诉我有关密码更改是否发生的任何事情。它是否被拒绝(因为它是警告,而不是错误,我认为它应该通过),但在任何一种情况下,尝试连接0000仍然说“访问被拒绝”。

非常感谢任何有关如何解决此问题的建议。

标签: mysqllinuxmysqladmin

解决方案


我并没有mysql直接解决问题;然而对我自己来说,可接受的解决方案是切换到不同的数据库软件,但它仍然是 MySQL 系统,它让我启动并运行。因此,如果有人陷入无法像我一样工作的现有解决方案上,也许这会派上用场,让您上路并最终再次编写代码。

我所做的是:

  1. 清除mysql了我的系统
  2. 手动删除/etc/mysql/var/lib/mysql(不知道这一步是否必要)
  3. apt clean, apt autoremove,apt update
  4. 已安装mariadb
  5. 按照这些说明摆脱了超时错误
  6. 使用该mysqld_safe --skip-grant-tables方法创建具有所有权限的新用户,因为连接root总是失败

PHP + MariaDB 现在又可以工作了。


推荐阅读