mysql用户分配权限实例总结

发布时间:2020-03-22编辑:脚本学堂
有关mysql创建用户与分配用户权限的操作方法,在mysql中合理分配用户权限,对保障mysql数据库的安全非常重要,这里举了一些mysql用户权限分配的操作实例,供初学mysql的朋友参考。

一、mysql创建新用户

语法:
1.create user 用户名 identified by '密码';
例:

create user xiaogang identified by '123456';
 

新创建的用户,默认情况下是没有任何权限的。

二、为mysql用户分配权限 >> mysql创建用户和设置权限
语法:
1、grant 权限 on 数据库.数据表 to '用户' @ '主机名';
例:给 xiaogang 分配所有的权限
grant all on *.* to 'xiaogang'@'%';
此时 xiaogang 就拥有了 所有权限。

三,精准控制用户权限 >> mysql创建用户与授权操作

1、grant 权限 on 数据库.数据表 to '用户' @ '主机名';
例:让 xiaogang 有查询 tmp 数据库 tmp1 表的权限;
 

复制代码 代码示例:
grant select on temp.temp1 to 'xiaogang'@'%'; //这个时候 xiaogang 就具有查询temp小的temp1的权限了。

例如:
 

复制代码 代码示例:
mysql>grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by ‘123′;
 

给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。
 

复制代码 代码示例:
mysql>grant all privileges on vtdc.* to joe@10.163.225.87 identified by ‘123′;

给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。
 

复制代码 代码示例:
mysql>grant all privileges on *.* to joe@10.163.225.87 identified by ‘123′;

给来自10.163.225.87的用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
 

复制代码 代码示例:
mysql>grant all privileges on *.* to joe@localhost identified by ‘123′;

给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。

四,收回用户权限,一般指有root用户才具有该权限
语法:
1、revoke 权限 on 数据库.数据表 from '用户'@'主机名';

例:收回 xiaogang的所有权限
 

复制代码 代码示例:
revoke all on *.* from 'xiaogang' @'%';

第一步:mysql服务的启动和停止
 

复制代码 代码示例:
net stop mysql
net start mysql

第二步:直接登陆mysql
语法:
mysql -u用户名 -p用户密码

键入命令:mysql -uroot -p, 回车后提示你输入密码,输入123456,然后回车即可进入到mysql中了,mysql提示符是:
mysql>

注意,如果是连接到另外的机器上,则需要加入一个参数-h机器IP

第三步:增加新用户
格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"

如,增加一个用户user1密码为password1,让其可以在本机上登录, 并对所有数据库有查询、插入、修改、删除的权限。
首先用以root用户连入mysql,然后键入以下命令:
 

复制代码 代码示例:
grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";

如果希望该用户能够在任何机器上登陆mysql,则将localhost改为"%"。
如果你不想user1有密码,可以再打一个命令将密码去掉。
 

复制代码 代码示例:
grant select,insert,update,delete on mydb.* to user1@localhost identified by "";

第四步: 操作数据库
登录到mysql中,然后在mysql的提示符下运行下列命令,每个命令以分号结束。