MySQL创建用户、赋予权限

1 .MySQL创建用户

在MySQL中,创建用户可以通过CREATE USER语句来完成。以下是创建用户的基本语法:

CREATE USER 'readonly'@'%' IDENTIFIED BY 'readonly';
GRANT SELECT ON test.* TO 'readonly'@'%';

下面是代码的解释

CREATE USER 'readonly'@'%' IDENTIFIED BY 'readonly';:创建名为readonly的用户,并指定密码为readonly,'%'表示该用户可以从任何IP地址连接到mysql服务器。
GRANT SELECT ON test.* TO 'readonly'@'%';:授予readonly用户对jinmao数据库下所有表的查询权限。
test 为数据库名

具体示例:

1.创建一个名为user1,密码为password1的用户,允许从任何主机连接:

CREATE USER 'user1'@'%' IDENTIFIED BY 'password1';
2.创建一个名为user2,密码为password2的用户,只允许从本地主机连接:

CREATE USER 'user2'@'localhost' IDENTIFIED BY 'password2';
3.创建一个名为user3,密码为password3的用户,只允许从特定主机(例如192.168.0.001)连接:

CREATE USER 'user3'@'192.168.0.001' IDENTIFIED BY 'password3';
需要注意的是,创建用户和授予权限的操作通常需要具有特定权限的用户来执行,如CREATE USER和GRANT权限。对于生产环境中的数据库,应该谨慎管理用户和权限,以确保数据库的安全性和完整性。

2 .授权

MySQL提供了多种权限,用于控制用户对数据库和表的访问和操作。以下是MySQL中常用的权限和授权语句,以及相应的示例说明:

ALL PRIVILEGES:拥有所有权限,包括SELECT、INSERT、UPDATE、DELETE、CREATE、DROP等。
示例:
GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'host' with grant option;
SELECT:允许用户查询表中的数据。
示例:
GRANT SELECT ON database_name.table_name TO 'username'@'host';
INSERT:允许用户向表中插入数据。
示例:
GRANT INSERT ON database_name.table_name TO 'username'@'host';
UPDATE:允许用户更新表中的数据。
示例:
GRANT UPDATE ON database_name.table_name TO 'username'@'host';
DELETE:允许用户删除表中的数据。
示例:
GRANT DELETE ON database_name.table_name TO 'username'@'host';
CREATE:允许用户创建新的数据库或表。
示例:
GRANT CREATE ON database_name.* TO 'username'@'host';
DROP:允许用户删除数据库或表。
示例:
GRANT DROP ON database_name.* TO 'username'@'host';
GRANT OPTION:允许用户授予或撤销其他用户的权限。
示例:
GRANT GRANT OPTION ON database_name.* TO 'username'@'host';
以上示例中,database_name表示数据库名,table_name表示表名,username表示要授权的用户名,host表示允许连接的主机。通过使用GRANT语句,可以为用户授权具体的权限,以满足其在数据库中的操作需求。

3 .常见用户分类
在MySQL数据库中,常见的几类用户及其对应的权限包括:

Root用户以及其他超级用户: Root用户是拥有所有权限的最高权限用户,可以执行所有操作,包括创建和管理其他用户。一般建议将Root用户作为保留用户,再另建一个超级用户如dba。超级用户通常只在管理和维护数据库时使用,而不应该在生产环境中广泛使用。
程序用户: 程序用户是公司应用程序所使用的用户。他们通常需要执行增删改查,而不具备对数据库的整体管理权限。程序用户需要具备以下权限之一或多个权限的组合:
SELECT:允许用户查询(读取)数据库中的数据。
INSERT:允许用户向数据库中插入新的数据。
UPDATE:允许用户更新数据库中的数据。
DELETE:允许用户删除数据库中的数据。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值