Oracle 9i – Conexões de rede - Parte IV – Configurando o ouvidor (listener) dinamicamente

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (2)  (1)

Veja neste artigo a configuração dinâmica do ouvidor (listener) em BD Oracle e também apresentarei o utilitário de controle de listener, o LSNRCTL.

Oracle 9i – Conexões de rede

Parte IV – Configurando o ouvidor (listener) dinamicamente

Nesta parte final sobre a configuração do ouvidor (listener) em BD Oracle, abordarei a configuração dinâmica do mesmo e também apresentarei o utilitário de controle de listener, o LSNRCTL. A partir deste ponto, toda a configuração necessária do lado servidor já estará completa, desta forma poderemos iniciar a configuração do lado cliente. Abordaremos no próximo artigo a configuração do método de nomeação local no lado cliente através do arquivo TNSNAMES.ORA.

Tenha uma boa leitura.

Configuração dinâmica do registro de serviço

O registro dinâmico de serviço é suprtado por instâncias de BD Oracle desde a versão 8i e é executado pelo processo em segundo plano chamado PMON para cada instância de BD. Uma particularidade é que  este registro de serviço deve ser configurado no arquivo de parâmetros de inicialização do BD, o famoso PFILE e, consequentemente, não necessita de qualquer configuração no arquivo LISTENER.ORA.

O motivo pelo qual a configuração do registro de serviço é feita diretamete no PFILE é que a configuração de listener deve ser sincronizada com as informações do arquivo de inicialização do BD e não há melhor lugar para configurá-lo que no próprio arquivo de inicialização do BD.

Para que o registro de serviço funcione adequadamente, devemos adicionar os seguintes parâmetros ao PFILE:

·         SERVICE_NAMES: especifica um ou mais nomes de serviço de banco de dados ao qual a instância se conecta. É possível especificar mais de um nome para o serviço afim de distinguir entre diferentes utilizações para o mesmo banco de dados;

·         INSTANCE_NAME: especifica o nome da instância de banco de dados. Normalmente, em um sistema de banco de dados com uma única instância, utiliza-se o mesmo nome do banco de dados.

Como exemplo, poderíamos utilizar o trecho de arquivo de parâmetros de inicialização do BD como ilustrado na Listagem 1.

...
SERVICE_NAMES=sqlmagazine.com.br
INSTANCE_NAME=sqlmag
...

Listagem 1. Trecho do PFILE com parâmetros de registro do serviço.

O processo em segundo plano PMON utiliza, por padrão, o endereço local de TCP/IP na porta 1521 para registrar as informações do serviço no listener local.

Como dito acima, TCP/IP e porta 1521 são adotados como padrão, o que não significa que não possamos alterar estes parâmetros.

Pode-se forçar o processo PMON a registrar no listener local um servidor que não utilize os parâmetros padrão simplesmente configurando-se o parâmetro LOCAL_LISTENER no PFILE, como mostra a Listagem 2.

...
LOCAL_LISTENER=nome_do_listener
...

Listagem 2. Trecho do PFILE com parâmetros de listener não padrão.

O valor nome_do_listener é o nome da entrada que deve estar devidamente configurada no método de nomeação, como o TNSNAMES.ORA, por exemplo.

Utilitário de controle de listener – LSNRCTL

Os comandos do utilitário de controle de listener podem ser executados diretamente pela linha de comando ou através do prompt LSNRCTL.

O utilitário LSNRCTL é utilizado para executar toda e qualquer administração possível referente ao listener. Quando o comando lsnrctl é chamado, todo o trabalho será executado com relação ao listener padrão do banco de dados em questão, a não ser que utilizemos o comando set listener para selecionar o listener desejado.

Para executar um comando do utilitário diretamente pela linha de comando, simplesmente invoque o comando precedido do utilitário. As Listagens 3 e 4 ilustram este procedimento em ambiente UNIX/UNIX Like e em ambiente Windows

$ lsnrctl nome_do_comando

Listagem 3. Comando do utilitário executado diretamente na linha de comando UNIX/UNIX Like.

C:\> lsnrctl nome_do_comando

Listagem 4. Comando do utilitário executado diretamente na linha de comando Windows.

Podemos também utilizar o prompt do utilitário para executar qualquer operação do mesmo. A Listagem 5 mostra como chamar o prompt do utilitário e também como alterar o listener que está sendo utilizado pelo utilitário.

$ lsntctl ¿
LSNRCTL> set current_listener listener02¿
LSNRCTL> exit¿
$

Listagem 5. Utilização do prompt do utilitário para alterar o listener padrão.

Comandos do utilitário LSNRCTL

Este utilitário provê uma série de funcionalidades para a administração do listener do banco de dados.

A Tabela 1 traz um resumo dos comandos suportados pelo utilitário.

Comando

Descrição

START

É utilizado para inicializar o listener. Toda e qualquer alteração feita no arquivo LISTENER.ORA deve ser feito com o listener fora do ar.

STOP

Utilizado para finalizar o listener. Caso o listener seja protegido por senha, deve-se utilizar o comando set password antes de finalizar o listener. Uma boa prática é enviar uma mensagem de aviso a todos os usuários da rede informando a finalização do mesmo.

CHANGE_PASSWORD

Altera dinamicamente a senha criptografada do listener.

EXIT

Finaliza o utilitário LSNRCTL.

HELP

Mostra a lista de comandos disponíves.

QUIT

Mesma função do comando exit .

RELOAD

Finaliza tudo, com exceção do endereço do listener e efetua uma releitura do arquivo LISTENER.ORA. Este comando é utilizado para adicionar ou alterar serviços sem a necessidade de parar o listener atual.

SAVE_CONFIG

Cria uma cópia de segurança do arquivo de configuração do listener (chamado de listener.bak) e atualiza o listener.ora para refletir qualquer alteração executada.

SERVICES

Exibe informações sobre os serviços e instâncias registradas.

SET pararâmetro

Usado para definir os parâmetros do listener (será visto em detalhes adiante)

SHOW parâmetro

Usado para listar os valores dos parâmetros do listener

STATUS

Exibe informações básicas sobre o listener, incluindo um sumário das definições de configuração do listener, o protocolo de endereços sendo ouvidos e um sumário dos serviços registrados.

Tabela 1. Comandos do utilitário LSNRCTL.

Parâmetros de configuração do utilitário

Uma série de parâmetros podem ser definidos através do comando set, seguido do parâmetro. Cada um desses parâmetros definidos podem também ser exibidos através do comando show, seguido pelo parâmetro. A Tabela 2 mostra os parâmetros disponíveis para utilização.

Parâmetro

Descrição

CURRENT_LISTENER

Define ou exibe ( set ou show ) qual o listener que está atualmente sendo administrado pelo utilitário.

LOG_DIRECTORY

Define ou exibe a localização do arquivo de log.

LOG_FILE

Define ou exibe o nome do arquivo de log.

LOG_STATUS

Define o status de loggin do listener para ON ou OFF.

PASSWORD

Altera a senha enviada pelo utilitário para o listener apenas para propósitos de autenticação.

SAVE_CONFIG_ON_STOP

Caso este parâmetro esteja definido como ON, todas as alterações executadas pelo comando set serão salvas permanentemente exatamente no momento anterior à saída do utilitário.

TRC_DIRECTORY

Define ou exibe a localização do arquivo de rastreamento.

TRC_FILE

Define ou exibe o nome do arquivo de rastreamento

TRC_LEVEL

Habilita o rastreamento para o listener.

Tabela 2. Parâmetros dos comandos set e show.

Conclusões

Neste artigo, aprendemos como efetuar a configuração dinâmica do registro de serviços e também como utilizar o utilitário LSNRCTL.

Tenha em mente que este utilitário é um grande aliado na administração do listener podendo nos ajudar em muitos momentos nas atividades de administração de banco de dados Oracle.

É sempre bom lembrar que podemos obter todo o status de um listener através do console do Oracle Enterprise Manager – OEM.

No próximo artigo iremos abordar a configuração do lado cliente, através do método de nomeação local, utilizando o arquivo TNSNAMES.ORA.

Um grande abraço e até a próxima.

Leia também

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Ficou com alguma dúvida?