Re: [oracle_br] Uso de DBLink entre instâncias Oracle
Oi, Elaine, Kk...não, eu sou filho de um aposentado de lá.. e ai entrei de dependente :-) 2016-05-13 13:08 GMT-03:00 'Eliane SILVA' ecssi...@frg.com.br [oracle_br] < oracle_br@yahoogrupos.com.br>: > > > Oi Angelo, > > Obrigada pelo seu apoio. > Só vi o seu email agora pois estava fechando esta questão do DBlink. > Consegui fazer o acesso a outras instâncias e em outros servidores tb. > Tive que > alterar o tnsnames.ora com as novas referências dos outros > servidores/instâncias. De qualquer forma, agradeço o seu código (vou dar > uma olhada > e acrescentar mais alguma coisa). > > Vc é cliente da FRG ? É aposentado de Furnas ? > > Realmente esse grupo é muito bom, o pessoal apóia bastante e com muita > boa vontade. > > Abçs, > > Eliane. > > >>> "angelo angelolis...@gmail.com [oracle_br]" > 13/5/2016 11:36 >>> > > Bom dia, > > Elaine, > > Dê uma olhada na doc da oracle, como o Chiappa sugeriu na mensagem > dele > > https://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_5005.htm > > E como eu também sou cliente da fundação FRG.. bom saber que quem cuida > da base de dados lá, troca mensagens aqui no grupo.. então tá em boas > mãos, imagino assim.. rsss > > Segue um exemplo, fiz agorinha na minha base de testes, com 2 > instancias, no mesmo servidor. > > tenho duas instancias: domushm e alldev. > > A partir da domushm, fiz a conexao com a alldev, com a famosa conta > scott/tiger: > > SQL> create public database link testedblink connect to scott > identified by "tiger" using 'alldev'; > > Vínculo de banco de dados criado. > > SQL> select * from dba_db_links; > > OWNER DB_LINK USERNAME > -- > -- > -- > HOST > > -- > CREATED > > PUBLIC TESTEDBLINK SCOTT > alldev > 13/05/16 > > Vamos dar uma select na tabela emp que está na base alldev, para ver > que o dblink funciona: > > SQL> select * from emp@testedblink; > > EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO > -- -- - -- -- > -- -- > 7369 SMITH CLERK 7902 17/12/80 800 20 > 7499 ALLEN SALESMAN 7698 20/02/81 1600 300 30 > 7521 WARD SALESMAN 7698 22/02/81 1250 500 30 > 7566 JONES MANAGER 7839 02/04/81 2975 20 > 7654 MARTIN SALESMAN 7698 28/09/81 1250 1400 30 > 7698 BLAKE MANAGER 7839 01/05/81 2850 30 > 7782 CLARK MANAGER 7839 09/06/81 2450 10 > 7788 SCOTT ANALYST 7566 19/04/87 3000 20 > 7839 KING PRESIDENT 17/11/81 5000 10 > 7844 TURNER SALESMAN 7698 08/09/81 1500 0 30 > 7876 ADAMS CLERK 7788 23/05/87 1100 20 > > EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO > -- -- - -- -- > -- -- > 7900 JAMES CLERK 7698 03/12/81 950 30 > 7902 FORD ANALYST 7566 03/12/81 3000 20 > 7934 MILLER CLERK 7782 23/01/82 1300 10 > > 14 linhas selecionadas. > > SQL> > > Obs: Para não escrever muito, pode-se criar um sinônimo, fazendo > referencia a tabela dentro do dblink > > 2016-05-12 16:02 GMT-03:00 'Eliane SILVA' ecssi...@frg.com.br > [oracle_br] : > > Pessoal, > > Tenho 3 servidores Oracle Standard 11g, sendo que 2 estão em RAC > (produção) e > o terceiro com outro Oracle Standard 11g, sendo que com duas > instâncias > (desenvolvimento e homologação). > Como posso fazer com que eles conversem entre si (select) ? > Estou lendo alguma coisa sobre DBLink, mas ainda não utilizei ... > > Agradeço a atenção de todos ! > > Eliane. > > [As partes desta mensagem que não continham texto foram removidas] > > [As partes desta mensagem que não continham texto foram removidas] > > >
Re: [oracle_br] Uso de DBLink entre instâncias Oracle
Oi Angelo, Obrigada pelo seu apoio. Só vi o seu email agora pois estava fechando esta questão do DBlink. Consegui fazer o acesso a outras instâncias e em outros servidores tb. Tive que alterar o tnsnames.ora com as novas referências dos outros servidores/instâncias. De qualquer forma, agradeço o seu código (vou dar uma olhada e acrescentar mais alguma coisa). Vc é cliente da FRG ? É aposentado de Furnas ? Realmente esse grupo é muito bom, o pessoal apóia bastante e com muita boa vontade. Abçs, Eliane. >>> "angelo angelolis...@gmail.com [oracle_br]" 13/5/2016 11:36 >>> Bom dia, Elaine, Dê uma olhada na doc da oracle, como o Chiappa sugeriu na mensagem dele https://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_5005.htm E como eu também sou cliente da fundação FRG.. bom saber que quem cuida da base de dados lá, troca mensagens aqui no grupo.. então tá em boas mãos, imagino assim.. rsss Segue um exemplo, fiz agorinha na minha base de testes, com 2 instancias, no mesmo servidor. tenho duas instancias: domushm e alldev. A partir da domushm, fiz a conexao com a alldev, com a famosa conta scott/tiger: SQL> create public database link testedblink connect to scott identified by "tiger" using 'alldev'; Vínculo de banco de dados criado. SQL> select * from dba_db_links; OWNER DB_LINK USERNAME -- -- HOST CREATED PUBLIC TESTEDBLINK SCOTT alldev 13/05/16 Vamos dar uma select na tabela emp que está na base alldev, para ver que o dblink funciona: SQL> select * from emp@testedblink; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO -- -- - -- -- -- -- 7369 SMITH CLERK 7902 17/12/80 800 20 7499 ALLEN SALESMAN 7698 20/02/81 1600 300 30 7521 WARD SALESMAN 7698 22/02/81 1250 500 30 7566 JONES MANAGER 7839 02/04/81 2975 20 7654 MARTIN SALESMAN 7698 28/09/81 1250 1400 30 7698 BLAKE MANAGER 7839 01/05/81 2850 30 7782 CLARK MANAGER 7839 09/06/81 2450 10 7788 SCOTT ANALYST 7566 19/04/87 3000 20 7839 KING PRESIDENT 17/11/81 5000 10 7844 TURNER SALESMAN 7698 08/09/81 1500 0 30 7876 ADAMS CLERK 7788 23/05/87 1100 20 EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO -- -- - -- -- -- -- 7900 JAMES CLERK 7698 03/12/81 950 30 7902 FORD ANALYST 7566 03/12/81 3000 20 7934 MILLER CLERK 7782 23/01/82 1300 10 14 linhas selecionadas. SQL> Obs: Para não escrever muito, pode-se criar um sinônimo, fazendo referencia a tabela dentro do dblink 2016-05-12 16:02 GMT-03:00 'Eliane SILVA' ecssi...@frg.com.br [oracle_br] : Pessoal, Tenho 3 servidores Oracle Standard 11g, sendo que 2 estão em RAC (produção) e o terceiro com outro Oracle Standard 11g, sendo que com duas instâncias (desenvolvimento e homologação). Como posso fazer com que eles conversem entre si (select) ? Estou lendo alguma coisa sobre DBLink, mas ainda não utilizei ... Agradeço a atenção de todos ! Eliane. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Uso de DBLink entre instâncias Oracle
Bom dia, Elaine, Dê uma olhada na doc da oracle, como o Chiappa sugeriu na mensagem dele https://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_5005.htm E como eu também sou cliente da fundação FRG.. bom saber que quem cuida da base de dados lá, troca mensagens aqui no grupo.. então tá em boas mãos, imagino assim.. rsss Segue um exemplo, fiz agorinha na minha base de testes, com 2 instancias, no mesmo servidor. tenho duas instancias: *domushm *e *alldev*. A partir da domushm, fiz a conexao com a alldev, com a famosa conta scott/tiger: SQL> create public database link testedblink connect to scott identified by "tiger" using 'alldev'; Vínculo de banco de dados criado. SQL> select * from dba_db_links; OWNER DB_LINK USERNAME -- -- HOST CREATED PUBLIC TESTEDBLINK SCOTT alldev 13/05/16 Vamos dar uma select na tabela emp que está na base alldev, para ver que o dblink funciona: SQL> select * from emp@testedblink; EMPNO ENAME JOB MGR HIREDATESAL COMM DEPTNO -- -- - -- -- -- -- 7369 SMITH CLERK 7902 17/12/80800 20 7499 ALLEN SALESMAN7698 20/02/81 1600300 30 7521 WARD SALESMAN7698 22/02/81 1250500 30 7566 JONES MANAGER 7839 02/04/81 2975 20 7654 MARTIN SALESMAN7698 28/09/81 1250 1400 30 7698 BLAKE MANAGER 7839 01/05/81 2850 30 7782 CLARK MANAGER 7839 09/06/81 2450 10 7788 SCOTT ANALYST 7566 19/04/87 3000 20 7839 KING PRESIDENT17/11/81 5000 10 7844 TURNER SALESMAN7698 08/09/81 1500 0 30 7876 ADAMS CLERK 7788 23/05/87 1100 20 EMPNO ENAME JOB MGR HIREDATESAL COMM DEPTNO -- -- - -- -- -- -- 7900 JAMES CLERK 7698 03/12/81950 30 7902 FORD ANALYST 7566 03/12/81 3000 20 7934 MILLER CLERK 7782 23/01/82 1300 10 14 linhas selecionadas. SQL> Obs: Para não escrever muito, pode-se criar um sinônimo, fazendo referencia a tabela dentro do dblink 2016-05-12 16:02 GMT-03:00 'Eliane SILVA' ecssi...@frg.com.br [oracle_br] < oracle_br@yahoogrupos.com.br>: > > > Pessoal, > > Tenho 3 servidores Oracle Standard 11g, sendo que 2 estão em RAC > (produção) e > o terceiro com outro Oracle Standard 11g, sendo que com duas instâncias > (desenvolvimento e homologação). > Como posso fazer com que eles conversem entre si (select) ? > Estou lendo alguma coisa sobre DBLink, mas ainda não utilizei ... > > Agradeço a atenção de todos ! > > Eliane. > > [As partes desta mensagem que não continham texto foram removidas] > > >
Re: [oracle_br] Uso de DBLink entre instâncias Oracle
Tudo jóia ? O conceito do DBLINk tá bem explicado nos manuais de Concepts e de Administração, mas em resumo ele deve ser entendido como uma conexão que um database origem A vai fazer num database B - ele *** não é *** um método de "conversação", ie, de comunicação bidirecional entre dois bancos, a idéia como eu disse é um determinado database abrindo conexão com outro, sem vice-versa default... A primeira coisa necessária é estabelecer uma COMUNICAÇÃO POR REDE entre os servidores - assim, confirme com teu pessoal de rede que há Rota de rede entre os servidores, que não tem firewall/filtro de pacotes (seja nos servidores ou na rede de modo geral) bloqueando a comunicação, comunicação essa que vai ocorrer na porta de rede em que os Listeners envolvidos estejam setados Para obter o ip ou hostname , a porta de cada listener (que vc vai precisar para confirmar que a comunicação tá ok) E os SIDs ou database Service names envolvidos (que vc vai precisar, junto com as outras infos pra configurar mais tarde), se vc não os souber detalhadamente vc pode, em cada servidor (conectado como o usuário onde está o Listener - em ambientes RAC tipicamente é o usuário do gRID, em single é o mesmo do RDBMS - , com variáveis de ambiente ok) pedir um lsnrctl status [nomedolistener] e um lsnrctl services [nomedolistener] (o nomedolistener é opcional, só é necessário se vc tiver listeners com nome diferente do default LISTENER ... O output vai te confirmar que os listeners estão Ativos, que os bancos necessários estão registrados, e em qual host e qual porta cada listener está ouvindo... O segundo passo é configurar O software cliente que todo database possui : vc até pode criar database links sem isso, informando no CREATE DATABASE LINK os dados ** todinhos ** para conexão, mas usar a config nativa é muito mais conveniente... Para isso, o procedimento é informar os dados de conexão no arquivo TNSNAMES.ORA , no formato : nomedoalias = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(Host = nomedohost)(Port = portaderedenaqualolisteneratende)) ) (CONNECT_DATA = (SERVICE_NAME = nomedoserviçodeconexão) ) ) a linha do SERVICE_NAME pode, para eventuais databases que não possuem serviços de conexão e estejam registrados no listener via SID, ser substituída por : (SID = nomedoSIDdodatabase) O nomedialias pode me princípio ser qualquer um, e Opcionalmente pode também conter um Domínio, se vc estiver usando um... Normalmente o arquivo fica em $ORACLE_HOME/network/admin (mas isso pode ser alterado via variáveis de ambiente, confirme)... A informação pode ser inserida no arquivo TNSNAMES.ORA manualmente via editor de texto, OU (se vc tiver acesso a ele) vc pode usar a tool gráfica de configuração, a Oracle Net Configuration Assistant. Para testar o alias e ver que o client Oracle tá conseguindo chegar na máquina remota, conectado como o usuário que roda/instalou o RDBMS vc pede : tnsping nomedoalias ===> Com esses dois requisitos OK, aí sim é só criar o DATABASE LINK em si, com o comando CREATE, veja a sintaxe na Documentação Oracle... []s Chiappa
[oracle_br] Uso de DBLink entre instâncias Oracle
Pessoal, Tenho 3 servidores Oracle Standard 11g, sendo que 2 estão em RAC (produção) e o terceiro com outro Oracle Standard 11g, sendo que com duas instâncias (desenvolvimento e homologação). Como posso fazer com que eles conversem entre si (select) ? Estou lendo alguma coisa sobre DBLink, mas ainda não utilizei ... Agradeço a atenção de todos ! Eliane. [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Uso de DBLink entre instâncias Oracle
Pessoal, Tenho 3 servidores Oracle Standard 11g, sendo que 2 estão em RAC (produção) e o terceiro com outro Oracle Standard 11g, sendo que com duas instâncias (desenvolvimento e homologação). Como posso fazer com que eles conversem entre si (select) ? Estou lendo alguma coisa sobre DBLink, mas ainda não utilizei ... Agradeço a atenção de todos ! Eliane. [As partes desta mensagem que não continham texto foram removidas]