解决ORA-02069: global_names parameter must be set to TRUE for this operation 问题
问题产生背景:
多数据库分库,在各个库之间采用dblink连接,DML操作会导致该问题的产生。
各个数据库设置独立地global name, 并enable global name.
select * from global_name;
alter database rename global_name to MAINDB;
修改tnsnames.ora 和listener.ora.
vi $ORACLE_HOME/network/admin/tnsnames.ora
MAINDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.198.135)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
解决ORA-02069: global_names parameter must be set to TRUE for this operation 问题问题产生背景:多数据库分库,在各个库之间采用dblink连接,DML操作会导致该问题的产生。解决步骤各个数据库设置独立地global name, 并enable global name.select * from global_name;alte
在本地
数据库
表A端通过dblink操作远程
数据库
表B:
insert into B@dblink (select A.* from A),并且A.* 中有使用A端
数据库
的函数
此时会报错:
ORA
-
02069
:此操作的
global
_
names
参数必须设置为
TRUE
数据库
A :
global
_name为 OrcA
数据库
B :
global
_name为 OrcB
在OrcA中建立dblink连接到OrcB,dblink命名为to_OrcB;
在OrcB中创建表T,拥有一个number的id字段;
在OrcA中创建sequence(seq_1);并创建一个function(fun_1),fun_1仅返回1;
来看看发生
02069