由于更改主机,意外将自己锁定在 MySQL 之外

由于更改主机,意外将自己锁定在 MySQL 之外

当尝试让远程 MySQL 运行时,我不知何故设法用 root 帐户将自己锁定了。

通常情况下,我会停止 MySQL 服务并使用 重新启动它/etc/init.d/mysql --init-file,但当我尝试这样做时,它说脚本已转换为 upstart 作业并使用“service mysql”命令。不幸的是,据我所知,该service命令不支持该--init-file选项。

还有其他方法可以为 root 用户重置主机吗?

答案1

停止 MySQL:

service mysqld stop

然后像这样启动 MySQL

mysqld_safe --skip-grant-tables --skip-networking

此时您应该能够以 root 身份连接到 mysql(从本地机器)。

答案2

最终,该选项将被传递给mysqld_safe文档详细描述了这一点。您可能能够发现 upstart 如何调用 MySQL,然后使用您添加的--init-file选项以类似的方式手动启动它。但是,请确保您以正确的用户身份启动它!

如果你使用的是 Debian 或 Ubuntu,你可能会发现有一个相当于 root 的debian-sys-maint用户,你可以暂时使用它;你可以在 中找到该用户的自动生成的密码/etc/mysql/debian.cnf。其他系统上可能也有其他选择?这个选项可能更容易,

相关内容