标签:sql mysq 管理 密码 user flush 比较 mysql用户 登陆
前言:mysql创建用户的方法分成三种:INSERT USER表的方法、CREATE USER的方法、GRANT的方法。
一、账号名称的构成方式
账号的组成方式:用户名+主机(所以可以出现重复的用户名,跟其他的数据库不一样)
用户名:16字符以内.
主机名:可以用主机名和IP地址,也可以用通配符
通配符说明:172.18.10.%(IP地址为172.18.10段的所有IP地址都可以访问)
二、通过CREATE USER命令进行创建用户
脚本:CREATE USER ‘username‘@‘localhost‘ [IDENTIFIED BY ‘PASSWORD‘] 其中密码是可选项;
例子:CREATE USER ‘john‘@‘192.168.189.71‘ IDENTIFIED BY "123"; ip 为 192.168.189.71 主机才能登录
CREATE USER ‘john‘@‘localhost‘ IDENTIFIED BY "123"; ## 本地才能登陆
CREATE USER ‘john‘@‘192.168.189.%‘ IDENTIFIED BY "123"; ## 所以ip都能的登陆,但是登录不了本地。
CREATE USER ‘john‘ ;
说明:该方法创建出来的用户只有连接数据库的权限,需要后续继续授权;
注意:用户与@后主机地址不是一体的,用@分隔,如果环境不同,创建的用户不能登录,可以用root账号, select user,host from mysql.user; 来查询,看看创建的账号和host是否是正确的。这里可以参考root用户。
提醒:mysql中的用户是可以重复的,具体怎么访问是host决定的,所以可以看到root有很多条记录。
grant all privileges on *.* to ‘john‘@‘localhost‘; 所有的表所有权限赋给john用户 *.*代码所有的表
grant all privileges on test.* to ‘test1‘@‘localhost‘; 这里赋权限test数据库的所有表
flush privileges; 情况权限缓存。
三、 通过赋权来创建用户
GRANT ALL PRIVILEGES ON *.* TO ‘test1‘@‘localhost‘ IDENTIFIED BY ‘123456‘;
这里的 ALL PRIVILEGES 标示 赋权的数据库表的所有权限,包括(增删改查等)。
上面的 ‘test1‘@‘localhost‘ 表示和上面的一样
四、 直接在 mysql.user表中添加用户,这种方法比较简单,不常用。
五、 修改用户和删除用户
rename user ‘test‘@‘localhost‘ to ‘test5‘@‘localhost‘;
drop user ‘test‘@‘localhost‘;
标签:sql mysq 管理 密码 user flush 比较 mysql用户 登陆
原文地址:http://www.cnblogs.com/shaoshao/p/6647247.html