SlideShare ist ein Scribd-Unternehmen logo
1 von 13
Instituto Nacional de Telecomunicações - INATEL

Oracle DBLink

Danilo Braga
ICC – Software II
http://goo.gl/uF3iuy
Definição
O DB Link permite a
comunicação entre um BD
Oracle com outro BD, não
necessariamente Oracle

A conexão é “one-way”, ou seja,
possibilita um usuário local
logado num banco A acessar
http://goo.gl/1ax99P

objetos em um banco externo B
Para que “linkar”
Bancos de dados?
Aplicações podem utilizar de mais de uma instância
de banco de dados
É possível distribuir dados em locais distintos
Mover dados entre várias bases
Realizar buscas em mais de uma base no mesmo

select
- Isso mesmo! joins entre tabelas de bancos
distintos
Cenário: uma
aplicação acessa
mais de um banco
que não se
relacionam entre si.
Nenhum problema!

database A
select * from A.table_1
http://goo.gl/VONNDl http://goo.gl/CZ3QYg

database B
select * from B.table_2
Cenário: uma
aplicação que
deseja
mover/buscar dados
em mais de um DB.

Trazer todos os
dados para a
aplicação poderia
acarretar em perda
de performance

INSERT INTO B.table_2 (
select * from A.table_1 )
database A

database B
SELECT * FROM
A.table_1 JOIN B.table_2B.table_2
select * from A.table_1
select * from
http://goo.gl/VONNDl
Aplicação com acesso a
duas bases de dados

BD Principal
•
•
•
•

Clientes
Contratos
Estoque
Entrega ...

BD de Reports/BI
• Dados agrupados
• Normalmente D-1

http://goo.gl/VONNDl http://goo.gl/CZ3QYg

Módulo que possui acesso
somente ao BD de Reports

• O Relatório contém, além
dos dados do DB de
report, informações de
cadastro de clientes, por
exemplo, que estão no
DB Principal
A tabela de clientes não foi
replicada entre as bases por
questões de redundância
Aplicação com acesso a
duas bases de dados

Módulo que possui acesso
somente ao BD de Reports

Com DB Link evita-se
acessos desnecessários
ao BD

BD Principal
•
•
•
•

Clientes
Contratos
Estoque
Entrega

BD de Reports/BI
• Dados agrupados
• Normalmente D-1

http://goo.gl/VONNDl http://goo.gl/CZ3QYg

• O Relatório contém, além
dos dados do DB de
report, informações de
cadastro de clientes, por
exemplo, que estão no
DB Principal
A tabela de clientes não foi
replicada entre as bases por
questões de redundância
Criação do DBLink
CREATE PUBLIC DATABASE LINK
mylink
CONNECT TO
remote_username
IDENTIFIED BY
A
B
mypassword
USING
uma das
'myserver:1521/MYSID'; Esta é apenascriar um DB
formas de se
http://goo.gl/uuNyzH
http://goo.gl/CZ3QYg

Link, existem outras, que
levam em conta
principalmente questões de
Utilização do DBLink
SELECT
T1.NAME, T2.CONTRACT_ID
FROM
TABLE_1 T1,
TABLE_2@mylink T2
WHERE
T1.ID = T2.ID;
Uso com sinônimo
CREATE PUBLIC SYNONYM
TABLE_2 FOR
TABLE_2@mylink;
SELECT
T1.NAME, T2.CONTRACT_ID
FROM
TABLE_1 T1,
TABLE_2 T2
WHERE
T1.ID = T2.ID;

http://goo.gl/RklCeU
Integração com outros provedores
Oracle -> Oracle

– Ainda bem que funciona! 
Oracle -> MySql

Demais provedores
somente consultas
SQL-ANSI

– Necessária a configuração de parâmetros em
arquivos de configuração

Oracle -> PostgreSQL / Oracle -> SqlServer
– Exige a instalação de plugins externos (terceiros)
– Encontrei mais gente falando dos erros, do que como
fazer ;
http://goo.gl/1sYZTL
Muito
Obrigado!!

Danilo Braga
http://www.slideshare.net/bragadanilo
http://goo.gl/i3gbc9
Links
• http://www.dbaoracle.com/t_how_create_database_link.htm
• http://docs.oracle.com/cd/B12037_01/server.101/b1

0759/statements_5005.htm
• http://docs.oracle.com/cd/B28359_01/server.111/b2
8310/ds_concepts002.htm

Weitere ähnliche Inhalte

Ähnlich wie Integração de bases de dados através do Oracle DBLink

Apostila de banco de dados e sql
Apostila de banco de dados e sqlApostila de banco de dados e sql
Apostila de banco de dados e sqlLindomar ...
 
Apostila de Banco de Dados e SQL.pdf
Apostila de Banco de Dados e SQL.pdfApostila de Banco de Dados e SQL.pdf
Apostila de Banco de Dados e SQL.pdfDiegoTedeschiFranco
 
Banco de dados web
Banco de dados webBanco de dados web
Banco de dados webBenedilosn
 
Apresentacao banco de dados
Apresentacao banco de dadosApresentacao banco de dados
Apresentacao banco de dadosRafael Prallon
 
Bancos de dados móveis
Bancos de dados móveisBancos de dados móveis
Bancos de dados móveisUFMA
 
BigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIBigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIAlvaro Viebrantz
 
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.Power BI: A ferramenta da Microsoft que vem ganhando o mercado.
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.Daniel da Costa Mendes
 
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.Power BI: A ferramenta da Microsoft que vem ganhando o mercado.
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.Daniel Mendes
 
Introducao banco de dados
Introducao banco de dadosIntroducao banco de dados
Introducao banco de dadosvaniakenob
 
Apresentação - MongoDB
Apresentação - MongoDBApresentação - MongoDB
Apresentação - MongoDBJDSBD
 
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MERRodrigo Kiyoshi Saito
 

Ähnlich wie Integração de bases de dados através do Oracle DBLink (20)

Banco de dados e sql
Banco de dados e sqlBanco de dados e sql
Banco de dados e sql
 
Apostila de banco de dados e sql
Apostila de banco de dados e sqlApostila de banco de dados e sql
Apostila de banco de dados e sql
 
Apostila de Banco de Dados e SQL.pdf
Apostila de Banco de Dados e SQL.pdfApostila de Banco de Dados e SQL.pdf
Apostila de Banco de Dados e SQL.pdf
 
Banco de dados web
Banco de dados webBanco de dados web
Banco de dados web
 
Apresentacao banco de dados
Apresentacao banco de dadosApresentacao banco de dados
Apresentacao banco de dados
 
BDD
BDDBDD
BDD
 
Bancos de dados móveis
Bancos de dados móveisBancos de dados móveis
Bancos de dados móveis
 
BigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIBigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage API
 
(Banco de dados distríbuidos bdd)
(Banco de dados distríbuidos   bdd)(Banco de dados distríbuidos   bdd)
(Banco de dados distríbuidos bdd)
 
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.Power BI: A ferramenta da Microsoft que vem ganhando o mercado.
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.
 
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.Power BI: A ferramenta da Microsoft que vem ganhando o mercado.
Power BI: A ferramenta da Microsoft que vem ganhando o mercado.
 
Tema3.pptx
Tema3.pptxTema3.pptx
Tema3.pptx
 
Tema3.pptx
Tema3.pptxTema3.pptx
Tema3.pptx
 
Introducao banco de dados
Introducao banco de dadosIntroducao banco de dados
Introducao banco de dados
 
BDE
BDEBDE
BDE
 
IDC Summit 2015 - DBaaS
IDC Summit 2015 - DBaaSIDC Summit 2015 - DBaaS
IDC Summit 2015 - DBaaS
 
Banco dedados aula001
Banco dedados aula001Banco dedados aula001
Banco dedados aula001
 
Apostila ib
Apostila ibApostila ib
Apostila ib
 
Apresentação - MongoDB
Apresentação - MongoDBApresentação - MongoDB
Apresentação - MongoDB
 
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER
2019-2 - BD I - Aula 02 - Camadas de aplicação a Banco de Dados e Introd MER
 

Integração de bases de dados através do Oracle DBLink

  • 1. Instituto Nacional de Telecomunicações - INATEL Oracle DBLink Danilo Braga ICC – Software II http://goo.gl/uF3iuy
  • 2. Definição O DB Link permite a comunicação entre um BD Oracle com outro BD, não necessariamente Oracle A conexão é “one-way”, ou seja, possibilita um usuário local logado num banco A acessar http://goo.gl/1ax99P objetos em um banco externo B
  • 3. Para que “linkar” Bancos de dados? Aplicações podem utilizar de mais de uma instância de banco de dados É possível distribuir dados em locais distintos Mover dados entre várias bases Realizar buscas em mais de uma base no mesmo select - Isso mesmo! joins entre tabelas de bancos distintos
  • 4. Cenário: uma aplicação acessa mais de um banco que não se relacionam entre si. Nenhum problema! database A select * from A.table_1 http://goo.gl/VONNDl http://goo.gl/CZ3QYg database B select * from B.table_2
  • 5. Cenário: uma aplicação que deseja mover/buscar dados em mais de um DB. Trazer todos os dados para a aplicação poderia acarretar em perda de performance INSERT INTO B.table_2 ( select * from A.table_1 ) database A database B SELECT * FROM A.table_1 JOIN B.table_2B.table_2 select * from A.table_1 select * from http://goo.gl/VONNDl
  • 6. Aplicação com acesso a duas bases de dados BD Principal • • • • Clientes Contratos Estoque Entrega ... BD de Reports/BI • Dados agrupados • Normalmente D-1 http://goo.gl/VONNDl http://goo.gl/CZ3QYg Módulo que possui acesso somente ao BD de Reports • O Relatório contém, além dos dados do DB de report, informações de cadastro de clientes, por exemplo, que estão no DB Principal A tabela de clientes não foi replicada entre as bases por questões de redundância
  • 7. Aplicação com acesso a duas bases de dados Módulo que possui acesso somente ao BD de Reports Com DB Link evita-se acessos desnecessários ao BD BD Principal • • • • Clientes Contratos Estoque Entrega BD de Reports/BI • Dados agrupados • Normalmente D-1 http://goo.gl/VONNDl http://goo.gl/CZ3QYg • O Relatório contém, além dos dados do DB de report, informações de cadastro de clientes, por exemplo, que estão no DB Principal A tabela de clientes não foi replicada entre as bases por questões de redundância
  • 8. Criação do DBLink CREATE PUBLIC DATABASE LINK mylink CONNECT TO remote_username IDENTIFIED BY A B mypassword USING uma das 'myserver:1521/MYSID'; Esta é apenascriar um DB formas de se http://goo.gl/uuNyzH http://goo.gl/CZ3QYg Link, existem outras, que levam em conta principalmente questões de
  • 9. Utilização do DBLink SELECT T1.NAME, T2.CONTRACT_ID FROM TABLE_1 T1, TABLE_2@mylink T2 WHERE T1.ID = T2.ID;
  • 10. Uso com sinônimo CREATE PUBLIC SYNONYM TABLE_2 FOR TABLE_2@mylink; SELECT T1.NAME, T2.CONTRACT_ID FROM TABLE_1 T1, TABLE_2 T2 WHERE T1.ID = T2.ID; http://goo.gl/RklCeU
  • 11. Integração com outros provedores Oracle -> Oracle – Ainda bem que funciona!  Oracle -> MySql Demais provedores somente consultas SQL-ANSI – Necessária a configuração de parâmetros em arquivos de configuração Oracle -> PostgreSQL / Oracle -> SqlServer – Exige a instalação de plugins externos (terceiros) – Encontrei mais gente falando dos erros, do que como fazer ; http://goo.gl/1sYZTL