[oracle_br] Dúvida Data Guard
Bom dia a todos, Segue minha dúvida: Verifiquei no status do dataguard que existia um problema de GAP. No alert.log do standby verifiquei que ele estava esperando por um SCN x. Fui atrás desse SCN no primary database e tinha verificado que o archive já tinha sido backupeado e já tinha sido apagado do disco. Então enviei um comando para restaurar os archives para o disco novamente e enviei esses archives para o standby database, cataloguei os archives e iniciei o processo de recuperação, mas de nada adiantou. Existe algum outro procedimento a ser feito? Pois estou prestes a refazer o dataguard do zero realizando o duplicate.
Re: [oracle_br] Dúvida Data Guard
Alessandro, bom dia! Ao invés de refazer do zero você pode fazer um backup diferencial a partir do SCN que o standby está pedindo. Não precisará recriar todas as configurações do Data Guard e dará muito menos trabalho. Seguem algumas referências: http://oracleinaction.com/using-rman-incremental-backups-refresh-standby-database/ http://www.dba-oracle.com/t_rman_86_recover_standby_incremental.htm Abs, [image: photo] *Marcelo Santino* Administrador de Banco de Dados (21) 98206-9930 | e...@marcelosantino.com.br | http://www.bau-de-dev.com http://www.facebook.com/CelaoRJ http://br.linkedin.com/in/msantino http://twitter.com/msantino 2015-06-02 10:11 GMT-03:00 Alessandro Silva xalexsi...@yahoo.com.br [oracle_br] oracle_br@yahoogrupos.com.br: Bom dia a todos, Segue minha dúvida: Verifiquei no status do dataguard que existia um problema de GAP. No alert.log do standby verifiquei que ele estava esperando por um SCN x. Fui atrás desse SCN no primary database e tinha verificado que o archive já tinha sido backupeado e já tinha sido apagado do disco. Então enviei um comando para restaurar os archives para o disco novamente e enviei esses archives para o standby database, cataloguei os archives e iniciei o processo de recuperação, mas de nada adiantou. Existe algum outro procedimento a ser feito? Pois estou prestes a refazer o dataguard do zero realizando o duplicate.
[oracle_br] Dúvida Data Guard
Sou novo na utilização de Data Guard e estou com uma dúvida: Montei o seguninte cenário para testes: SGBD Principal = RAC10gr2+SGBD10gr2 com duas instâncias PRIM1 e PRIM2 SGBD de reserva = SGBD10gr2 configurado para ficar como standby em relação ao banco PRIM Pela documentação do DG o DB_NAME da base primária e da base standby devem ser iguais. O que deve ser diferente são os parâmetros DB_UNIQUE_NAME e SERVICE_NAMES. OK? Baseado nisso meu ambiente ficou assim: Banco principal - DB_NAME = PRIM DB_UNIQUE_NAME = PRIM SERVICE_NAMES = PRIM Banco standby -- DB_NAME = PRIM DB_UNIQUE_NAME = PRIMSTDBY SERVICE_NAMES = PRIMSTDBY A replicação funcionou adequadamente. Minha dúvida está em relação ao tnsnames.ora que residirá no cliente: PRIM = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = raca-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = racb-vip)(PORT = 1521)) (LOAD_BALANCE = yes) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = PRIM) (FAILOVER_MODE = (TYPE = SELECT) (METHOD = BASIC) (RETRIES = 180) (DELAY = 5) ) ) ) PRIMSTDBY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = STDBY)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PRIMSTDBY) ) ) Se o valor do parâmetro SERVICE_NAME é diferente para BANCO principal e BANCO standby, qdo ocorrer um switch eu terei que reconfigurar todos os tnsnames.ora das estações? Imaginei (antes de iniciar os testes!) que bastaria alterar os endereços IP no DNS e eu poderia utilizar a mesma entrada tnsnames. Por exemplo: No caso acima imaginei que, caso eu precisasse utilizar a base standby como principal bastaria fazer com que as entradas DNS raca-vip e racb-vip passassem a apontar para o mesmo endereço do host stdby (obviamente isso só seria possível caso os SERVICE_NAMES fossem iguais!)! Reconfigurar todos os tnsnames.ora nas estações realmente é um problema! Alguém conhece alguma solução para que o tnsnames.ora das estações não seja alterado após um switch? Obviamente tbm. não quero alterar a string connection das aplicações e não tenho previsão de migrar para ldap (se é que isso ajudaria!). EJ
Re: [oracle_br] Dúvida Data Guard
Opa bom dia.. estava lendo como tu fez ae... acho que daria pra vc tentar apontar o TNSNAMES pra um local da rede...nunca fiz esse teste de por ex... fazer o: IFILE=\\SERVIDOR\TNSNAMES\TNSNAMES.ORA já fez esse tipo de teste? me add no msn ae se puder [EMAIL PROTECTED] abçs.. - Original Message - From: Eliandro Jakubski To: oracle_br@yahoogrupos.com.br Sent: Tuesday, February 12, 2008 5:14 PM Subject: [oracle_br] Dúvida Data Guard Sou novo na utilização de Data Guard e estou com uma dúvida: Montei o seguninte cenário para testes: SGBD Principal = RAC10gr2+SGBD10gr2 com duas instâncias PRIM1 e PRIM2 SGBD de reserva = SGBD10gr2 configurado para ficar como standby em relação ao banco PRIM Pela documentação do DG o DB_NAME da base primária e da base standby devem ser iguais. O que deve ser diferente são os parâmetros DB_UNIQUE_NAME e SERVICE_NAMES. OK? Baseado nisso meu ambiente ficou assim: Banco principal - DB_NAME = PRIM DB_UNIQUE_NAME = PRIM SERVICE_NAMES = PRIM Banco standby -- DB_NAME = PRIM DB_UNIQUE_NAME = PRIMSTDBY SERVICE_NAMES = PRIMSTDBY A replicação funcionou adequadamente. Minha dúvida está em relação ao tnsnames.ora que residirá no cliente: PRIM = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = raca-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = racb-vip)(PORT = 1521)) (LOAD_BALANCE = yes) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = PRIM) (FAILOVER_MODE = (TYPE = SELECT) (METHOD = BASIC) (RETRIES = 180) (DELAY = 5) ) ) ) PRIMSTDBY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = STDBY)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PRIMSTDBY) ) ) Se o valor do parâmetro SERVICE_NAME é diferente para BANCO principal e BANCO standby, qdo ocorrer um switch eu terei que reconfigurar todos os tnsnames.ora das estações? Imaginei (antes de iniciar os testes!) que bastaria alterar os endereços IP no DNS e eu poderia utilizar a mesma entrada tnsnames. Por exemplo: No caso acima imaginei que, caso eu precisasse utilizar a base standby como principal bastaria fazer com que as entradas DNS raca-vip e racb-vip passassem a apontar para o mesmo endereço do host stdby (obviamente isso só seria possível caso os SERVICE_NAMES fossem iguais!)! Reconfigurar todos os tnsnames.ora nas estações realmente é um problema! Alguém conhece alguma solução para que o tnsnames.ora das estações não seja alterado após um switch? Obviamente tbm. não quero alterar a string connection das aplicações e não tenho previsão de migrar para ldap (se é que isso ajudaria!). EJ __ Informação do NOD32 IMON 2870 (20080212) __ Esta mensagem foi verificada pelo NOD32 sistema antivírus http://www.eset.com.br [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Dúvida Data Guard
É uma solução, entretanto, dessa forma, eu terei um ponto único de falha em \\SERVIDOR. Caso o host SERVIDOR se torne indisponível, mesmo que o Oracle esteja ok, terei problemas! [EMAIL PROTECTED] escreveu: - Para: oracle_br@yahoogrupos.com.br De: Willian Frasson [EMAIL PROTECTED] Enviado por: oracle_br@yahoogrupos.com.br Data: 13/02/2008 7:23 Assunto: Re: [oracle_br] Dúvida Data Guard Opa bom dia.. estava lendo como tu fez ae... acho que daria pra vc tentar apontar o TNSNAMES pra um local da rede...nunca fiz esse teste de por ex... fazer o: IFILE=\\SERVIDOR\TNSNAMES\TNSNAMES.ORA já fez esse tipo de teste? me add no msn ae se puder [EMAIL PROTECTED] abçs.. - Original Message - From: Eliandro Jakubski To: oracle_br@yahoogrupos.com.br Sent: Tuesday, February 12, 2008 5:14 PM Subject: [oracle_br] Dúvida Data Guard Sou novo na utilização de Data Guard e estou com uma dúvida: Montei o seguninte cenário para testes: SGBD Principal = RAC10gr2+SGBD10gr2 com duas instâncias PRIM1 e PRIM2 SGBD de reserva = SGBD10gr2 configurado para ficar como standby em relação ao banco PRIM Pela documentação do DG o DB_NAME da base primária e da base standby devem ser iguais. O que deve ser diferente são os parâmetros DB_UNIQUE_NAME e SERVICE_NAMES. OK? Baseado nisso meu ambiente ficou assim: Banco principal - DB_NAME = PRIM DB_UNIQUE_NAME = PRIM SERVICE_NAMES = PRIM Banco standby -- DB_NAME = PRIM DB_UNIQUE_NAME = PRIMSTDBY SERVICE_NAMES = PRIMSTDBY A replicação funcionou adequadamente. Minha dúvida está em relação ao tnsnames.ora que residirá no cliente: PRIM = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = raca-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = racb-vip)(PORT = 1521)) (LOAD_BALANCE = yes) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = PRIM) (FAILOVER_MODE = (TYPE = SELECT) (METHOD = BASIC) (RETRIES = 180) (DELAY = 5) ) ) ) PRIMSTDBY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = STDBY)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PRIMSTDBY) ) ) Se o valor do parâmetro SERVICE_NAME é diferente para BANCO principal e BANCO standby, qdo ocorrer um switch eu terei que reconfigurar todos os tnsnames.ora das estações? Imaginei (antes de iniciar os testes!) que bastaria alterar os endereços IP no DNS e eu poderia utilizar a mesma entrada tnsnames. Por exemplo: No caso acima imaginei que, caso eu precisasse utilizar a base standby como principal bastaria fazer com que as entradas DNS raca-vip e racb-vip passassem a apontar para o mesmo endereço do host stdby (obviamente isso só seria possível caso os SERVICE_NAMES fossem iguais!)! Reconfigurar todos os tnsnames.ora nas estações realmente é um problema! Alguém conhece alguma solução para que o tnsnames.ora das estações não seja alterado após um switch? Obviamente tbm. não quero alterar a string connection das aplicações e não tenho previsão de migrar para ldap (se é que isso ajudaria!). EJ __ Informação do NOD32 IMON 2870 (20080212) __ Esta mensagem foi verificada pelo NOD32 sistema antivírus http://www.eset.com.br [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Dúvida Data Guard
Outra forma acho eu... poderia fazer um script ae no seu Linux... desse jeito: [EMAIL PROTECTED] bin]# cat conexao condicao=1 while [ $condicao = 1 ] do sleep 10 ping -c 1 192.168.1.1 if [ $? != 0 ] ; then script_mudança_tnsnames done [EMAIL PROTECTED] bin]# 192.168.1.1 = IP BANCO script_mudança_tnsnames = é o script no qual irá mudar o tnsnames sozinho Esse script verifica no caso se a máquina do banco está do ar. Qualquer duvida só dizer abçs.. - Original Message - From: Eliandro Jakubski To: oracle_br@yahoogrupos.com.br Sent: Wednesday, February 13, 2008 8:53 AM Subject: Re: [oracle_br] Dúvida Data Guard É uma solução, entretanto, dessa forma, eu terei um ponto único de falha em \\SERVIDOR. Caso o host SERVIDOR se torne indisponível, mesmo que o Oracle esteja ok, terei problemas! [EMAIL PROTECTED] escreveu: - Para: oracle_br@yahoogrupos.com.br De: Willian Frasson [EMAIL PROTECTED] Enviado por: oracle_br@yahoogrupos.com.br Data: 13/02/2008 7:23 Assunto: Re: [oracle_br] Dúvida Data Guard Opa bom dia.. estava lendo como tu fez ae... acho que daria pra vc tentar apontar o TNSNAMES pra um local da rede...nunca fiz esse teste de por ex... fazer o: IFILE=\\SERVIDOR\TNSNAMES\TNSNAMES.ORA já fez esse tipo de teste? me add no msn ae se puder [EMAIL PROTECTED] abçs.. - Original Message - From: Eliandro Jakubski To: oracle_br@yahoogrupos.com.br Sent: Tuesday, February 12, 2008 5:14 PM Subject: [oracle_br] Dúvida Data Guard Sou novo na utilização de Data Guard e estou com uma dúvida: Montei o seguninte cenário para testes: SGBD Principal = RAC10gr2+SGBD10gr2 com duas instâncias PRIM1 e PRIM2 SGBD de reserva = SGBD10gr2 configurado para ficar como standby em relação ao banco PRIM Pela documentação do DG o DB_NAME da base primária e da base standby devem ser iguais. O que deve ser diferente são os parâmetros DB_UNIQUE_NAME e SERVICE_NAMES. OK? Baseado nisso meu ambiente ficou assim: Banco principal - DB_NAME = PRIM DB_UNIQUE_NAME = PRIM SERVICE_NAMES = PRIM Banco standby -- DB_NAME = PRIM DB_UNIQUE_NAME = PRIMSTDBY SERVICE_NAMES = PRIMSTDBY A replicação funcionou adequadamente. Minha dúvida está em relação ao tnsnames.ora que residirá no cliente: PRIM = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = raca-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = racb-vip)(PORT = 1521)) (LOAD_BALANCE = yes) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = PRIM) (FAILOVER_MODE = (TYPE = SELECT) (METHOD = BASIC) (RETRIES = 180) (DELAY = 5) ) ) ) PRIMSTDBY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = STDBY)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PRIMSTDBY) ) ) Se o valor do parâmetro SERVICE_NAME é diferente para BANCO principal e BANCO standby, qdo ocorrer um switch eu terei que reconfigurar todos os tnsnames.ora das estações? Imaginei (antes de iniciar os testes!) que bastaria alterar os endereços IP no DNS e eu poderia utilizar a mesma entrada tnsnames. Por exemplo: No caso acima imaginei que, caso eu precisasse utilizar a base standby como principal bastaria fazer com que as entradas DNS raca-vip e racb-vip passassem a apontar para o mesmo endereço do host stdby (obviamente isso só seria possível caso os SERVICE_NAMES fossem iguais!)! Reconfigurar todos os tnsnames.ora nas estações realmente é um problema! Alguém conhece alguma solução para que o tnsnames.ora das estações não seja alterado após um switch? Obviamente tbm. não quero alterar a string connection das aplicações e não tenho previsão de migrar para ldap (se é que isso ajudaria!). EJ __ Informação do NOD32 IMON 2870 (20080212) __ Esta mensagem foi verificada pelo NOD32 sistema antivírus http://www.eset.com.br [As partes desta mensagem que não continham texto foram removidas] __ Informação do NOD32 IMON 2870 (20080212) __ Esta mensagem foi verificada pelo NOD32 sistema antivírus http://www.eset.com.br [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Dúvida Data Guard
Olá Eliandro, A forma mais elegante que encontrei para fazer isso foi mantar uma entrada no TNSNAME.ORA com o endereços dos Bancos Primário e Secundário, que, em conjunto com um serviço atendido somente pela instância do banco Primário (parâmetro SERVICE_NAMES) deixa transparente a conexão para o cliente em um caso de failover/switchover. Para nâo ocorrer aquela mensgem ORA-XXX Shutdown in progress, você deve fazer o seguinte: 1. Criar uma string para sua aplicação: MINHA_STRING = (ADDRESS = (PROTOCOL = TCP)(HOST = servidor primario)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = servidor secundário)(PORT = 1521)) ... (SERVICE_NAME = ATIVO) ... (RETRIES = 180) (DELAY = 5) ) ) ) 2. Ajustar o parânmentro SERVICE_NAMES da instacia do banco Primário. Nesse exemplo, disse que a instância do banco primário atende pelo serviço ATIVO. 3. Quando ocorrer um Switch Over por exemplo, O banco Secundário que foi promovido a Primário deverá atender, a partir de agora, o serviço ATIVO. Elimine do Servido Secundário, que antes era Primário, o serviço ATIVO. Qualquer dúvida, Estamos ai!! Abraço! Em 13/02/08, Willian Frasson [EMAIL PROTECTED] escreveu: Outra forma acho eu... poderia fazer um script ae no seu Linux... desse jeito: [EMAIL PROTECTED] bin]# cat conexao condicao=1 while [ $condicao = 1 ] do sleep 10 ping -c 1 192.168.1.1 if [ $? != 0 ] ; then script_mudança_tnsnames done [EMAIL PROTECTED] bin]# 192.168.1.1 = IP BANCO script_mudança_tnsnames = é o script no qual irá mudar o tnsnames sozinho Esse script verifica no caso se a máquina do banco está do ar. Qualquer duvida só dizer abçs.. - Original Message - From: Eliandro Jakubski To: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br Sent: Wednesday, February 13, 2008 8:53 AM Subject: Re: [oracle_br] Dúvida Data Guard É uma solução, entretanto, dessa forma, eu terei um ponto único de falha em \\SERVIDOR. Caso o host SERVIDOR se torne indisponível, mesmo que o Oracle esteja ok, terei problemas! [EMAIL PROTECTED] -oracle_br%40yahoogrupos.com.brescreveu: - Para: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br De: Willian Frasson [EMAIL PROTECTED] wfrasson%40yahoo.com.br Enviado por: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br Data: 13/02/2008 7:23 Assunto: Re: [oracle_br] Dúvida Data Guard Opa bom dia.. estava lendo como tu fez ae... acho que daria pra vc tentar apontar o TNSNAMES pra um local da rede...nunca fiz esse teste de por ex... fazer o: IFILE=\\SERVIDOR\TNSNAMES\TNSNAMES.ORA já fez esse tipo de teste? me add no msn ae se puder [EMAIL PROTECTED] willianfrasson%40hotmail.com abçs.. - Original Message - From: Eliandro Jakubski To: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br Sent: Tuesday, February 12, 2008 5:14 PM Subject: [oracle_br] Dúvida Data Guard Sou novo na utilização de Data Guard e estou com uma dúvida: Montei o seguninte cenário para testes: SGBD Principal = RAC10gr2+SGBD10gr2 com duas instâncias PRIM1 e PRIM2 SGBD de reserva = SGBD10gr2 configurado para ficar como standby em relação ao banco PRIM Pela documentação do DG o DB_NAME da base primária e da base standby devem ser iguais. O que deve ser diferente são os parâmetros DB_UNIQUE_NAME e SERVICE_NAMES. OK? Baseado nisso meu ambiente ficou assim: Banco principal - DB_NAME = PRIM DB_UNIQUE_NAME = PRIM SERVICE_NAMES = PRIM Banco standby -- DB_NAME = PRIM DB_UNIQUE_NAME = PRIMSTDBY SERVICE_NAMES = PRIMSTDBY A replicação funcionou adequadamente. Minha dúvida está em relação ao tnsnames.ora que residirá no cliente: PRIM = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = raca-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = racb-vip)(PORT = 1521)) (LOAD_BALANCE = yes) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = PRIM) (FAILOVER_MODE = (TYPE = SELECT) (METHOD = BASIC) (RETRIES = 180) (DELAY = 5) ) ) ) PRIMSTDBY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = STDBY)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PRIMSTDBY) ) ) Se o valor do parâmetro SERVICE_NAME é diferente para BANCO principal e BANCO standby, qdo ocorrer um switch eu terei que reconfigurar todos os tnsnames.ora das estações? Imaginei (antes de iniciar os testes!) que bastaria alterar os endereços IP no DNS e eu poderia utilizar a mesma entrada tnsnames. Por exemplo: No caso acima imaginei que, caso eu precisasse utilizar a base standby como principal bastaria fazer com que as entradas DNS raca-vip e racb-vip passassem a apontar para o mesmo endereço do host stdby (obviamente isso só seria possível caso os SERVICE_NAMES fossem iguais!)! Reconfigurar todos os tnsnames.ora nas estações realmente é um problema! Alguém conhece alguma solução para que o tnsnames.ora das estações não seja alterado após um switch? Obviamente tbm. não quero alterar a string