mysql数据库权限控制(权限级别 、用户管理)

权限级别

Global level: 系统级,所有库,所有表,的权限
Database level:某个数据库中的所有表,的权限
able level:库中的某个表,的权限
Column level:表中的某个字段,的权限
procs level:某个存储过程,的权限
proxies level:代理服务器,的权限

查看权限记录表:因为超级管理员默认已经设置。所以直接查询权限即可。

select * from mysql.user\G; 

在这里插入图片描述
用户字段:root
权限字段:Select_priv
安全字段:*B1DD4ADE47888D9AEC4D705C85230F1B52D2A817

用户管理

1. 登录和退出MySQL

#mysql -h 192.168.5.240 -P 3306 -u root -p 123 mysql -e ‘select user,host from user’
-h 指定主机名 【默认为localhost】
-P MySQL服务器端口 【默认3306】
-u 指定用户名 【默认root】
-p 指定登录密码 【默认为空密码】
此处mysql为指定登录的数据库
-e 接SQL语句 (在脚本中使用)
注: mysql -e 可以在终端操作数据库

创建用户
  • CREATE USER语句创建
 mysql> create user用户名;
 mysql> create user 用户名@’%’ identified by '密码';          这样可以直接从远程登录
  • GRANT语句创建(授权)
mysql> GRANT ALL ON *.* TO '用户名'@’localhost’ IDENTIFIED BY ‘密码’;
mysql> grant select,insert on k1.* to 用户@'%' identified by '密码';
FLUSH PRIVILEGES;
	查看单独的库权限
mysql> select * from mysql.db\G

注意:
ALL 单独的权限
*.* 单独的库和单独的表
用户名@localhost 用户有则授权无则创建

删除用户
  • DROP USER语句删除
DROP USER 'user1'@’localhost’;
  • DELETE语句删除
DELETE FROM mysql.user WHERE user='user2' AND host=’localhost’;
FLUSH PRIVILEGES;	 刷新授权表
修改密码
# mysqladmin -uroot -p'123' password 'new_password'	    //123为旧密码
 mysql> update mysql.user set authentication_string=password('123!') where user='root' and host='localhost';
给哪个用户设置密码,你要在哪个用户下执行
    SET PASSWORD=password(‘new_password’);
    上面方法将会在后面的版本remove,使用下面方法
    SET PASSWORD='new_password';  直接设置密码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值