数据库服务器使用慢速变更算法来处理ALTER TABLE语句时,其他用户可能会长时间无法使用该表。
基于以下原因,慢速变更时表可能不可用:
- 在ALTER TABLE 操作期间以互斥方式锁定了表
- 为了将表转换成新的定义而为表制作了副本
- 在ALTER TABLE 操作期间转换数据行
- 可以将ALERR TABLE 语句视为长事务,如果超过高水位线LTXHWM阀值时,将出现长事务回滚。
由于数据库服务器复制表数据以将该表转换为新定义,因此慢速变更操作需要的空间至少为原始表大小的两倍与日志空间之和。
数据库服务器使用慢速变更算法来处理ALTER TABLE语句时,其他用户可能会长时间无法使用该表。
基于以下原因,慢速变更时表可能不可用:
由于数据库服务器复制表数据以将该表转换为新定义,因此慢速变更操作需要的空间至少为原始表大小的两倍与日志空间之和。
最后更新:2024-04-07
版本号使用:
v8.8_3503x1
v8.8_3331x12
Dockerfile
FROM scratch
ADD v8.8_3503x1_x64.tar.gz /
EXPOSE 9088
CMD /start.sh
注:不同数据库版本的ADD 文件名称不一样。
获取实例初始化时间,通过rootdbs的创建时间来确定
-- 获取实例初始化时间(rootdbs创建时间)
SELECT dbinfo('utc_to_datetime',d.created) AS created
FROM sysmaster:sysdbstab d
WHERE dbsnum = 1;
GBase 8s数据库的交互式工具无历史执行语句,但我们知道Linux操作系统本身自带历史执行语句功能(上下翻页和history),我们可以使用调用shell脚本的方式,使用dbaccess加上历史执行语句功能:
脚本内容如下:放置于$GBASEDBTDIR/bin目录下,并加上执行权限
本示例使用的环境如下:
通过apt查找确认unixODBC及unixODBC-devel已经安装
[root@localhost ~]# rpm -qa unixODBC unixODBC-devel
unixODBC-devel-2.3.1-14.el7.x86_64
unixODBC-2.3.1-14.el7.x86_64
示例环境:
下载免安装版的CSDK驱动,地址:https://gbasedbt.com/dl/odbc/GBase8s_3.0.0_1-Win64-ODBC-Driver.zip
解压到不含中文的目录下,如D盘根目录下,生成gbase8s-odbc-driver目录
因sysuser库出现异常,需要重建sysuser库,请按以下方式:
1,停止使用USERMAPPING,全使用操作系统验证。
onmode -wf USERMAPPING=OFF
2,去除字符集相关的环境变量
unset DB_LOCALE
unset CLIENT_LOCALE
unset GL_USEGLU
常用的数据类型如下:
内置字符类型包括:char, nchar, varchar, nvarchar 和lvarchar
CHARACTER(n) 和 CHARACTER VARYING(n)这样的别名同样支持
参考代码:test_string_type.py
常用的数据类型如下:
内置字符类型包括:char, nchar, varchar, nvarchar 和lvarchar
CHARACTER(n) 和 CHARACTER VARYING(n)这样的别名同样支持
参考代码:test_string_type.py
常用的数据类型如下:
内置字符类型包括:char, nchar, varchar, nvarchar 和lvarchar
CHARACTER(n) 和 CHARACTER VARYING(n)这样的别名同样支持
参考代码:test_string_type.py