systemctl stop mysqld
,2. 以安全模式启动MySQL:mysqld_safe --skip-grant-tables &
,3. 登录MySQL:mysql -u root
,4. 更新root用户密码:FLUSH PRIVILEGES;
,5. 退出并重启MySQL服务:exit; systemctl start mysqld
在CentOS系统中,MySQL作为一种常见的关系型数据库管理系统,经常需要获取和管理其密码,本文将详细介绍如何在CentOS系统中获取、修改和重置MySQL密码的方法,包括通过配置文件、登录系统以及跳过权限表模式等多种方式。
一、通过MySQL配置文件获取密码
MySQL的配置文件通常存储在/etc/my.cnf
或/etc/mysql/my.cnf
中,可以通过查看该文件来获取MySQL的密码,这种方法只适用于未加密存储密码的情况。
1、登录系统:使用SSH或其他方式登录到CentOS服务器。
2、查看配置文件:执行以下命令查看MySQL配置文件内容:
cat /etc/my.cnf
或者
cat /etc/mysql/my.cnf
3、查找密码:在配置文件中查找类似以下内容:
[mysql] user=root password=your_password
其中your_password
即为MySQL的密码。
二、通过MySQL登录获取密码
另一种获取MySQL密码的方法是通过登录到MySQL数据库系统来查看密码。
1、登录MySQL:执行以下命令登录MySQL:
mysql -u root -p
输入密码后进入MySQL命令行界面。
2、查看密码:执行以下SQL命令查看当前用户的密码:
SELECT User, Host, Password FROM mysql.user WHERE User='root';
注意:由于安全性原因,密码字段可能以加密形式显示。
三、修改MySQL密码
定期修改MySQL密码是网站安全的一个重要保证,以下是修改MySQL密码的方法:
1. 使用mysqladmin命令修改密码
第一次设置root密码(如果从未设置过):
mysqladmin -u root password NEWPASSWORD
已设置过密码,需要更改密码:
mysqladmin -u root -p 'oldpassword' password 'newpass'
旧密码是“12345”,新密码是“nowamagic”,则执行:
mysqladmin -u root -p '12345' password 'nowamagic'
2. 使用ALTER USER命令修改密码
登录MySQL:
mysql -u root -p
选择MySQL数据库:
USE mysql;
修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
刷新权限并退出:
FLUSH PRIVILEGES; EXIT;
四、重置MySQL密码(忘记密码时)
当忘记MySQL数据库密码时,可以通过skip-grant-tables模式启动MySQL,然后修改root用户的authentication_string为空,再重启服务,之后设置新的root密码。
1、编辑my.cnf配置文件:在末尾添加skip-grant-tables
:
vim /etc/my.cnf
添加以下内容:
[mysqld] skip-grant-tables
2、重启MySQL服务:
systemctl restart mysqld
3、登录MySQL并重置密码:
登录MySQL(此时无需密码):
mysql -u root
修改root密码为空:
USE mysql; UPDATE user SET authentication_string='' WHERE User='root'; FLUSH PRIVILEGES; EXIT;
4、去掉skip-grant-tables并重启MySQL:注释掉skip-grant-tables
,然后重启MySQL服务。
vim /etc/my.cnf # skip-grant-tables
systemctl restart mysqld
5、重新登录并设置新密码:此时可以空密码登录MySQL,然后设置新密码:
mysql -u root
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码'; FLUSH PRIVILEGES; EXIT;
五、常见问题解答(FAQs)
Q1: 如何更改CentOS中MySQL的root密码?
A1: 你可以使用以下方法之一来更改MySQL的root密码:使用mysqladmin
命令,或者登录MySQL后使用ALTER USER
命令,具体步骤如上文所述。
Q2: 如果忘记了MySQL的root密码怎么办?
A2: 如果忘记了MySQL的root密码,可以通过skip-grant-tables模式启动MySQL,然后修改root用户的authentication_string为空,再重启服务,之后可以设置新的root密码,具体步骤如上文所述。
六、小编有话说
在CentOS系统中管理和保护MySQL数据库的密码是非常重要的,通过上述方法,你可以轻松地获取、修改和重置MySQL密码,请务必定期更改密码,并妥善保管,以确保数据库的安全性,在进行任何涉及数据库的操作时,请务必小心谨慎,以避免数据丢失或损坏,希望本文对你有所帮助!
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1407893.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复