关于opengauss

adm开头的那些都是系统视图,不是系统表

ADM开头的系统视图,都在华为云:

路径(GaussDB官方文档-->开发指南-->开发指南(分布式_V2.0-8.x)-->系统表和系统视图-->系统视图)

https://support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-12-0990.html

比如这些:

表里面的行也叫tuple,tuple是元祖的意思

schema也叫namespace

database也叫catalog

一个数据库cluster包括最多128个database

每个database包括多个schema

数据库的对象存储在schema里面

这些对象包括table index view function sequence

一个数据库可以在多个表空间里

一个表空间可以横跨多个数据库

每一个数据库也可以横跨多个表空间

数据库的对象由多个数据文件组成

形成同一张表的数据文件是不能跨tablespace的

多个用户和多个数据库

一个单实例对应一个database cluster

一个database cluster 由多个users和多个databases组成

users和databases可以共同同一套openguass实例和相关配置文件

user1可以访问database1和databasen,user2可以访问database1和databasen,

其中database1和databasen的数据是相互隔离的,但这些用户是共享整个opengauss实例中的所有database的

opengauss支持的集簇(database cluster)最多包含128个database

每一个database由多个schema组成

数据库中的对象实际上就是存储在schema里面

对象包括table、index、view、function、sequence等,表、索引、视图、函数、序列

一个database cluster里面包含了多个表空间,

每一个表空间横跨多个database

每一个数据库也可以横跨多个表空间

数据库的一个对象,是由多个数据文件组成

比如,一个表由多个数据文件组成

形成同一个表的数据文件,是不能够跨tablespace的

一个表是分区表,它由多个数据文件,它的多个数据文件是不能跨越tablespace的

也就是分区表,它是有多个数据文件,普通表,可能是有一个数据文件,不管是普通表还是分区表,它的所有数据文件都是在一个表空间里面的,也就是在同一个tablespace的

也就是一张表,不管它是不是分区表,都是只能在一个表空间里面的。其实表空间的物理存在,一般表现为一个文件,这个表是分区表,可能就是这个表空间文件里面的多个子文件,如果这个表是个普通表,不是分区表,那么就是在这个表空间文件里面的单个子文件。

理论上,分区表的不同分区可以分布在不同的表空间中,但实际中的设定,应该是以同一个分区表的不同分区是应该分布在同一个表空间中的。

一个分区表的形成的多个数据文件,是不能跨tablespaces的,对于opengauss来说是这样。

表空间存储的是数据库的实际的数据文件。

opengauss使用schema对数据库做逻辑分割。

schema在功能上类似于操作系统的目录

同一个database cluster内,也就是数据库实例内,database和database之间的数据是隔离的。

同一个database内,schema和schema之间的数据不是严格分离的。

用户根据自己的权限,来访问一个或多个schema

这样多个用户可以使用同一个数据库

在数据库内,创建一个用户,会自动创建一个与用户名同名的schema,用户如果有权限,也可以自己单独创建schema。这个有点像Linux系统中,创建一个用户,就会在/home目录下创建一个这个用户的家目录的情况。

在数据库创建用户时,系统会自动帮助用户在当前数据库中创建一个同名的schema,数据库对象默认创建在数据库搜索路径(search_path)中的第一个schema内。数据库默认具有一个名为public的schema,且默认所有用户的搜索路径都包含该schema

创建一个用户,系统就会自动创建一个与用户名相同的schema,所以一般,在DBeaver中,看到很多schema,而且每个schema都有名称,基本上每个schema的所有者的名称,也就是owner的名称也就是schema的名称,所有写sql语句的时候,就可以加条件owner = 'schema_name' 和 owner in 'schema_name'

schema可以rename和指定owner

初始用户是omm

数据库系统和操作系统不是一回事

相关推荐
AI人工智能+电脑小能手8 小时前
【大白话说Java面试题 第87题】【Mysql篇】第17题:分布式事务的实现原理?
java·数据库·分布式·mysql·面试
yyuuuzz8 小时前
独立站的技术基础与常见运维问题
大数据·运维·服务器·网络·数据库·aws
键盘上的猫头鹰12 小时前
【MySQL 教程(八)】索引、事务、用户管理、导入导出与分页查询
数据库·python·mysql
Royzst12 小时前
数据库知识点
数据库
雪的季节12 小时前
企业级 Qt 全功能项目
开发语言·数据库·qt
宋浮檀s12 小时前
应急响应——Web漏洞:命令执行+SSRF+弱口令
运维·数据库·sql·网络安全·oracle·应急响应
yurenpai(27届找实习中)14 小时前
redis_点评(21.好友关注——关注、取关功能实现;共同关注功能实现)
数据库·redis·缓存
Rick199314 小时前
索引的排序和分组
数据库·mysql
爱莉希雅&&&14 小时前
zabbix快速搭建和使用
android·linux·数据库·zabbix·监控
JohnYan14 小时前
工作笔记 - PG分组极值
数据库·后端·postgresql