MySQL root 密码丢失问题与用户权限管理

root密码丢失问题处理

针对 MySQL 数据库root密码丢失的问题,可以通过添加 --skip-grant-tables 参数来跳过权限表。

MySQL 登录忘记 root 密码

在这里插入图片描述

强制停库,通过命令查看 MySQL 进程号,然后 kill -9 进程号

ps -ef | grep mysql

在这里插入图片描述

加跳过权限表参数,重启 MySQL 数据库。这样不输入密码,也可以登录数据库

./mysqld_safe --defaults-file=/etc/my.cnf --skip-grant-tables &

直接使用 mysql 命令登录数据库,执行以下操作修改密码

use mysql;
update user set password=password('root123') where user='root';
flush privileges;

MySQL 5.7 之后,库下的 password 字段用 authentication_string 字段代替

use mysql;
update user set authentication_string=password('root123') where user='root';
flush privileges;

密码重置完成后,重启 MySQL 数据库,输入新密码可以正常进入数据库了。

用户权限管理

MySQL数据库中的用户一般分为超管权限用户 root 和那些由 root 用户创建的普通用户,它们的权限由 root 用户分配。

查看 MySQL 5.6 数据库中用户的情况:

在这里插入图片描述

查看 MySQL 5.7 数据库中用户的情况:

在这里插入图片描述

创建普通用户的语法:

create  user 用户名@主机ip identified by '密码'

创建数据库并为数据库创建一个只读用户和读写用户

只读用户:

create database test;
create user 'test_user'@'192.168.96.131' identified by 'test123';
grant select on test.* to 'test_user'@'192.168.96.131' identified by 'test123';
flush privileges;

读写用户:

create user 'test_user2'@'192.168.96.131' identified by 'test123';
grant select,insert,update,delete on test.* to 'test_user2'@'192.168.96.131' identified by 'test123';
flush privileges;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值