MySQL不同用户连接不同的数据库,设置账户权限

数据库的root账户原则上只有DBA有权限使用,不应该提供给其他的任何人员,并且密码等级必须要高,字母大小写、数字加符号共同构成。

root 账户通常具有对数据库的完全控制权,包括删除数据、更改结构、停止服务等。如果 root 账户被滥用或恶意使用,可能导致数据丢失、系统崩溃或其他严重的安全事件。因此,为了避免上述问题的发生,通常的做法是为不同的用户和应用程序分配适当的权限,并且只在必要时才使用 root 账户,同时确保对 root 账户的使用进行严格的审计和记录。对于日常的数据库管理和维护工作,应该使用具有有限权限的其他账户。

创建一个只能连接cloud的数据库的只读用户

一、创建用户

create user 'cloud_readonly'@'%' IDENTIFIED BY 'liu0830';

这里创建了一个用户用户名是"cloud_readonly" @符号后的’%'代表着允许任意主机连接,可以设置为localhost或者其他ip这样的话,只有设置的ip可以连接,增强安全性。

二、设置权限

GRANT SELECT ON cloud.* TO 'cloud_readonly'@'%';

这里只给cloud_readonly 开放只读权限,使用select关键字就可以了。

如果需要全部权限的话设置命令

GRANT ALL PRIVILEGES ON cloud.* TO 'cloud_readonly'@'%';

具体的权限字符有很多,SELECT, INSERT, UPDATE, DELETE, ALTER, DROP, CREATE, INDEX, REFERENCES, TRIGGER, EXECUTE, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER, PROCESS, FILE, RELOAD, SHUTDOWN, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, CREATE VIEW, SHOW VIEW, CREATE USER, EVENT, TRIGGER, ALTER SESSION, CREATE TRIGGER, CREATE USER, AUDIT, REPLICATION CLIENT, REPLICATION SLAVE, SSL, PROXY, WITH GRANT OPTION,可以去官方查找对应字段的意思。

三、刷新权限

FLUSH PRIVILEGES;

使用 FLUSH PRIVILEGES 以确保所有的权限更改都被应用到 MySQL 的权限系统中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值