Heim > Datenbank > MySQL-Tutorial > Hauptteil

So lösen Sie das Problem des Vergessens von Root in Linux MySQL

PHPz
Freigeben: 2023-04-21 14:25:15
Original
1192 Leute haben es durchsucht

在使用Linux系统和MySQL数据库时,我们不可避免地会遇到各种问题,比如忘记了root账户的密码。这时候,有些人可能会感到困惑和无助,但我们可以通过一些方法来重新设置root账户的密码。本文将向读者介绍忘记root账户密码后,如何在Linux上使用MySQL数据库。

  1. 使用sudo命令获取root权限

在Linux上操作MySQL需要拥有root权限,如果原本的root账户密码已经忘记了,可以使用sudo命令获取root权限,并重置新的root密码。

步骤如下:

  1. 打开终端,输入以下命令获取root权限:
sudo su
Nach dem Login kopieren
  1. 输入当前用户的密码,确认身份
  2. 进入MySQL:
mysql -u root
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
  1. 重置root密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
Nach dem Login kopieren

其中,NewPassword为新密码,可以根据实际情况修改。

  1. 退出MySQL:
quit;
Nach dem Login kopieren
Nach dem Login kopieren
  1. 使用--skip-grant-tables选项

如果无法使用上述方法获取root权限,可以使用MySQL的--skip-grant-tables选项来重置root密码。

步骤如下:

  1. 关闭MySQL:
sudo systemctl stop mysql
Nach dem Login kopieren
  1. 以管理员身份启动MySQL:
mysqld_safe --skip-grant-tables &
Nach dem Login kopieren
  1. 进入MySQL:
mysql -u root
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
  1. 切换到MySQL数据库:
use mysql;
Nach dem Login kopieren
  1. 更新root账户密码:
UPDATE user SET authentication_string=PASSWORD('NewPassword') WHERE User='root';
Nach dem Login kopieren

其中,NewPassword为新密码,可以根据实际情况修改。

  1. 刷新更新缓存:
FLUSH PRIVILEGES;
Nach dem Login kopieren
Nach dem Login kopieren
  1. 退出MySQL:
quit;
Nach dem Login kopieren
Nach dem Login kopieren
  1. 重新启动MySQL:
sudo systemctl start mysql
Nach dem Login kopieren

这种方法会关闭root账户的权限验证,因此在使用完该方法后要及时恢复权限验证,避免安全风险。

  1. 修改配置文件

如果使用上述方法均不能解决问题,还可以尝试修改MySQL配置文件来重置root密码。

步骤如下:

  1. 编辑MySQL配置文件:
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
Nach dem Login kopieren
Nach dem Login kopieren
  1. 在[mysqld]部分添加以下语句:
skip-grant-tables
Nach dem Login kopieren
  1. 保存并退出。
  2. 重启MySQL:
sudo systemctl restart mysql
Nach dem Login kopieren
Nach dem Login kopieren
  1. 进入MySQL:
mysql -u root
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
  1. 更新root密码:
UPDATE mysql.user SET authentication_string=PASSWORD('NewPassword') WHERE User='root';
Nach dem Login kopieren

其中,NewPassword为新密码,可以根据实际情况修改。

  1. 刷新缓存:
FLUSH PRIVILEGES;
Nach dem Login kopieren
Nach dem Login kopieren
  1. 修改MySQL配置文件:
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
Nach dem Login kopieren
Nach dem Login kopieren
  1. 删除之前添加的--skip-grant-tables语句。
  2. 保存并退出。
  3. 重启MySQL:
sudo systemctl restart mysql
Nach dem Login kopieren
Nach dem Login kopieren

总结

忘记root密码是一个常见的问题,在使用Linux和MySQL时不可避免地会遇到。本文介绍了三种重置root密码的方法,其中使用sudo命令和--skip-grant-tables选项是最常用的方法,但需要注意在使用后及时恢复权限验证。如果以上方法都不能解决问题,需要考虑其他的解决方案,比如重新安装MySQL等。但无论使用哪种方法,都应该谨慎操作,并遵循操作规范,以保证数据的安全。

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem des Vergessens von Root in Linux MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage