自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 收藏
  • 关注

原创 gbase8s之current和sysdate的区别

在不开启USEOSTIME=1的时候,秒之后的精度全部显示0000。

2024-09-24 16:44:38 163

原创 gbase8s之onlog相关文章

原因:总是在工作中会遇到抬杠的研发说insert没入库,特此写一篇onlog相关的文章。--获取 fragment / partition tables的partnum。-t过滤出指定的表的逻辑日志信息。下图是插入数据多少统计。

2024-09-11 17:29:26 225

原创 gbase8s误删恢复archecker命令

6 archecker 表级别恢复实用程序6.1 archecker 表级别恢复实用程序 可以使用 archecker 实用程序执行时间点表级别恢复,这种恢复将从归档和逻辑日志中抽 取表或表的一部分。 archecker 实用程序通过指定要从中抽取数据的源表、放置数据的目标表和链接两个表的 INSERT 语句来恢复表。 有关使用 archecker 实用程序验证备份的信息,请参阅gbackuprestore -v 语法:验证备份。6.1.1 archecker 实用程序概述 当需要恢复数据库的一部分

2024-08-29 12:25:48 558

原创 gbase8s基础语法

当触发器被事件激活时,不是立即执行,而是首先由触发器测试触发条件。如果条件成立,则触发器执行相应的动作,否则触发器不做任何事情。当声明的事件发生时,触发器开始工作。对数据库的插入、删除、修改操作。动作规则(Action Role)条件(Condition)

2024-08-06 14:23:53 226

原创 gbase8s自动同步数据及加入集群的脚本

开始执行脚本之前一定要关闭hac节点,并且系统空间要大于备份数据文件的大小。#执行之前请手动改好ip和主备节点的实例名及gbasedbt用户的密码。#此脚本永远在主节点上执行,需要同步的节点永远是备节点。#主节点pri开头,备节点hac开头。

2024-07-24 20:58:35 181

原创 刷新有效期

输入 2 1 1 2,4,6,8,10,12 * bash /opt/updatepwddate.sh。# 重启定时任务:systemctl restart crond.service。# 在root 用户下,加入定时任务 crontab -e。#更新gbasedbt用户密码有效期。#更新szmcsts用户密码有效期。#更新icpsts用户密码有效期。# 放置在/opt目录下。

2024-07-24 13:27:20 163

原创 gbase8s之Encoding or code set not supported

解决办法:在url里加上ifx_use_strenc=true 就可以了。

2024-06-21 17:12:58 250

原创 gbase8s获取表的serial字段下一个insert序列值

serial字段,有个函数可以获取到最后插入的序列值,但是好像只能获取到当前会话最后一次插入的序列值,不论是SELECT dbinfo('sqlca.sqlerrd1') FROM dual;

2024-06-21 16:50:08 384

原创 gbase8s之检查点慢排查

发现检查点的刷磁盘时间超过100多秒,每秒刷到磁盘远低于20000page,16KB的page。如果应用对insert入库时间要求在1s内,检查点慢可能会影响应用侧insert入库超时。看见 On-Line (CKPT INP).状态,此时在做检查点。查看1cpu发现一直有一个sqlexec在跑。查看该sqlexec 是什么sql,进行优化。杀掉该sql执行的会话之后,检查点快不少。

2024-05-23 21:23:36 298

原创 iostat之性能监控

await:平均每次设备I/O操作的等待时间 (毫秒),一般地,系统I/O响应时间应该低于5ms,如果大于 10ms,表示磁盘存在I/O瓶颈。#%util:一秒中多少的时间用于I/O操作的百分比,即被IO消耗的CPU百分比,一般地,如果该参数是100%表示设备已经接近满负荷运行了。#如果await和svctm较高,说明磁盘处理I/O请求的能力不足,可能需要更换磁盘控制器或升级磁盘阵列等。#如果%iowait较高,说明CPU等待IO完成的时间较长,可能需要优化磁盘性能或者减少磁盘IO操作;

2024-05-23 20:55:35 1642

原创 GBase 8s 如何查看回滚的事务 和对应的SQL

经过上面的分析:长事务到达高水位之后,事务即将挂起,长事务回滚完之后,挂起的事务没断开,也没发起重连,导致gds和应用也连不上,onmode -z sid,让session重连。描述:gbase在线,在gbase服务器里面能正常访问gbase,但是用工具程序就访问不了,gbase服务是online状态,存储空间也是够的,这是gbase日志。onstat -u|grep "686cb9e8" 获取到 sessionid;方法2: 通过 onstat -x|grep "A-R";

2024-05-20 09:50:14 367

原创 gbase8s之获取约束名称和索引名称

第一:gds执行一下语句生成删除主键约束的语句。将生成的删除索引语句复制出来。第二:gds执行一下语句,生成删除索引的语句。将生成的删除索引语句复制出来。

2024-05-15 16:00:08 134

原创 gbase8s之dbaccess的info语法详细篇

table-'

2024-05-15 15:45:51 842

原创 gbase8s之分片篇

alter fragment语句需要表级锁,在摘除分片或者挂载分片时可能由于其他业务要求无法独占表,所以为了避免这种情况,将会停止其他访问这张表的事务暂时终止的措施。记录日志:当数据移动时,原先的数据会被删除移动到新的片,但删除数据时,数据占用的extent仍是被使用状态,只有所有的数据移动后才可直接使用,需要有足够的剩余空间。alter fragment是单个事务,所有的移动或者增加都会写事务,注意产生长事务,可以考虑关闭日志或者将操作分成多个小的alter fragment进行操作。

2024-05-15 15:00:42 328

原创 gbase8s之sysdbopen存储过程的应用

GBase 8s 支持 AUTOLOCATE、AUTO_READAHEAD、AUTO_STAT_MODE、BOUND_IMPL_PDQ、CLUSTER_TXN_SCOPE、DEFAULTESCCHAR、EXTDIRECTIVES、FORCE_DDL_EXEC、GRID_NODE_SKIP, HDR_TXN_SCOPE、在您完成带有启用的 FORCE_DDL_EXEC 环境选项的 ALTER FRAGMENT ON TABLE 操作之后,--开启oracle模式。⚫ 以秒为单位表示时间量的正整数。

2024-05-15 14:13:25 391

原创 gbase8s之python开发odbc报了bigint的错-114 is not supported

复杂方法应当先在api/api_unix.go和api_windows.go中注册SQL_INFX_BIGINT,然后再column.go中处理类型。case api.SQL_BIGINT, -114: 处。72行 sqltype = p.SQLType前增加。修改77行,加上-114 (bigint的类型)修改column.go (简单实现方法)1,绑定变量方式插入中文报22001。}2,不支持bigint数据类型。修改 param.go。

2024-05-15 12:41:09 304

原创 dbschma导出命令详解

3)导出数据库中的所有对象(包含表,存储过程,触发器。)到文件db.sql。-d表示导出整个数据库的表结构,-t表示导出某一个数据表的表结构。2)导出数据库中所有的存储过程到文件db.sql。6)如果导出更多的表的信息(EXTENT...)1)导出数据库中所有的表结构到文件db.sql。4)导出数据库中一个表的结构到文件db.sql。5)导出一个存储过程定义到文件db.sql。7)导出数据库中对用户或角色的授权信息。此处的命令可能有误,请使用者留言更正。8)导出数据库中的同义词。

2024-05-09 17:56:07 227

原创 gbase8s之log日志切割

gbase8s的onlie.log和cm日志切割脚本。#使用方式sh splitlog.sh。#日期2024年4月18日。#切割onlie.log。#设置CMCONFIG。

2024-04-18 12:16:35 428

原创 gbase8s 的DETACH 子句无法应用到以下具有任一属性的表中

表中定义了 Enterprise Replication 复制。具有拆离索引(即,存储分布方案的索引与表的分片策略不同)DETACH 子句无法应用到以下具有任一属性的表中。定义了一列或队列为参考约束的主键。定义了 ROWID 列。

2024-04-08 19:03:05 88

原创 gbase8s之系统用户密码过期问题

如果密码过期,会出现gds连接报错 ,su - gbasedbt也会报错。如果操作系统对系统用户做了过期时间限制。#更新gbasedbt用户密码有效期。#更新dbsso用户密码有效期。#更新dbaao用户密码有效期。可以通过下面命令查看。

2024-04-08 18:45:16 179

原创 gbase8s只读用户

第六步:验证testuser用户是否可对测试表做insert,delete,update操作,如果可以,证明不是只读用户。第五步:如果有创建新表,就对表所在的库执行以下权限回收和和赋予的存储过程。第二:登录所有的库,为用户授权connect权限。第三步:登录所有库,编译以下存储过程。dbacccess 库名 -dbaccess 库名 -dbaccess 库名 -

2024-04-08 12:37:24 197

原创 gbase8s之dbload

以下示例将文本数据 test.unl 导入 test 表中,将 test1.unl 导入到 test1 表中,test 表列数为 2,test1 列数为 5。数据库名为 testdb,每次提交 10000 行,错误输。dbload 工具使用灵活,但没有其他方法快,并且必须准备一个命令文件来控制输。dbload 的优势在于可分批提交需要导入的数据,从而避免长事务的发生。bload 工具将数据从一个或多个文本文件传送到一个或多个现有表中。利用load加载数据时候,会报错:如下图。出到 err.log。

2024-04-08 11:46:44 247

原创 gbase8s之sql优化篇,持续更新

First Rows:它与Choose方式是类似的,所不同的是当一个表有统计信息时,它将是以最快的方式返回查询的最先的几行,从总体上。All Rows:也就是我们所说的Cost的方式,当一个表有统计信息时,它将以最快的方式返回表的所有的行,从总体上。substr(t.terminal_id,1,6)换成t.terminal_id[1,6]2,sql优化,持续更新。如果发现All Rows模式下的sql慢了,请换First Rows试试。没有统计信息则走RBO的方式。(gbase8s默认方式)

2024-04-01 14:05:47 238

原创 gbase8s查看表空间的使用率

用gds执行的截图,页的单位改写成了KB了。2生成spaceused.sql文件。

2024-04-01 12:15:01 439

原创 gbase8s之数据字典查询

查看一个数据库中比如 2000张表 看看每张表用了什么样的主键定义。执行之后生成的效果图。

2024-04-01 09:11:37 1223

原创 gbase8s之系统表systabinfo,sysptnhdr,sysdbspaces

ti_fextsiz --表的extent size 单位是页,页的单位是默认2kb。ti_npdata --表的数据使用了多少页,页的大小是ti_pagesize的值。ti_nextsiz --表的next size 单位是页,页的单位是默认2kb。ti_nptotal --分配到的总页数,页的大小是ti_pagesize的值。ti_npused --表使用了多少页,页的大小是ti_pagesize的值。create_size --创建的大小,单位是页,页的大小默认是2kb。

2024-03-31 18:58:21 428 1

原创 gbase8s之表大小和extents和使用率和空间名称查询和库名和等等

select st.dbsname databasename,st.tabname,sin.ti_partnum ,sd.name dbs_name, ti_nextns extents, sin.ti_nrows,sin.ti_pagesize, sin.ti_rowsize, sin.ti_nptotal nptotal, format_units(sin.ti_nptotal,sd.pagesize) total_size, sin.ti_npused npused, format_unit

2024-03-31 18:57:01 256 1

原创 gbase8s之update statistics脚本(最完美)

gbasedbt执行定时任务crontab -e写入0 3 * * * . /home/gbase/.bash_profile && sh /home/gbase/ups.sh。#脚本说明:1)可断点续传,2)对于分片表是单进程并行多线程执行统计更新,对于普通表是串行执行统计更新,3)没有变化的表不做统计更新。#创造日期:2024年3月31日。

2024-03-31 16:48:27 458 1

原创 gbase8s之索引与系统表的关系

创建索引好想会对systables里相应的表做统计更新,例如如下。没做索引前的nrows数目。

2024-03-31 16:13:32 226 1

原创 gbase8s之修改表的存储位置及使用率

由于生产服务器的LTXHWM是40,也就是说产生的逻辑日志不能超过50GB,按照insert产生日志算,一个表不能超过50/3=16GB数据,否则发生长事务。业务反馈有三千多张表并且每张占用空间1GB,表的使用率几乎0,这就造成3TB空间的浪费,要求释放3TB空间。将以下的表名换成要缩的表名,extent size由1024000改成64kb。如果此处填写的表是分片表,会被强制改成普通表,慎重操作。释放表的占用空间,提高表空间的利用率,移动表的存储位置。将备份表tab1_bak的数据插回tab1表。

2024-03-29 20:50:00 339 1

原创 gbase8s之逻辑日志

这里粗略探讨一下gbase8s的逻辑日志的大小,产生逻辑日志最大的,更大的可能就是更新操作,它会有BEFIMG和AFGIMG,也就两页。也就是说一条逻辑日志可能会是一条update的两倍大小。在实际生产肿,如果按两倍计算还是有些风险,按三倍计算感觉随便玩都不可能长事务了(大对象除外)任何一款数据库dml都会产生逻辑日志,产生逻辑日志的大小直接影响数据库的性能。这么说来update,insert,delete所产生的逻辑日志大小各有不同。最大可能是行所在页的两倍。可小是变更数据的大小+40字节左右。

2024-03-28 10:58:42 124

原创 gbase8s之ERROR: ILLegal character in DBSERVERNAME/DBSERVERALIASES

gbase8s 实例名

2024-03-25 10:19:10 173 1

原创 gbase8s之[SQLState : IX000] : 用户定义例行程序 (idsxmlparse) VP 上下文转换失败。

gbase8s vp的创建

2024-03-23 13:34:52 324

原创 gbase8s绑定磁盘别名的方法

gbase8s 磁盘绑定

2024-03-22 18:02:17 164 1

原创 gbase8s查询业务表的行数--普通表加上分片表

gbase8s表行数

2024-03-22 17:54:06 219

原创 gbase8s之sds集群时钟同步

某项目上线之后,发现数据库时间与时钟服务器时间差距10分钟,想将数据库服务器的时间与服务器同步。风险评估分析:时钟同步会影响主备的集群,也会影响数据库里日期类型的字段的值。具体操作,关掉备节点,等时钟同步完成之后,再将备节点的开启。

2024-03-21 14:25:35 119

原创 gbase8s之odbc报错Driver not capble

使用以下sql查询,发现建库的的时候没带with log;某个项目报这个错误。解决办法:删库重建,并带上with log;

2024-03-21 14:16:09 114 1

原创 GBase8s之DATEDIFF函数

gbase8s DATEDIFF

2024-03-18 17:40:20 451

gbase8s误删除恢复

gbase8s误删除恢复

2024-08-14

expeact写的8s免交互同步

expeact写的8s免交互同步

2024-07-31

gbase8s之只读用户

gbase8s之只读用户

2024-07-31

kettle之gbase8s数据迁移

kettle之gbase8s数据迁移

2024-07-22

oracle19c安装步骤

oracle19c安装步骤

2024-03-23

Oracle 11gR2 RAC 安装配置

Oracle 11gR2 RAC 安装配置

2024-03-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除