highgo DB中数据库对象,模式,用户,权限之间的关系

文章目录

环境

系统平台:Microsoft Windows (64-bit) 10

版本:5.6.4

文档用途

根据自己的使用数据库心得,以及客户在权限这部分遇到的问题,自己总结了一下在HGDB当中,数据库,模式,角色和权限之间的一些关系。

详细信息

一、对应关系

1、数据库和模式:一个服务器上可以有多个数据库,每个数据库会有多个模式,模式下面是数据库对象。

2、每个数据库,模式,数据库对象都有其唯一的所有者。在其他用户没被授权的情况下,只有highgo用户和其所有者才能够操纵(读写)这些数据库对象。

3、用户和数据库对象:每个数据库只能有一个其所有者,但一个用户可以拥有多个数据库,模式,数据库对象。

4、权限问题:对于数据库,模式和数据库对象来说,只有超级用户(highgo)及其所有者才有权限修改这些数据库对象。如果其他用户想要修改不属于他们的数据库对象,可以通过超级用户或者其所有者对这个用户授权来达到目的。命令如下:

授权语句:

sql 复制代码
GRANT ALL ON SCHEMA schema_name to user_name;
GRANT ALL ON ALL TABLES IN SCHEMA schema_name to user_name;

二、实际用例

目的要求:创建了多个模式,每个模式对应一个用户,要求这些用户可以对这些模式相互访问(读写操作)。

解决方案如上:可以通过超级用户或者其所有者对这个用户授权来达到目的。命令如下:

授权语句:

sql 复制代码
GRANT ALL ON SCHEMA schema_name to user_name;
GRANT ALL ON ALL TABLES IN SCHEMA schema_name to user_name;
相关推荐
越来越无动于衷2 小时前
odbc链接oracle数据源
数据库·oracle
李迟2 小时前
Golang实践录:使用sqlx操作sqlite3数据库
数据库·golang·sqlite
小Mie不吃饭2 小时前
Oracle - 闪回技术及生产实践
数据库·oracle
爱丽_2 小时前
MyBatis事务管理与缓存机制详解
数据库·缓存·mybatis
Filotimo_3 小时前
EntityGraph的概念
java·开发语言·数据库·oracle
tianyuanwo3 小时前
RPM debugsource包的底层原理:深入解析rpmbuild 4.14中的调试源码打包机制
数据库·rpmbuild·debugsource
就叫飞六吧3 小时前
mysql表字段反查表名脚本-筛选法-查表技巧
数据库·mysql
1.14(java)4 小时前
MySQL数据库操作全攻略
java·数据库·mysql
jmxwzy4 小时前
MySQL
数据库·mysql