1.添加数据库用户
MySQL的权限表
MySQL 通过权限表来控制用户对数据库的访问,MySQL 数据库在安装时会自动
安装多个数据库。MySQL 权限表存放在名称为 MySQL 的数据库中。常用的权限表有
user、db、host、 table _ priv、columns_ priv 和 procs _ priv。
不需要刷新权限
create 语句创建用户:
create user "用户名"@"主机号" identified by “密码"; set 语句修改密码
set 语句修改密码
set password = password ("密码");
set password for "用户名"@"主机号"= password ("密码");
需要刷新权限
insert 语句创建用户
insert into user ( host , user , password , ssl _ cipher ,x509_ issuer ,x509_ subject ) values
("主机号","用户名", password ("密码"),"","","");
update语句修改用户密码
update user set password = password ("密码”)
where host ="主机号" and user ="用户名";
2.授权、回收数据库用户权限
新添加的数据库用户既不允许访问其他用户的数据库,也不能创建自己的数据库,
只有在授子了相应的权限后才能访问或创建数据库,为满足 MysQL 服务器的安全需要
考虑以下内容
1.多数用户只需要对数据表进行读、写操作,只有少数用户需要创建、删除数
据表。
2.某些用户需要读、写数据而不需要修改数据。
3. 某些用户允许添加数据而不允许删除数据。
4.管理员用户需要有管理用户的权力,而其他用户则不需要。
5.某些用户 允许通过存储过程来访问数据,而不允许直接访问数据表。
grant 语句给用户授权
grant 权限 on 库名.表名 to "用户名"@"主机号";
查看用户权限
show grants for "用户名"@"主机号"\ G
revoke 语句回收用户部分权限
revoke 权限 on 库名.表名 from "用户名"@"主机号";
revoke 语句回收用户全部权限
revoke al1 privileges , grant option from "用户名"@"主机号";
3.数据库用户管理
当管理员在mysql中添加了用户之后,因为各种问题可能需要对用户进行改名、修改密码或输出用户来实现对用户的管理
修改用户的名称:rename user <“旧的用户名”>@<“主机”>TO<“新的用户名”>@<“主机”>;
刷新权限后生效
delete 语句删除用户
delete from user where host ="主机号" and user ="用户名";
不需要刷新权限
drop 语句删除用户
drop user "用户名"@"主机号";