数据库与表空间
背景知识概述
数据库&模式
- “实例/集簇”金仓是一个单实例管多库,把多库的集合叫做集簇,他们共用一个集簇目录,比如data目录下面里的子目录的数据文件。
- 数据库里面有模式,在金仓里面模式是:据逻辑相关性对象的集合,就叫一个模式。
- 什么是逻辑相关性对象,比如这些:表、索引、视图……,就是模式对象
- 什么是模式对象,属于模式里面的对象,叫做模式对象
- 通常分为三级架构
- 数据库->数据库中的模式->模式中的对象
- 数据库包含多个模式的,每个模式也包含多个对象
- 在同一个模式里面,模式对象名,不可重名。不同模式可重名。

- 数据库集簇(Database Cluster)与数据库实例(Databse Instance)。
- KES 集簇是指单个KES实例管理的数据库的集合
- KES集簇中的库使用相同的全局配置文件和监听端口、共享相关的进程和内存结构
- 同一数据库 集簇中的进程、相关的内存结构统称为实例。
一个数据库管理一个集簇,同样,一个集簇被一个数据库管理
角色用户
用户和数据库都属于实例内部的对象,它们是平级的。实例内部我们称为全局性的对象。
- 金仓的用户数据库是属于实例级别的对象,它并不属于哪个数据库的。
这些箭头代表的是权限

用户是全局性的,而模式是属于数据库的
表空间
表空间给数据库里面多对多
表空间只是为了关联一个存储目录,最后通过对象数据表空间关联到它的存储目录,通过这么一个纽带把逻辑和物理关联起来

命令
列出表空间清单
\db+

表空间
创建表空间
我们首先要关心这个新建的表空间,它的存储位置在哪里,首先我们要创建一个存储目录。目录权限设置为700
mkdir db01
chmod 700 db01/

创建表空间的表名为 tbs01 及物理存储位置为 /home/kingbase/db01
create tablespace tbs01 location '/home/kingbase/db01';
- 表名、存储位置路径可变,其他固定格式

如果遇到这种情况

要使用所属的用户进行划分。

创建成功后查看表空间,可以看见,tbs01表空间创建成功

来到存储位置目录下,可以看见多了一个不认识的目录名,使用下面命令
sys_controldata
可以看见目录名字是固定格式,对应的是版本号

修改表空间的属主
alter tablespace tbs01 owner to user01;
修改表空间的名称
alter tablespace tbs01 rename to tbs02;
创建数据库
指定关联的表空间
创建数据库的名字为oa,指定表空间为 tbs01
create database oa tablespace tbs01 ;
可以看见创建成功

关联字符集
也可以根据要求指定字符集创建:
create database oa encoding tablespace tbs01 ;

查看oa数据库的详细信息

对比其他的数据库,可以看见只有oa数据库的表空间不是默认的

我们再返回目录查看,可以看见又多了一个目录

SYS_DATABASE 是在一个系统里的所有数据库共享的,也叫金仓数据字典
我们可以查询一下这个,就知道了为什么目录名为 16788
select oid,datname from sys_database;

可以看见这个oid刚好对应上了目录的名字
修改数据库
这个时候我们修改数据库db01 的表空间设置为 tbs01
alter database db01 set tablespace tbs01 ;

这个时候我们访问表空间的存储目录下,可以看见又多了一个目录,这个目录的名字就是对应着这个db01数据库的oid

这也说明了一个表空间可以对多个数据库同时使用
表
创建一个表
创建一个表名为 s2 关联的表空间为 tbs01 关联另一个表的信息语句为 as 后面的语句
create table s2 tablespace tbs01 as select * from exam.student ;

查看 s2 表的详细信息,可以看见大小
\dt+ s2

查看这个表的路径
select sys_relation_filepath('s2');
可以看见这个目录下我们并不认识

我们回到用户自定义表空间的管理位置data目录在这里

可以发现这个是软连接,对应上了

使用这个函数查询
select * from sys_tablespace;
可以看见表空间目录名字对应的id是16787

也就说明了为什么签名那个目录,为什么会是16787
创建表指定模式
关联查询语句
- with no data; 不包含数据
create table schema01.s2 as select * from exam.student with no data;

修改
修改表的名字
alter table product rename to b;

修改一个表的表空间
修改 exam模块下的s1表的 表空间设置为 tbs01
alert table exam.s1 set tablespace tbs01 ;

查看这个表详细的信息,可以看见它的表空间已经设置为 tbs01

修改表的模式
修改表的模块为schema01
alter table s1 set SCHEMA schema01;

插入表数据关联其他表的内容
insert into schema01.s1 select * from exam.student;


模式
创建一个模式
在oa数据库中创建一个模式名为 sch01
\c
create schema sch01;

创建模式且指定属主设置
属主设置为u01
create schema schema01 authorization u01;

指定模式限定创建一个表
在oa数据库中的创建一个模式为 sch01 其中,这个模式的表为 t01
可以看见模式里的数据表创建成功
crate table sch01.t01(id int,name varchar(100));

插入指定模式的表的数据
手工插入
插入sch01模式中的t01表数据
insert into sch01.t01 values (1,'admin');

可以看见插入数据成功

可以看见这个t01表的模式是sch01

关联查询语句插入
insert into sch01.t01 select * from exam.student;

修改模式属性所属者
alter schema schema01 owner to u01;

模式路径
金仓数据库有默认模式路径,如果不指定模式查询,默认使用模式路径下的。
show search_path;

查看当前用户名,\echo :USER 查看USER变量

\dn 查看oa数据库中存在的模式,可以发现并没有存在system模式

指定搜索路径
set search_patch = sch01;

可以发现查询sch01的t01表,不需要指定sch01模式,因为搜索路径,自动搜索了

相关文章:
数据库与表空间
背景知识概述 数据库&模式 “实例/集簇”金仓是一个单实例管多库,把多库的集合叫做集簇,他们共用一个集簇目录,比如data目录下面里的子目录的数据文件。数据库里面有模式,在金仓里面模式是:据逻辑相关性对象的集…...
【CSS in Depth 2 精译_091】15.4:让 CSS 高度值过渡到自动高度 + 15.5:自定义属性的过渡设置(全新)+ 15.6:本章小结
当前内容所在位置(可进入专栏查看其他译好的章节内容) 第五部分 添加动效 ✔️【第 15 章 过渡】 ✔️ 15.1 状态间的由此及彼15.2 定时函数 15.2.1 定制贝塞尔曲线15.2.2 阶跃 15.3 非动画属性 15.3.1 不可添加动画效果的属性15.3.2 淡入与淡出 15.4 过…...
Oracle中间件 SOA之 OSB 12C服务器环境搭建
环境信息 服务器基本信息 如下表,本次安装总共使用1台服务器,具体信息如下: App1服务器 归类 APP服务器 Ip Address 172.xx.30.xx HostName appdev01. xxxxx.com Alias appdev01 OSB1服务器 归类 OSB服务器 Ip Address 172.xx3…...
Java设计模式 —— 【结构型模式】外观模式详解
文章目录 概述结构案例实现优缺点 概述 外观模式又名门面模式,是一种通过为多个复杂的子系统提供一个一致的接口,而使这些子系统更加容易被访问的模式。该模式对外有一个统一接口,外部应用程序不用关心内部子系统的具体的细节,这…...
线性表实验
实验目的与要求 实验目的: 线性表的逻辑结构特点和线性表抽象数据类型的描述方法线性表的两类存储结构设计方法以及各自的优缺点掌握线性表的基本知识深入理解、掌握并灵活运用线性表。熟练掌握线性表的存储结构及主要运算的实现掌握栈的定义、栈的逻辑结构特性和…...
003无重复字符的最长子串
(https://i-blog.csdnimg.cn/direct/352cc4217764458f9a1510c62f89a91e.png)(https://i-blog.csdnimg.cn/direct/14239305bb5a4d068f323de7afc14086.png)...
记录--uniapp 安卓端实现录音功能,保存为amr/mp3文件
🧑💻 写在开头 点赞 收藏 学会🤣🤣🤣 功能实现需要用到MediaRecorder、navigator.mediaDevices.getUserMedia、Blob等API,uniapp App端不支持,需要借助renderjs来实现 实现逻辑 通过naviga…...
前端生成docx文档、excel表格、图片、pdf文件
一、前端将页面某区域内容下载为word文档:html-to-docx、file-saver插件组合使用 import HTMLtoDOCX from html-to-docx; import { saveAs } from file-saver;const exportTest async () > {const fileBuffer await HTMLtoDOCX(<h2>文件标题</h2>&…...
c++---------流类
格式化输入(cin的格式化) 基本用法与控制符 在C中,std::cin用于从标准输入(通常是键盘)读取数据。它默认以空白字符(空格、制表符、换行符)为分隔符来读取不同的数据。例如,读取两个…...
3、基本复用原理和复用单元
基本复用原理 字节间插复用: SDH 采用字节间插复用方式来构建更高等级的信号。这是一种将低速率信号按字节为单位依次插入到高速率信号帧结构中的复用方法。例如,将多个 STM - 1 信号复用成 STM - 4 信号时,是把 4 个 STM - 1 信号的字节依次…...
Vue与React:前端框架的巅峰对决
文章目录 一、引言(一)前端框架发展现状简述 二、Vue 与 React 框架概述(一)Vue.js 简介(二)React.js 简介 三、开发效率对比(一)Vue 开发效率分析(二)React …...
Java 中的面向对象编程 (OOP) 概念
引言 面向对象编程(Object-Oriented Programming, OOP)是一种编程范式,它通过将数据和操作封装在一起,形成一个称为“对象”的实体来组织代码。Java 是一种完全支持 OOP 的语言,广泛应用于企业级应用开发。本文将深入…...
十二月第20讲:Python中指数概率分布函数的绘图详解
一、指数分布的理论概述 1. 定义与公式 指数分布是一种描述随机变量在一个固定底数上的对数值的分布情况,或者在概率理论和统计学中,用于描述泊松过程中事件之间的时间间隔的概率分布。具体来说,它表示事件以恒定平均速率连续且独立地发生的…...
汽车IVI中控开发入门及进阶(44):杰发科智能座舱芯片
概述: 杰发科技自成立以来,一直专注于汽车电子芯片及相关系统的研发与设计。 产品布局: 合作伙伴: 杰发科技不断提升产品设计能力和产品工艺,确保产品达 到更高的质量标准。目前杰发科技已通过ISO9001质 量管理体系与CMMIL3认证。 杰发科技长期合作的供应商(芯片代工厂、…...
【py脚本+logstash+es实现自动化检测工具】
概述 有时候,我们会遇到需要查看服务器的网络连接或者内存或者其他指标是否有超时,但是每次需要登录到服务器查看会很不方便,所以我们可以设置一个自动脚本化工具自动帮助我们查看,下面我做了一个demo在windows上面。 一、py脚本 import s…...
Zookeeper的选举机制
Zookeeper的leader选举机制是基于ZAB(Zookeeper Atomic Broadcast)协议的,这是一种基于Paxos协议的变种,专门用于Zookeeper的分布式协调服务。 选举过程主要分为以下几个阶段: 1.初始化阶段 当一个新的Zookeeper服…...
2024-05-18 前端模块化开发——ESModule模块化
目录 1、认识 ES Module2、ES Module基本使用3、export关键字 3.1、导出方式一——直接导出3.2、导出方式二——通过as起别名3.3、导出方式三——定义的时候就直接导出 4、import关键字 4.1、导入方式一——直接导入4.2、导入方式二——通过as起别名4.3、导入方式三——可以给…...
Linux IPV6 地址配置 | IPv6 禁用 | ping6 过程细节剖析 | IPv6 排障
注: 本文为 “Linux IPV6 地址配置 | IPv6 禁用 | ping6 过程细节剖析 | IPv6 排障” 相关文章合辑。 Linux 服务器设备上配置 IPV6 地址方法 aischang 于 2018-08-25 12:56:25 发布 1. 手动执行命令配置: ifconfig em1 inet6 add 8888::a7/96 up2. 删…...
【YashanDB知识库】XMLAGG方法的兼容
本文内容来自YashanDB官网,原文内容请见 https://www.yashandb.com/newsinfo/7802943.html?templateId1718516 【关键字】 XMLAGG方法的兼容 【问题描述】 崖山数据库不支持将XMLAGG相关的函数内容,需要替换成支持的功能函数WM_CONCAT(T.COLUMN_NAME…...
echarts加载区域地图,并标注点
效果如下,加载了南海区域的地图,并标注几个气象站点; 1、下载区域地图的JSON:DataV.GeoAtlas地理小工具系列 新建nanhai.json,把下载的JSON数据放进来 说明:如果第二步不打勾,只显示省的名字&a…...
【杂谈】-递归进化:人工智能的自我改进与监管挑战
递归进化:人工智能的自我改进与监管挑战 文章目录 递归进化:人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管?3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...
C++初阶-list的底层
目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
MongoDB学习和应用(高效的非关系型数据库)
一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...
Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
《用户共鸣指数(E)驱动品牌大模型种草:如何抢占大模型搜索结果情感高地》
在注意力分散、内容高度同质化的时代,情感连接已成为品牌破圈的关键通道。我们在服务大量品牌客户的过程中发现,消费者对内容的“有感”程度,正日益成为影响品牌传播效率与转化率的核心变量。在生成式AI驱动的内容生成与推荐环境中࿰…...
Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器
第一章 引言:语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域,文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量,支撑着搜索引擎、推荐系统、…...
Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...
根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的----NTFS源代码分析--重要
根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的 第一部分: 0: kd> g Breakpoint 9 hit Ntfs!ReadIndexBuffer: f7173886 55 push ebp 0: kd> kc # 00 Ntfs!ReadIndexBuffer 01 Ntfs!FindFirstIndexEntry 02 Ntfs!NtfsUpda…...
