首页 > 系统相关 >GBase 8s内存不足,扩充表空间

GBase 8s内存不足,扩充表空间

时间:2023-08-15 11:13:50浏览次数:35  
标签:文件 存储 chunk 内存不足 存储单元 8s datadbs1 GBase page

数据库空间是一个逻辑概念,有多个称为Chunk的物理文件组成,用于存储表或索引的数据。
不同的数据库空间可以使用不同的页大小,以便于进行存储性能优化。

1.查询当前表空间大小

切换到 gbasedbt用户执行 

onstat -d

存储结构介绍(包括物理存储单元、逻辑存储单元、大对象存储)
  一个GBase 8s实例Instance可以创建多个dbspace,一个dbspace可以包含多个物理chunk,一个chunk分成多个连续扩展区extent,一个表或者索引占用的空间被称为一个tablespace,一个extent包含多个物理页page。
其中,dbspace、tablespace和extent属于逻辑存储单元;chunk和page属于物理存储单元。
(1)chunk
chunk就是用于存储数据的连续磁盘空间,也就是存储数据库数据的文件或者裸设备。
一个chunk可以是一个裸设备(Raw Device)或者一个UNIX文件(Cooked File)。
一个chunk最大可以是4TB,最多可以有32767个chunk。
root chunk包含整个数据库保留页及系统表等信息。一般将物理日志、逻辑日志迁移到单独的dbspace上。
一个非root chunk主要存储表、索引的数据(Tablespace),划分为多个连续的extent。
(2)page
数据页page是最基本的存储单元,是最小的I/O单元。

磁盘的一个数据页读取到内存就会分配一个同样大小的内存page来存储。
(3)计算方式

如datadbs1_1文件的size是1419748,它对应的dbs号码为6,Dbspaces信息中number为8的数据库空间大小为16384,所以这个文件的操作系统中的大小为1419748* 16384 = 23261151232 ,换算成G为:23261151232/1024/1024/1024=21.66G

当前GBase 8s 数据库实例将文件保存在/u01/GBASE/gbase/gbaseserver_dbs中,可以通过ll命令查看操作系统中文件的大小(字节大小)。

2.拓展表空间

(1)在/u01/GBASE/gbase/gbaseserver_dbs下创建chunk物理文件datadbs1_2

touch datadbs1_2

(2)给文件授权

chmod 660 datadbs1_2

(3)给datadbs1增加空间

onspaces -a datadbs1 -p /u01/GBASE/gbase/gbaseserver_dbs/datadbs1_2  -o 0 -s 10240

格式为  

onspaces -a 空间名称 -p 拓展的文件路径  -o 0 -s 扩充字节大小

当前语句为  给datadbs1 增加10240字节(10M)的存储

(4)查询是否扩充成功

onstat -d

标签:文件,存储,chunk,内存不足,存储单元,8s,datadbs1,GBase,page
From: https://www.cnblogs.com/BKYhailong/p/17630680.html

相关文章

  • k8s dashboard token过期时间太短的解决方案
    在下载的dashboardyaml文件中args这里增加一行-'--token-ttl=43200' spec:securityContext:seccompProfile:type:RuntimeDefaultcontainers:-name:kubernetes-dashboardimage:kubernetesui/dashbo......
  • 利用K8S CronJob来实现etcd集群的自动备份
    前言:利用k8sCronJob来实现etcd集群的自动备份,并通过sftp传输到本k8s集群外的服务器上,进行存储。实验步骤:基本环境情况:服务器角色IP系统ETCD版本K8S集群操作服务器192.168.1.136Centos7.93.4.9存储服务器192.168.1.105Centos7.9-创建Dockerfile镜像:[root@k8s-master1~]#mkdir/s......
  • 记录一次调查OpenEuler上部署K8s,CoreDNS组件一直 CrashLoopBackOff ,describe 时 Back
    详细过程不赘述了。百度了很多办法都不可用,然后尝试重装k8s好多次也不管用。 最后解决。kubectleditdeploymentcoredns-nkube-systemapiVersion:apps/v1kind:Deploymentmetadata:annotations:deployment.kubernetes.io/revision:"2"creationTimestamp......
  • 【原】无脑操作:基于CentOS 7.9搭建国产数据库 南大通用GBase 8a 单机环境
    CentOS7.9 环境的安装不再赘述,不清楚可以参看之前的文章:https://www.cnblogs.com/iflytek/p/14403664.html 1、准备GBase8a的安装包:GBase8a-NoLicense-Free-8.6.2_build43-R7-redhat7.3-x86_64.tar.bz2 2、创建gbase用户、并设置密码(密码规则:长度多于8位的字母+数字)use......
  • gitlab-runner配合k8s完成代码自动打包部署上线
    前期搭建了云服务器私有的gitlab和k8s环境,但是都是独立运行的,每次代码更新需要手动去打包好镜像,推送到镜像仓库,然后在deployment里面更新image,这样平时不太有问题,但是会给运维我这边产生很多琐事(反正就是想偷懒,能自动化的为什么要手动,懒惰才是提高生产力的动力!)。在这种情况下我就考......
  • k8s笔记10
    摘要:组播;;1、docker加入组播(docker加入组播(docker组播))(docker与组播(docker组播)),Docker容器默认不支持UDP/组播流量,在使用容器进行网络应用的开发过程中,需要使用第三方软件支持组播。下面介绍使用Docker加入组播的方法。#创建一个新的网络dockernetworkcreate--driver=......
  • Jenkinsfile使用k8s agent构建失败:Container jnlp was terminated (Exit Code: 1, Rea
    问题描述Jenkinsfile使用k8sagent构建失败jenkins报错截图:查看pod app-system-23-wmx8b-5lnl2-lxvlr的jnlp容器日志:分析处理一般构建失败大都是jnlp容器问题。经以下日志分析发现jenkins主节点和slave节点的jdk版本不一致导致该提示JavaJDK版本不对:hudson/slaves/SlaveComputer......
  • k8s etcd operator
    在k8s生态中,Operator是灵活管理有状态应用的解决方案。operator通过crd来描述部署的有状态应用和自定义控制器来完成部署和运维工作。EtcdOperator部署Etcd集群,采用的是静态集群的方式。好处是不必依赖一个额外的服务发现机制来组建集群,适合本地容器化部署。难点在于部署时规划好......
  • k8s finalizers和owner references
    finalizers终结器,存放键的列表,列表内的键为空时资源才可被删除。删除指定了Finalizer的对象时,填充.metadata.deletionTimestamp来标记要删除的对象,返回已接受202状态码使其进入只读状态。#创建包含finalizers的configmapcat<<EOF|kubectlcreate-f-apiVersion:v1kind:......
  • k8s 网络模型
    容器网络通信模式在Host模式中,各容器共享宿主机的根网络名称空间,它们使用同一个接口设备和网络协议栈,因此,用户必须精心管理共享同一网络端口空间容器的应用与宿主机应用,以避免端口冲突。Bridge模式对host模式进行了一定程度的改进,在该模式中,容器从一个或多个专用网络(地址池)中获取IP......