删除/etc/mysql目录,无法运行mysql

删除/etc/mysql目录,无法运行mysql

我已经删除了意外地将 /etc/mysql 目录现在我不能跑了mysql命令。有什么方法可以恢复它吗?

现在我在运行时收到此错误sudo /etc/init.d/mysql start

mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; disabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Wed 2018-08-15 20:17:03 EDT; 9s ago
  Process: 4101 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=1/FAILURE)

Aug 15 20:17:03 nullbyte systemd[1]: mysql.service: Service hold-off time over, scheduling restart.
Aug 15 20:17:03 nullbyte systemd[1]: mysql.service: Scheduled restart job, restart counter is at 5.
Aug 15 20:17:03 nullbyte systemd[1]: Stopped MySQL Community Server.
Aug 15 20:17:03 nullbyte systemd[1]: mysql.service: Start request repeated too quickly.
Aug 15 20:17:03 nullbyte systemd[1]: mysql.service: Failed with result 'exit-code'.
Aug 15 20:17:03 nullbyte systemd[1]: Failed to start MySQL Community Server.

答案1

恢复备份。

该目录不仅包含您的 MySQL 配置,还包含证书和用于恢复的 root 密码。除了您自己,没有人能够为您提供这些。

答案2

你也许可以这样做

sudo apt install --reinstall mysql-common

如果不起作用,请mysql-common.deb这里,选择正确的版本,使用存档管理器打开它,然后从中提取目录。您可能需要创建几个符号链接。在我的系统上,它们是:

/etc/mysql/my.cnf -> /etc/alternatives/my.cnf
/etc/alternatives/my.cnf -> /etc/mysql/mysql.cnf (this link probably still exists)

尽管 的最新版本附带了mysql的版本。因此请检查指向的内容。mysql.cnf/etc/mysql/conf.d/etc/alternatives/my.cnf

答案3

如果没有备份,恢复的机会太渺茫了。目录“/etc/mysql”有配置文件。最重要的文件是 debian.cnf。因为它有系统生成的密码。

尝试用手术刀恢复。

https://www.howtoforge.com/recover-deleted-files-with-scalpel

如果您无法恢复任何一个文件。我使用的是 mysql 5.7。如果您使用的是相同版本,请替换 debian.cnf 并尝试。

https://drive.google.com/file/d/1Fm8qxT92dAAF64xvMFQWI44XhsyokrW-/view?usp=sharing

所有者和组应为 root。

一切顺利

答案4

您可以完全重新安装 mysql,如另一篇文章所述https://unix.stackexchange.com/a/27558

相关内容