mysql root密码忘记了

use*_*405 7 mysql passwords root reset

我没有使用php mysql很长一段时间,现在我需要再次使用它.但问题是我忘记了mysql console的密码.当尝试登录phpmyadmin时收到错误#1045.在mysql网站上我看到一篇文章如何重置root密码(http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html#resetting-permissions-windows)

步骤是
创建一个mysql-init.txt文件,其中包含UPDATE mysql.user SET Password = PASSWORD('newpass')WHERE User ='root'; FLUSH特权;

我把它保存为C:\ me\mysql-init

在命令提示符下我写了 - C:\ wamp\bin\mysql\mysql5.5.8\bin\mysqld --init-file = C:\ me\mysql-init.txt

我尝试了双反斜杠也..但它不工作.mysql控制台要求输入密码,而不是新的.我做错了什么?我有几张桌子.怎么办?提前致谢.

Raj*_*hra 18

以下是要遵循的步骤:

  1. 使用以下命令找到 MySQL 配置文件: $ mysql --help | grep -A 1 "Default options"

在此处输入图片说明

在 Ubuntu 16 上,文件位置通常是 /etc/mysql/mysql.conf.d/mysqld.cnf

  1. 使用以下命令编辑配置文件: $ sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

  2. skip-grant-tables[mysqld]块下添加并保存更改。

在此处输入图片说明

  1. 使用以下命令重新启动 MySQL 服务: sudo service mysql restart

  2. 检查 MySQL 服务状态: sudo service mysql status

在此处输入图片说明

  1. 使用以下命令登录 mysql: $ mysql -u root

  2. 并更改root密码:

mysql> 刷新特权;

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'MyNewPass';

  1. 通过删除skip-grant-tables行或用#(散列)注释来恢复 MySQL 配置文件更改。

  2. 最后重启 MySQL 服务,一切顺利。


Noo*_*leX 9

尝试使用--skip-grant-tables启动mysql

mysqld --skip-grant-tables
Run Code Online (Sandbox Code Playgroud)

然后使用mysql命令行连接到没有用户名/密码的mysqld

shell> mysql

然后发出命令

> mysql> UPDATE mysql.user SET Password=PASSWORD('MyNewPass')
>        WHERE User='root'; mysql> FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)


Thu*_*bit 7

我无法得到mysqld阿德莱夫的工作答案.但这对我有用

使用--skip-grant-tables停止并启动mysql

service mysql.server stop
service mysql.server start --skip-grant-tables
Run Code Online (Sandbox Code Playgroud)

然后连接到没有用户名/密码的mysqld

mysql
Run Code Online (Sandbox Code Playgroud)

然后在mysql命令行上更新密码

 mysql> UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root'; 
 mysql> FLUSH PRIVILEGES;
 mysql> \q
Run Code Online (Sandbox Code Playgroud)

然后正常重启mysql

 service mysql.server restart
Run Code Online (Sandbox Code Playgroud)

  • `start -skip-grant-tables`命令抛出**错误!服务器退出而不更新PID文件**错误.. (2认同)

kha*_*ntt 5

如果其他答案无法帮助您,您可以尝试卸载/重新安装 mysql。它可以在我的 ubuntu 服务器上运行:

$sudo apt-get purge mysql*
$sudo apt-get autoremove
$sudo apt-get autoclean
Run Code Online (Sandbox Code Playgroud)

更新分发

$sudo apt-get dist-upgrade
Run Code Online (Sandbox Code Playgroud)

并重新安装

$sudo apt-get install mysql-server
Run Code Online (Sandbox Code Playgroud)