前言
mysql默认安装的时候是有一个root用户,这个用户有最高权限,如果要开放数据库里面的数据给别人使用的话,一般是不会开放root用户给别人的,正常会创建新的用户给别人使用,这个用户的权限就可以自己进行控制了
一、用户
创建用户
命令
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
参数说明:
(1)username:自己想要创建的用户名
(2)host:可以连接到这个数据的主机地址,如果想要任意主机都可以连接到这台服务器的话,可以使用通配符%
(3)password:用户登录的密码
案例
创建用户:zs,密码:123,主机:196.168.64.12
CREATE USER 'zs'@'196.168.64.12' IDENTIFIED BY '123';
创建用户:zs,密码:123,任意主机都可以登录该数据库
CREATE USER 'zs'@'%' IDENTIFIED BY '123';
注意:如果要设置一个用户可以有多个ip进行登录访问的话,只需要重复案例(1)的做法即可,账号和密码都一样,主机ip不同即可
编辑用户
创建好用户后,如果要修改用户密码的话可以进行下面的操作
命令
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');
例如
SET PASSWORD FOR 'zs'@'196.168.64.12' = PASSWORD("123456");
如果是当前登录用户可以使用下面的命令
SET PASSWORD = PASSWORD("123456");
删除用户
如果想删除创建的用户可以使用下面的命令
drop user '用户名'@'ip';
例如:
drop user 'zs'@'192.168.92.14';
二、权限
授权
命令
GRANT privileges ON databasename.tablename TO 'username'@'host'
注意:
(1)privileges:用户的操作权限,如SELECT,INSERT,UPDATE,DELETE等,如果要授予所的权限则使用ALL
(2)databasename:数据库名
(3)tablename:数据库表,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*
(4)username:要授权的用户
(5)host:ip
例子
给用户zs,授予数据库test1里面的用户表user增删改查的权限
GRANT ALL ON test1.user TO 'ZS'@'192.169.12.12';
给用户zs,授予数据库test1里面的用户表user查改的权限
GRANT SELECT,UPDATE ON test1.user TO 'ZS'@'192.169.12.12';
给用户zs,授予数据库里面所有表的所有权限
GRANT ALL ON *.* TO 'ZS'@'192.169.12.12';
撤销权限
命令
REVOKE privilege ON databasename.tablename FROM 'username'@'host';
注意:
(1)privileges:用户的操作权限,如SELECT,INSERT,UPDATE,DELETE等,如果要授予所的权限则使用ALL
(2)databasename:数据库名
(3)tablename:数据库表,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如*.*
(4)username:要授权的用户
(5)host:ip
例子
给用户zs,授予数据库test1里面的用户表user查改的权限后,想撤销该权限
REVOKE SELECT,UPDATE ON test1.user TO 'ZS'@'192.169.12.12';
三、其他命令
查看数据库中的所有用户
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
查看数据库中具体某个用户的权限
show grants for 'cactiuser'@'%';
设置与更改用户密码
SET PASSWORD FOR ‘username’@’host’ = PASSWORD(‘newpassword’);
如果是当前登陆用户用:
SET PASSWORD = PASSWORD(“newpassword”);
mysql> SET PASSWORD FOR 'finley'@'%' = PASSWORD("123456");
总结
到此这篇关于mysql用户创建与授权的文章就介绍到这了,更多相关mysql用户创建授权内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!