在MySQL 8中重置root密码

时间:2018-09-27 16:47:53

标签: mysql

当我使用here中所述的方法来重置root密码时, 启动服务器,如:

mysqld --init-file=/home/username/init-file

...不起作用。 它给了我一个错误:

[Server] Could not open /var/log/mysqld.log file for error logging: Permission denied.

权限还可以。

当我使用服务器时,启动正常:

service mysqld start

Fedora 28,MySQL 8.0.12

更新

我能做到这一点的唯一方法如下。

编辑 etc / my.cnf ,添加行:

[mysqld]
skip-grant-tables

比正常启动mysql-server并运行

FLUSH PRIVELEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'newPassword';

然后,再次编辑 etc / my.cnf 并删除不必要的行。

感谢大家的建议。

3 个答案:

答案 0 :(得分:0)

只需在Phpmysql shell中键入以下命令即可。

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password'

答案 1 :(得分:0)

您必须先是/var/log/mysqld.log的所有者或组,然后才能执行此操作。由于无法写入日志文件而导致崩溃。

如果执行public function process(ContainerBuilder $container) { // Use our own CatchAll router rather than the default one $definition = $container->findDefinition('router.default'); $definition->setClass(CatchAllRouter::class); // register the service that we use to alter the targetPath saving mechanic $definition->addMethodCall('setTargetPathSavingStatus', [new Reference('App\Routing\TargetPathSavingStatus')]); // Use our own ExceptionListener so that we can tell it not to use saveTargetPath // after the CatchAll router intercepts a 404 $definition = $container->findDefinition('security.exception_listener'); $definition->setClass(FirewallExceptionListener::class); // register the service that we use to alter the targetPath saving mechanic $definition->addMethodCall('setTargetPathSavingStatus', [new Reference('App\Routing\TargetPathSavingStatus')]); // ... } ,可以看到谁拥有它,然后在尝试启动mysql之前执行ls -l /var/log/mysqld.log

您可能需要成为root用户(操作系统root用户,而不是mysql root用户),具体取决于系统的设置方式。

以下是权限和所有权的本意:

https://dev.mysql.com/doc/mysql-secure-deployment-guide/5.7/en/secure-deployment-permissions.html

答案 2 :(得分:0)

如果您可以登录到MySQL服务器,并且希望通过查询更改密码,则可以通过以下方式进行操作:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

或删除根密码:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '';

感谢此博客:https://juejin.im/entry/5b06698cf265da0db3501fdd

也在这里回答了相同的问题:https://stackoverflow.com/a/54511940/1157720