Centos MySQL --skip-grant-tables详解

跳过权限验证,导出数据备份

主机系统:Centos7 64位

数据库版本:MySQL5.7.40

使用--skip-grant-tables场景

1、忘记管理员密码
2、修改管理员密码
mysql -uroot -p

显示错误内容如下:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)  

我的 MySQL5.7 安装流程:步骤1,如果你的也是这样设置的,那请继续操作吧

解决方式:

1、进入yum.repos.d文件夹
cd /etc/yum.repos.d/
2、停止当前运行的MySQL服务
sudo systemctl stop mysqld
3、编辑MySQL的服务文件/usr/lib/systemd/system/mysqld.service,在[Service]部分新增以下配置

1、编写此文件

vim /usr/lib/systemd/system/mysqld.service

2、先把原先存在的这个配置注释掉,最下面添加这一行

ExecStart=/usr/sbin/mysqld --skip-grant-tables
4、重新加载修改后的服务文件
sudo systemctl daemon-reload
5、启动MySQL服务
sudo systemctl start mysqld

等待完全启动之后,你再次在命令行中输入mysql -uroot -p直接回车再回车,就进入数据库了,然后你可以进行备份数据以及表结构了

6、修改账号密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

flush privileges;

修改成功之后记得把之前的那个注释解掉,然后把这个删掉。

长时间使用skip-grant-tables后果:

1、安全性问题:不安全的,因为它会使我们的数据库容易受到攻击,请确保只在受信任的环境中进行
2、性能问题:导致MySQL服务器的性能下降
相关推荐
CodeHackerBhx32 分钟前
如何使用VMware安装Linux操作系统
linux·运维·服务器
小阿轩yx36 分钟前
小阿轩yx-通过state模块定义主机状态
linux·云计算·运维开发·state定义主机状态·jinja模板
睡不醒的小泽37 分钟前
VSCode环境下连接 MySQL 8.0 数据库 (C++)
数据库·windows·vscode
Pakho love3 小时前
Linux:软件包管理器 yum和编辑器-vim使用
linux·编辑器·vim
藓类少女3 小时前
正则表达式
数据库·python·mysql·正则表达式
吴半杯3 小时前
Linux-mysql5.7-mysql8.0安装包下载及安装教程,二合一
linux·运维·服务器
默行默致3 小时前
Linux 常用命令
linux·运维
魏 无羡3 小时前
pgsql 分组查询方法
java·服务器·数据库
szcsd1234567894 小时前
简单有效关于msvcp140.dll丢失的解决方法,msvcp140.dll修复的方法原理及步骤
数据库·dll文件·dll修复工具·dll修复·dll丢失
码哝小鱼4 小时前
firewalld实现NAT端口转发
linux·网络