如何在 DB2 on Cloud 中定义 db2set DB2_COMPATIBILITY_VECTOR=ORA

How define db2set DB2_COMPATIBILITY_VECTOR=ORA in DB2 on Cloud

我的 Db2 on Cloud 实例需要一些帮助。我需要执行一个命令来设置 DB2_COMPATIBILITY_VECTOR。例如我需要定义 db2set DB2_COMPATIBILITY_VECTOR=ORA,但我无法使用 IBM DATA SERVER DRIVER 或 IBM 控制台执行此操作。

如何设置或检查是否已设置?

系统是托管的。你可以configure Oracle compatibility when you provision the database。配置表中有一个选项开关:

该选项在 Lite 计划中不可用,因为该数据库是共享的。

当您已经配置了您的服务实例时,您可以使用以下方法检查一些值:

select * from sysibmadm.dbcfg

请参阅 DB2_COMPATIBILITY_VECTOR 了解一些数据库配置集,例如 number_compat 和 varchar2_compat。应显示为输出中的设置。

select * from sysibmadm.dbcfg where name like '%compat'

您还可以使用ENV_GET_REG_VARIABLES:

查询环境变量
select substr(reg_var_value,1,20) as VALUE,
   substr(reg_var_on_disk_value,1,20) as ON_DISK_VALUE
   from table(env_get_reg_variables(-1))
   where reg_var_name = 'DB2_COMPATIBILITY_VECTOR'

你也可以做...

[db2inst1@fergara ~]$ db2set -all
[i] DB2COMM=TCPIP
[i] DB2AUTOSTART=YES
[g] DB2SYSTEM=my.server

[db2inst1@fergara ~]$ db2set DB2_COMPATIBILITY_VECTOR=ORA

[db2inst1@fergara ~]$ db2set -all
[i] DB2_COMPATIBILITY_VECTOR=ORA
[i] DB2COMM=TCPIP
[i] DB2AUTOSTART=YES
[g] DB2SYSTEM=my.server
[db2inst1@fergara ~]$

编辑:不要忘记停止和启动 DB2 服务器以使它们生效。