数据库中,不同的用户拥有不同的权限,合理的授权,可以保证数据库的安全
<h3 id="grant语句">GRANT语句
语法格式 GRANT privileges [(columns)] [,privileges [(columns)]] ON database.table TO ‘username’@’hostname’ [IDENTIFIED BY [PASSWORD] ‘password’] [,‘username’@’hostname’ [IDENTIFIED BY [PASSWORD] ‘password’]]…… [WITH with_option [with_option]……]
<h3 id="参数说明">参数说明
privileges,表示权限类型 columns,表示权限作用于某一列,该参数可以省略不写,此时,权限作用于整个表 username,表示用户名 hostname,表示主机名 IDENTIFIED BY,为用户设置密码 PASSWORD,为关键字 password,为用户的新密码
WITH关键字,后面可以带有多个参数with_option,有5个取值 1、GRANT OPTION,将自己的权限,授予其他用户 2、MAX_QUERIES_PER_HOUR count,设置每小时最多,可以执行多少次(count)查询 3、MAX_UPDATE_PER_HOUR count,设置每小时最多,可以执行多少次更新 4、MAX_CONNECTIONS_PER_HOUR count,设置每小时,最大的连接数量 5、MAX_USER_CONNECTIONS,设置每个用户最多,可以同时建立连接的数量
使用GRANT语句,创建一个新用户,用户名为user4,密码为123 权限,user4用户,对所有数据库有INSERT SELECT权限,并使用WITH GRANT OPTION子句
图片描述" title="">
图片描述" title="">
可以看出,user的值为user4 Insert_priv、Slect_priv、Grant_priv的值都为Y 说明,用户user4,对所有数据库具有增加、查询以及对其他用户,赋予相应权限的功能