人大金仓数据库KingbaseES表空间介绍

1.表空间是什么有什么作用?

  • KES中的表空间实际上就是文件系统中的一个目录,是KES中数据库对象包括表、索引等的容器。
  • 简单点说的话表空间就是告诉KES服务器将数据库对象的物理文件存放在哪里。

2.表空间的分类

默认表空间:sys_default,是用户表、用户表index、临时表等的默认空间。 对应的文件系统目录:/home/test/KESwgq/B0020/db/Server/bin/data/base

系统字典表的表空间: sys_glpbal,用于存放系统的字典表,如sys_database、sys_authid、sys_tablespace等表。 对应的文件目录:/home/test/KESwgq/B0020/db/Server/bin/data/global

自定义的表空间:用户自己创建的表空间。 文件系统目录:/home/test/KESwgq/B0020/db/Server/bin/data/sys_tblspc

当手动创建表空间时,该目录下会生成一个软连接,指向表空间设定的路径。

3.数据库表空间的创建和使用

(1)创建表空间

CREATE TABLESPASE mytbsp LOCATION ‘/wgqtmp/mytbsp’

创建表空间报错: 报错的原因是创建表空间的路径必须提前存在。 这里的路径是在/下面的,我们发现确实没有我们需要的路径。

新建一个路径: /home/test/KESwgq/B0020/db/wgqtmp/mytbsp

file

以上创建了mytbsp的表空间。

因为创建了表空间,所以在刚才提到的: /home/test/KESwgq/B0020/db/Server/bin/data/sys_tblspc 目录下就会生成一个软链接,该软链接指向表空间设定的路径。

file

在表空间创建成功以后,在自定义表空间的位置,会自动生成一个软链接。

file

通过该软链接可以找到自定义存储空间所对应的路径:在目录下使用 ll 命令

file

创建表空间的注意事项:

  • 自定义表空间的名字不能以‘sys_’开头,因为这些名称为系统表空间预留的。
  • 在创建表空间时如果没有指定用户,则默认执行该语句的用户即为所属用户。
  • 表空间对应的路径必须提前存在。
  • 表空间对对应的路径必须是空目录。

(2)表空间的使用:在创建数据库的时候,有一个tablespace选项,利用这个配置项指定SQL对象的表空间。 如:以mytbsp为表空间创建一个名为wgqdb的数据库。此后该数据库中所有对象的默认表空间为mytbsp。

file

在mytbsp表空间中创建一张newtab表

file

4.使用表空间的优点

-当存储分区没有空间时,可以使用表空间将数据库存到其他分区。

  • 可以利用表空间对数据库进行性能优化。将频繁使用的数据表或者索引放在高性能的硬盘上,将使用较少的放到普通的磁盘上。

5.表空间的修改与删除

-- 表空间的修改语法:

ALTER TABLESPACE name RENAME TO new_name

ALTER TABLESPACE name OWNER TO new_owner

参数说明:

RENAME TO:用于更改表空间名称

OWNER TO:用于更改表空间所属用户

  • 表空间的删除语法:

DROP TABLESPACE [ IF EXISTS ] name

参数说明:

IF EXISTS为可选关键字,在删除表空间时,如果表空间不存在,则不会报错,只会打印NOTICE信息。 更多信息,参见https://help.kingbase.com.cn/v8/index.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值