sudo mysqld_safe --skip-grant-tables & , /var/lib/mysql 重置root密码时出错

Posted

技术标签:

【中文标题】sudo mysqld_safe --skip-grant-tables & , /var/lib/mysql 重置root密码时出错【英文标题】:sudo mysqld_safe --skip-grant-tables & , /var/lib/mysql error when resetting root password 【发布时间】:2019-01-09 16:13:24 【问题描述】:

我一直在尝试在 mysql 中重置我忘记的 root 密码。当我第一次尝试停止我的 mysqld 服务并尝试 mysqld --skip-grant-tables 我得到了这个错误

ERROR 2002 (HY000): 无法通过套接字 '/var/run/mysqld/mysqld.sock' 连接到本地 MySQL 服务器

(2) 这里也是同样的问题

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2).

上面的评论说要对 my.conf 文件做一些事情,我在这里找到了它

orpheus@Roedelius:/etc/mysql$ ls
conf.d      debian-start  my.cnf.fallback  mysql.conf.d
debian.cnf  my.cnf        mysql.cnf

我不知道如何处理 my.cnf 文件。

打开的 my.cnf 文件中除了 cmets 之外还有这个 -

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

所以我尝试了相同的方法来重新启动我的 mysql 服务器并停止它,然后使用 --skip-grant-tables,但当时我收到了这个错误 -

  2017-02-10T17:05:44.870970Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2017-02-10T17:05:44.872874Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2017-02-10T17:05:44.874547Z mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists

同样的问题在这里 mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists 。我按照最重要的答案步骤执行此操作mkdir -p /var/run/mysqld chown mysql:mysql /var/run/mysqld 然后尝试再次使用 --skip-grant-tables 进入 mysql 但现在我收到此错误

orpheus@Roedelius:/$ sudo mysqld_safe --skip-grant-tables &
[2] 17057
orpheus@Roedelius:/$ 2018-08-02T01:11:46.843096Z mysqld_safe Logging to syslog.
2018-08-02T01:11:46.845788Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2018-08-02T01:11:46.859083Z mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

我的终端现在只是这么说,不让我输入任何内容。我在 *** 上找到的所有重置我的 root 密码的答案只会导致错误,而且我不确定我是否通过遵循一些修复这些错误的指示来破坏某些东西。对于我当前的错误和重置我的 root 密码,我将不胜感激。

【问题讨论】:

Stack Overflow 是一个编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参阅帮助中心的What topics can I ask about here。也许Unix & Linux Stack Exchange 或Database Administrators Stack Exchange 会是一个更好的提问地点。 【参考方案1】:

这不是错误:您已经启动了 MySQL 服务器。现在你需要和它谈谈!

选项:

    打开另一个终端窗口,并使用“mysql”和 更新您的密码,或 通过运行hohup mysqld_safe --skip-grant-tables &(作为sudo)使用“nohup”,因为这将返回 控制到您可以连接的终端。

【讨论】:

好吧,我进入 mysql 并更改了它。现在我正在尝试再次启动服务器并输入此orpheus@Roedelius:~$ /etc/init.d/mysql start 现在我的终端显示此[....] Starting mysql (via systemctl): mysql.serviceJob for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details. failed!。为什么会失败? 您是否阅读了您输入的内容并继续执行?提示已提供给您 - 您在此处复制了它!

以上是关于sudo mysqld_safe --skip-grant-tables & , /var/lib/mysql 重置root密码时出错的主要内容,如果未能解决你的问题,请参考以下文章

尝试在mysql中更改密码时出错

Mac 下mysql 登录报错ERROR 1045 (28000)

关于mysql

MySql启动/停止

Mac 安装Mysql

Mac mysql 修改密码