服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - mysql用户创建与授权的简单实例

mysql用户创建与授权的简单实例

2022-10-13 15:01最强菜鸟 Mysql

MySQL等主流数据库的最高权限一般是root用户,有时我们需要提供数据库的账号和密码以使用某些服务,下面这篇文章主要给大家介绍了关于mysql用户创建与授权的相关资料,需要的朋友可以参考下

前言

mysql默认安装的时候是有一个root用户,这个用户有最高权限,如果要开放数据库里面的数据给别人使用的话,一般是不会开放root用户给别人的,正常会创建新的用户给别人使用,这个用户的权限就可以自己进行控制了

一、用户

创建用户

命令

CREATE USER 'username'@'host' IDENTIFIED BY 'password';

参数说明:

(1)username:自己想要创建的用户名

(2)host:可以连接到这个数据的主机地址,如果想要任意主机都可以连接到这台服务器的话,可以使用通配符%

(3)password:用户登录的密码

案例

创建用户:zs,密码:123,主机:196.168.64.12

?
1
CREATE USER 'zs'@'196.168.64.12' IDENTIFIED BY '123';

创建用户:zs,密码:123,任意主机都可以登录该数据库

?
1
CREATE USER 'zs'@'%' IDENTIFIED BY '123';

注意:如果要设置一个用户可以有多个ip进行登录访问的话,只需要重复案例(1)的做法即可,账号和密码都一样,主机ip不同即可

编辑用户

创建好用户后,如果要修改用户密码的话可以进行下面的操作

命令

?
1
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');

例如

?
1
SET PASSWORD FOR 'zs'@'196.168.64.12' = PASSWORD("123456");

如果是当前登录用户可以使用下面的命令

?
1
SET PASSWORD = PASSWORD("123456");

删除用户

如果想删除创建的用户可以使用下面的命令

?
1
drop user '用户名'@'ip';

例如:

?
1
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增删改查的权限

?
1
GRANT ALL ON test1.user TO 'ZS'@'192.169.12.12';

给用户zs,授予数据库test1里面的用户表user查改的权限

?
1
GRANT SELECT,UPDATE ON test1.user TO 'ZS'@'192.169.12.12';

给用户zs,授予数据库里面所有表的所有权限

?
1
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查改的权限后,想撤销该权限

?
1
REVOKE SELECT,UPDATE ON test1.user TO 'ZS'@'192.169.12.12';

三、其他命令

查看数据库中的所有用户

?
1
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

查看数据库中具体某个用户的权限

?
1
show grants for 'cactiuser'@'%';   

设置与更改用户密码

SET PASSWORD FOR ‘username’@’host’ = PASSWORD(‘newpassword’);

如果是当前登陆用户用:

SET PASSWORD = PASSWORD(“newpassword”);

?
1
mysql> SET PASSWORD FOR 'finley'@'%' = PASSWORD("123456");

总结

到此这篇关于mysql用户创建与授权的文章就介绍到这了,更多相关mysql用户创建授权内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/qq_40298902/article/details/123597057

延伸 · 阅读

精彩推荐