mysql 用户管理和权限设置

1、user表中host列的值的意义

% 匹配所有主机

localhost localhost不会被解析成IP地址,直接通过UNIXsocket连接

127.0.0.1 会通过TCP/IP协议连接,并且只能在本机访问;

::1 ::1就是兼容支持ipv6的,表示同ipv4的127.0.0.1

2、用户管理

查看

select  `host`, `user` , `password`   from   `mysql`. `user` ;

创建

1.直接创建并赋权限 (推荐)
grant   all    on   *.*  to   'admin'@'%'    identified  by   'password'   ;
2.创建 identified by 会将纯文本密码加密作为散列值存储
create   user    zx_root   IDENTIFIED  by   'password';
3.直接向数据表添加
INSERT INTO `mysql`.`user` VALUES ('%', 'mysqltest', password("hello123"), 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y','Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', '0', '0', '0', '0', 'mysql_native_password', '', 'N');

修改

rename   `mysql`.`user`    'feng'   to     'newuser';

//mysql 5之后可以使用,之前需要使用update 更新user表

更改密码

set   password   for   zx_root = password ( 'xxxxxx' );

update    `mysql`. `user`    set    password = password ( 'xxxx' )   where   `user` = 'otheruser';

删除

DELETE   FROM   `mysql`. `user`   WHERE   `User`   =  '' ;

DROP   USER   'user'   [,'user' ...] ;


#或则如果不希望用户在系统中存在,可以按如下方式撤销
revoke all privileges,grant from user

3、权限管理

查看用户权限

show grants  for   zx_root;

赋予用户权限

grant   权限1,权限2,…权限n  on   数据库名称.表名称  to   '用户名' @ '用户地址' identified  by   ‘连接口令’;
  1. 权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
  2. 权限1,权限2,…权限n被all privileges或则all代替,表示赋予用户全部权限。
  3. 当数据库名称.表名*.*代替,表示赋予用户操作服务器上的所有数据库的所有的表。
  4. 用户地址可以是localhost,也可以是IP地址、机器名字、域名。也可以用%表示允许从任何地址连接。
  5. ‘连接口令’未登录状态不能为空,否则创建失败。已登录可以为空。
权限说明
all privileges或则all表示赋予用户全部权限
select查询
insert增加
update修改
delete删除
create创建数据库或则表
drop删除数据库或则表
index可以试用create index 和drop index
alter修改表结构
grant权限控制
references外键(Foreign Key)
reload必须拥有reload权限,才能执行flush [tables、logs、privileges]
shutdown试用mysqladmin shutdown来关闭mysql
process通过这个权限,用户可以执行SHOW PROCESSLIST和KILL命令
file使用select into outfile 和load data infile
但是不要把file,process,super权限授予管理员以外的帐号,
这样存在严重的安全隐患

4、 回收权限

revoke select  on dmc_db.*  from zx_root;

//如果权限不存在会报错

上面的命令也可使用多个权限同时赋予和回收,权限之间使用逗号分隔

最后:刷新权限

重新刷权限表到内存了

FLUSH  PRIVILEGES ;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值