mysql 新增用户、授权
参考:
http://blog.sina.com.cn/s/blog_4b93170a0100ortt.html
http://www.jb51.net/article/32230.htm
今天由于业务需要添加一个mysql用户,之前对于用户授权这块没有弄过,就上网一搜,有很多文章,自己粘贴过来也记录一下,方便以后查找学习,上面有原文地址,可以查看原文。
1.CREATE USER test IDENTIFIED BY 'test'; 创建用户test,密码为test
2.设置权限
语句格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码" ;
例如:
让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。
首先用以root用户连入mysql,然后键入以下命令:
grant select,insert,update,delete on *.* to test@"%" Identified by "test";
若只可以在localhost上登录,并可以对数据库mydb进行 查询、插入、修改、删除的操作(localhost指本地主机,即mysql数据库所在的那台主机),这样用户即使用知道test的密码,他也无法从 internet上直接访问数据库,只能通过MYSQL主机上的web页来访问
grant select,insert,update,delete on mydb.* to test@localhost identified by "test";
如果你不想test有密码,可以打一个命令将密码消掉
grant select,insert,update,delete on mydb.* to test@localhost identified by "";
指定用户拥有创建表的权限
grant select,insert,update,delete,create,drop on mydb.* to test@localhost identified by "test";
3.刷新数据库
flush privileges;
4.查看用户信息
select host,user from mysql.user;
增加普通用户后可能无法登录,可尝试删除匿名用户,执行:
mysql> use mysql
mysql> delete from user where user='';
mysql> flush privileges;
删除匿名用户后可以了。