重新启动mysql服务器无法login

我有一个MySQL服务器的实例。 我无法login。我做了以下操作:

  1. > xxxx.log清理了一些日志
  2. mysqld restart重新启动mysql
  3. 我没有使用--user=mysql ,但是在my.cnf

现在我不能以任何用户身份login。

我怎样才能得到这个最简单,最正确的方式,而不会失去所有的login?

重置超级用户的密码。 见C.5.4.1。 如何从MySQL手册中重置根密码 ,以获取如何完成这些操作的详细信息。 基本上,您创build一个SQL文件,其中包含重置密码的命令,并通过--init-file选项将其传递给MySQL。

或者,使用--skip-grant-tables选项启动MySQL,以使任何人都可以在没有密码的情况下连接所有权限。

首先你应该检查的是mysqld错误日志。 通常在/var/log/mysqld.log或/var/log/mysql/error.log中find。

我想知道你是否破坏了你的InnoDB事务日志。 例如/var/lib/mysql/ib_logfile* 。 这你不应该这样做。 它们是固定长度的文件,必须与my.cnf中configuration的预期大小匹配,否则mysqld将不会启动。 错误日志会告诉你。