关于mysql如何创建多用户

来源:互联网 发布:腾讯有网络币不 编辑:程序博客网 时间:2024/05/29 04:55

1使用root身份登陆mysql

Liunx下(ps:我用的是centos7.1) 首先以root身份登录上去后执行操作 mysql -uroo -p 然后Enter 输入你的密码后 出现welocame to the mysql就说明登录成功了。


2创建用户

登录后执行 insert into user (Host,User,Password) values('localhost','newuser',password('newpwd'));附:后来发现5.7版本mysql的user表里面没有password这个选项 然后网上搜了下这个语句create user 'newuser'@'localhost' identified by 'newUser!-cn@' 因为5.7版本好像对安全有增强所以写密码的时候一定要够复杂,不然会报错的。这2行代码的意思就是说往user表里面创建了一个名称newuser密码为newpwd的用户。PS:localhost表示只能在本地访问, 如果要想在远程访问就把localhost改成%。


3查询一下这个用户是否被创建

成功执行查询语句 Select User From mysql.user Where User='newuser' 看看有没有这个用户如果有就说明创建成功了,没有的话自己再检查下这个还是比较简单的。


4给用户授予权限

grant 权限 on 数据库.* to '名称'@'主机名'

例如grant CREATE on user.* to '名称'@'主机名' 意思是把user数据库的全部全部表给了这个用户 但是这个用户只能有创建权限

例如 grant all on user.address to '名称'@'主机名' 意思是把user数据库的的address表给了这个用户,并且这个用户有对这个表操作的全部权限。


5废除某个用户的权限

revoke all on user.address from 'newuser'@'localhost'; 废除这个用户的对address表的所有权限。

revoke drop on user.address from 'newuser'@'localhost'; 废除这个用户对address表的删除权限。


6删除某个用户

drop user 'newuser'@'localhost';修改权限的时候一定要执行一下FLUSH PRIVILEGES 刷新一下权限;我就遇到过这个问题,后来百度了一下这个某个老外遇到问题的文章http://stackoverflow.com/questions/5555328/error-1396-hy000-operation-create-user-failed-for-jacklocalhost%3E。

0 0