一、 用户
1.1 新建
create user '用户名'@'host' identified by '密码';
- host = localhost 为本地登录用户
- host = ip 为运行某个ip地址登录
- host = % 为允许任意外网ip登录
这样我就创建了一个名为dalao的用户,并且它可以从任意ip登录
1.2 查看
查看所有用户
select host,user,authentication_string from mysql.user;
1.3 登录
mysql -u 用户名 -p
二、权限
2.1 授权
grant all privileges on *.* to '用户名'@'%' identified by '密码';
- priveleges(权限列表),all priveleges表示所有权限,也可以是:
- select、update、create、delete、drop等权限,多个权限之间用逗号分开- on用来指定权限针对哪些库和表。
- 前面的 * 号用来指定
数据库名
- 后面的 * 号用来指定
表名
- identified by指定用户登录密码,可省略
- to 表示将权限赋予某个用户, 如 dalao@‘localhost’ 表示dalao用户
- @后跟限制地址,可以是IP、域名与%(任何地方)
- identified by指定用户的登录密码,该项可以省略。
只有root用户才有权限进行授权操作
2.2 查看
- 所有用户权限
show grants;
- 指定用户权限
show grants for '用户名'@'%';
三、示例
- 例1
新建用户user_test,仅授予select权限
create user 'user_test'@'%'identified by '999';
grant select on *.* to 'user_test'@'%';
使用user_test登录,创建数据库test_db
create database test_db;
尝试查询
- 例2
新建用户test_4,授予select,create权限
create user 'test_4'@'%' identified by '999';
grant select,create on *.* to 'test_4'@'%';
使用test_4登录,创建数据库test_db
create database test_db;