MySQL授权用户及密码复原设置
发布时间:2023-08-08 14:29:44 所属栏目:MySql教程 来源:
导读:MySQL密码恢复及设置
1.停止MySQL服务程序。
2.跳过授权表启动MySQL服务程序
skip-grant-tables(添加在配置文件)
3.重设root密码(更新user表记录)
4.以正常方式重启MySQL服务程序
例:
1.停止MySQL服务程序。
2.跳过授权表启动MySQL服务程序
skip-grant-tables(添加在配置文件)
3.重设root密码(更新user表记录)
4.以正常方式重启MySQL服务程序
例:
MySQL密码恢复及设置 1.停止MySQL服务程序。 2.跳过授权表启动MySQL服务程序 skip-grant-tables(添加在配置文件) 3.重设root密码(更新user表记录) 4.以正常方式重启MySQL服务程序 例: 1.恢复数据库管理员密码(操作系统管理员有权限修改) #systemctl stop mysqld #vim /etc/my.cnf [mysqld] ... skip-grant-tables ... #systemctl start mysqld #mysql mysql> update mysql.user set authentication_string=password("新密码") where user="root" and host="localhost"; mysql> flush privileges; (更新) mysql> quit; 例: 2.恢复数据库管理员密码(操作系统管理员有权限修改) #find / -name "validate_password.so" (查看模块) #vim /etc/my.cnf [myslqd] ... plugin-load=validate_password.so #加载模块 validate_password=FORCE_PLUS_PERMANENT #永久启用模块 validate_password_policy=0 #只验证密码长度 validate_password_length=6 #指定密码长度 .. #systemctl restart mysqld 例: 3.修改数据库管理员本机登录密码(操作系统管理员有权限修改) #mysqladmin -hlocalhost -uroot -p password "新密码" Enter password: #输入旧密码 创建授权 MySQL授权库和表信息 授权库mysql,主要的几个表: 1.user表,存储授权用户的防护权限。 2.db表,存储授权用户对数据库的访问权限。 3.tables_priv表,存储授权用户对表的访问权限。 4.columns_priv表,存储授权用户对字段的访问权限。 GRANT 配置授权 格式:GRANT 权限列表... ON 库名.表名 TO 用户名@'客户端地址' IDENTIFIED BY '密码' WITH GRANT OPTION; -[WITH GRANT OPTION]被授权用户是否有授权权限(可选项) 注意事项: 1.当库名.表名为“.”时,匹配所有库所有表。 2.授权设置存放在mysql库的user表。 授权列表: all 所有权限 usage 没有权限 selec 查看权限 update 修改权限 delect 删除权限 insert 写入权限 drop 删除权限 ... 库名.表名: 库名.* //库下的所有表 *.* //所有库下的所有表 客户端地址: % //匹配所有主机 192.168.1.% //匹配指定的一个网段 192.168.1.1 //匹配指定IP地址的单个主机 %.baidu.com //匹配一个DNS区域 www.baidu.com //匹配指定域名的单个主机 例: 1.新建用户mydba,对所有库、表有完全权限,允许从任何地方访问,密码设置为'123456',允许用户为其他用户授权。 mysql>grant all on *.* to mydba@'%' identified by '123456' with grant option; 例: 2.授权dachui用户,允许从本机访问,允许对userdb库的任何表有查询、更新、插入、删除权限,密码为‘123456’。 mysql>grant select,insert,update,delect on userdb.* to dachui@'localhost' identified by '123456'; 授权用户修改自己的密码:SET PASSWORD=PASSWORD('新密码'); 管理员可重设其他用户的密码:SET PASSWORD FOR 用户名@'客户端地址'=PASSWORD('新密码'); 撤销用户授权 格式:REVOKE 权限列表 ON 库名.表名 FROM 用户名@'客户端地址'; 例: mysql>revoke insert,select on userdb.* from dachui@'localhost'; mysql>show grants for dachui@'localhost'\G; 删除授权用户: drop mysql.user 用户名@"客户端地址"; (编辑:聊城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐