Como acessar Múltiplos Bancos de Dados com o mesmo nome em Servidores diferentes

MySQL

29/06/2011

Pessoal, imaginem que eu tenha a seguinte situação:

1. Banco de Dados de BancoProdutos, e a tabela Produto
2. Banco de Dados de BancoPrecos, e a tabela Preco
3. Banco de Dados de BancoFiliais e a tabela Filiais

E agora imaginem que o banco de dados das Filiais e dos Produtos estão no Servidor01 e o banco
de dados de Preços existe para a Filial 001 no mesmo Servidor01 e também existe no Servidor02.

Eu preciso fazer o seguinte, quando o usuário selecionar a Filial 001, fazer com que o sistema selecione
o banco de dados do Servidor01  quando selecionar a Filial 002 fazer com que selecione o banco de dados
do Servidor02.



Como é que eu devo proceder?

1. Exemplo:

   

    Select p.cd_produto, p.descricao, pr.preco_venda 
    from 
    BANCOPRODUTOS.produtos p 
    left outer join 
    BANCOPRECOS.preco pr 
    on pr.produto_cd=p.cd_produto
    where 1=1  
    


Agora como é que eu falo pro sistema que uma hora o BANCOPRECOS vai buscar do servidor: 192.168.0.1 e
em outro momento ele vai buscar do servidor 192.168.0.2.

Lembrando que eu não tenho a tabela PRODUTO nos dois bancos, mas sim apenas no Servidor01.

Existe algum aliás que eu possa criar para o banco, tipo:

192.168.0.1:BANCOPRODUTOS:bancoproduto01
192.168.0.2:BANCOPRODUTOS:bancoproduto02

Ou algo como apontar antes do nome do banco de dados o ip do servidor? Tipo:

  select pr.* from "192.168.0.1".BANCOPRECO.preco pr


O objetivo disso é termos apenas uma tabela de PRODUTOS (cadastros), porém liberar para o
cliente ter políticas de preços de venda diferentes entre Filiais de estados distintos, por conta inclusive
de tributação, etc...




Farnetani

Farnetani

Curtidas 0

Respostas

Farnetani

Farnetani

29/06/2011

Pessoal, para ficar mais facil...o que eu estou precisando é algo
semelhante ao DATABASE LINK do ORACLE...isso é possivel fazer em mysql???
GOSTEI 0
Cicero Maia

Cicero Maia

29/06/2011

olá, tenho uma duvida parecida.

tenho o bancoCliente que esta no servidor S001bdp30 e tenho o bancoVendas que esta no servidor G002bdp01.
a pergunta é como fazer o select entre estas duas tabelas.

bancoCliente (campos: cod_id;nm_cliente;cpf_cliente)
bancoVendas(campos: cod_venda; vlr_venda; dt_venda; cod_cliente)

como ficaria este select.

grato pela atenção.
GOSTEI 0
Emerson Nascimento

Emerson Nascimento

29/06/2011

crie linked server entre os servidores.

https://docs.microsoft.com/pt-br/sql/relational-databases/linked-servers/create-linked-servers-sql-server-database-engine?view=sql-server-ver15

GOSTEI 0
POSTAR