03-MySQl数据库的-用户管理

一、创建新用户

mysql> create user xjzw@'10.0.0.%' identified by '1';

Query OK, 0 rows affected (0.01 sec)

二、查看当前数据库正在登录的用户

mysql> select user();

+----------------+

| user() |

+----------------+

| root@localhost |

+----------------+

1 row in set (0.00 sec)

三、查看系统中用户信息

1,指定字段查询

查看所有用户的名、白名单、密码三个字段

mysql> select user,host,authentication_string from mysql.user;

2,查询所有字段

拓展\G代表纵向显示信息(尾端不打分号";")

mysql> select * from mysql.user\G

四、修改用户密码

1,未登录状态下修改

· 没有密码的前提下

root@db01 local\]# mysqladmin password '1'

· 有密码的前提下

root@db01 local\]# mysqladmin -uroot -p1 password 'xinjizhiwa'

2,登录状态下修改

mysql> alter user root@'localhost' identified by '1';

#############

刷新

mysql> flush privileges;

拓展:mysql5.6和5.7版本的修改密码方式如下

#5.7版本修改密码;

mysql> updata mysql.user set authentication_string=PASSWORD("123") where user='root'

#5.6版本修改密码

mysql> set password for 'root'@'localhost'=PASSWORD('123');

五、重置/破解数据库密码

1,杀死mysql进程,关闭mysql

2,跳过权限验证和端口监听启动mysql

root@db01 local\]# /usr/local/mysql/bin/mysqld_safe --skip-grant-tables --skip-networking \&

参数说明

--skip-grant-tables #跳过授权表验证;

--skip-networking #跳过监听端口;

3,此时登录mysql

root@db01 local\]# mysql -uroot

4,加载回授权表

刷新同步磁盘和内存,将磁盘中的数据,同步到内存中(即mysql内部开启授权表)

本质上就是把授权表加载回来

mysql> flush privileges;

5,此时就可以设置密码操作了

mysql> alter user root@'localhost' identified by '123';

6,重启数据库

· 再查一遍mysql进程,kill掉

· 重启数据库

root@db01 local\]# systemctl restart mysql.service

六、删除用户

1,指定用户名和白名单删除

mysql> drop user xjzw@'10.0.0.%';

Query OK, 0 rows affected (0.01 sec)

2,从系统表里删除

mysql> delete from mysql.user where user='xinjizhiwa' and host='%';

Query OK, 1 row affected (0.03 sec)

删除后记得刷新

mysql> flush privileges;

七、锁定、解锁用户

#锁定

mysql> alter user xinjizhiwa@'%' account lock;

#解锁

mysql> alter user xinjizhiwa@'%' account unlock;

相关推荐
全栈老石2 小时前
拆解低代码引擎核心:元数据驱动的"万能表"架构
数据库·低代码
倔强的石头_20 小时前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
jiayou642 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
李广坤3 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
爱可生开源社区4 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸1774 天前
《从零搭建NestJS项目》
数据库·typescript
加号35 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏5 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
李慕婉学姐5 天前
Springboot智慧社区系统设计与开发6n99s526(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
百锦再5 天前
Django实现接口token检测的实现方案
数据库·python·django·sqlite·flask·fastapi·pip