Oracle - Modificar parametro open_links oracle XE

   
Vista:

Modificar parametro open_links oracle XE

Publicado por Seba (4 intervenciones) el 06/09/2017 21:07:49
estimados, tengo un procedimiento que utiliza mas de 4 DB LINKs (Ejecución finaliza con Error : ORA-02020: too many database links in use). Verifique el parámetro open_links y esta registrado con 4 (Valor por defecto), lo cual estaría provocando el error. Este parametro es registrado como NO MODIFICABLE.

Alguien conoce si existe alguna forma de forzar la modificación de este valor, para que sea diferente al valor por defecto.

Desde ya muchas gracias por la ayuda, saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Modificar parametro open_links oracle XE

Publicado por Rafael (275 intervenciones) el 07/09/2017 12:08:17
Esto puedes modificarlo en el INIT.ORA ...

Para ello detienes la base de datos, cambias el init.ora ampliando el open_links y levantas...

Problemas el consumo de memoria, a mas llamadas externas mas consumo... deberias evaluar el ir cerrando las conexiones

Ejemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
begin
execute immediate 'select count(*) from dual@d1' into l_cnt;
commit;
execute immediate 'alter session close database link d1';
 
execute immediate 'select count(*) from dual@d2' into l_cnt;
commit;
execute immediate 'alter session close database link d2';
 
execute immediate 'select count(*) from dual@d3' into l_cnt;
commit;
execute immediate 'alter session close database link d3';
 
execute immediate 'select count(*) from dual@d4' into l_cnt;
commit;
execute immediate 'alter session close database link d4';
 
execute immediate 'select count(*) from dual@d5' into l_cnt;
commit;
execute immediate 'alter session close database link d5';
end;

Vaya si lo que deseas es hacer un query que te devuelva datos de TODOS los dblinks. No lo veo funcional...

SI me cuentas mas de que hace el procedure quizas te puede dar mas pistas...

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Modificar parametro open_links oracle XE

Publicado por Seba (4 intervenciones) el 07/09/2017 14:49:57
Hola rafael, gracias por responder.

Me interesa la opción de ir cerrando las conexiones. Mira la estructura del procedimiento es el siguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
begin
insert into tabla
   select * from link1
union
insert into tabla
   select * from link2
   union
   select * from link3
   union
   select * from link4
   union
   select * from link5
end;

seria posible de ir cerrando las conexiones bajo esa estructura?

saludos y gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Modificar parametro open_links oracle XE

Publicado por Rafael (275 intervenciones) el 07/09/2017 14:52:10
Sin hacer el UNION

Has un insert y cierra la conexion ...

1
2
3
4
5
6
7
8
begin
insert into tabla
select * from link1;
commit;
execute immediate 'alter session close database link link1';
 ...
 
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Modificar parametro open_links oracle XE

Publicado por Seba (4 intervenciones) el 29/09/2017 14:11:56
Rafael no había tenido tiempo para agradecerte.., seguí tu consejo y resulto excelente, gracias por la ayuda..., saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad