首页 > 数据库 > mysql教程 > mysql怎么给用户加权限

mysql怎么给用户加权限

coldplay.xixi
发布: 2020-09-28 09:47:02
原创
30561 人浏览过

mysql给用户加权限的方法:首先创建用户,代码为【create user 用户名 identified by '密码'】;然后给用户分配权限,代码为【grant 权限 on 数据库.数据表 to '用户' @ '主机名'】。

mysql怎么给用户加权限

mysql给用户加权限的方法:

一、Mysql下创建新的用户

语法:

create user 用户名 identified by '密码';
登录后复制

create user xiaogang identified by '123456';
登录后复制

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

二、如何给用户分配权限

语法:

grant 权限 on 数据库.数据表 to '用户' @ '主机名';
登录后复制

例:给 xiaogang 分配所有的权限

grant all on *.* to 'xiaogang'@'%';
登录后复制

这个时候 xiaogang 就拥有了 所有权限了

三、如何更精准的控制用户的权限呢?

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分配可对所有数据库的所有表进行所有操作的权限,并设定口令(www.111cn.net)为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的提示符下运行下列命令,每个命令以分号结束

更多相关免费学习推荐:mysql教程(视频)

以上是mysql怎么给用户加权限的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板