MySQL(1)CentOS彻底卸载MySQL
MySQL(2-1)CentOS安装MySQL详细操作
MySQL(2-2)CentOS7系统使用Docker安装mysql数据库
MySQL(3)MySQL中的数据类型和约束
MySQL(4)数据库常见操作命令详解
MySQL(5)数据表常见的操作命令详解
MySQL(6)数据表中数据的增删改查
MySQL(7)常用的基本查询命令详解
MySQL(8)常用的条件查询命令详解
MySQL(9)查询并排序详细用法
MySQL(10)聚合查询、分组查询、分页查询
MySQL(11)连接查询
MySQL(12)自关联(以省市县数据实例详解)
MySQL(13)子查询
MySQL(14)数据库的设计
MySQL(15)视图
MySQL(16)事务
MySQL(17)索引
MySQL(18)账户管理
1、Mysql账户体系
- 服务实例级账号
启动一个mysqld,即为一个数据库实例,如果用户如root,拥有服务实例级奉陪的权限,name该账号就可以删除所有的数据库,连同数据库中的数据表 - 数据库级别账号
对特定数据库执行增删改查的所有操作 - 数据表级别账号
对特定表执行增删改查等所有操作 - 字段级别账号
对某一些表的特定字段进行操作 - 存储程序级别账号
对存储程序进行增删改查的操作
2、账户的操作
- 账户简介
用户信息都存放在mysql数据库中的user数据表中,通过如下命令可以查看当前的所有用户,其中Host显示%的含义是此用户可以从任何主机登录,而显示localhost的则表示对应的用户只能从本机登录数据库 - 如下命令可以查看到用户对应的密码(加密密码)
- 创建账户
使用如下面命令可以创建用户,同时可以设置用户权限
grand 权限列表 on 数据库名 to ‘用户名’@‘访问主机’ identified by ‘密码’;
# 其中权限列表为:select, insert,update,alter,dellete 等命令,如果是所有权限则为:all privileges
如:创建一个mysql用户,密码为Mysql@12#$,其只可以读 jingdong数据库下的areas表,任意机器均可访问
grant select on jingdong.areas to 'mysql'@'%' identified by 'Mysql@12#$';
此时查看用户列表如下
此时使用mysql用户连接数据库之后,发现确实只能看到jingdong数据库下的areas数据表
- 修改密码
修改密码使用如下命令:
update user set authentication_string=password('新密码') where user='用户名';
flush privileges;
如:
- 授权权限
如下命令:可以查看用户的权限
show grants for 用户名;
如下查看mysql和root的权限
修改权限,则使用如下命令:
grant 权限名称 on 数据库 to 用户名@主机 with grant option;
flush privileges;
如:
- 删除账户
删除用户使用命令如下:
drop user '用户名@主机';
或者
delete from user where user='用户名';
flush privileges;