Você está na página 1de 25

4/16/2020

Configurar Rede
Conteúdo

▪ Conexões na Rede
▪ Terminologia e Conceitos de Conectividade
▪ Modelos de Configuração da Rede Oracle
▪ Visão Geral de Métodos de Nomeação
▪ Arquivos de Configuração da Rede Oracle
▪ Métodos de Nomeação

Dra. Otília Fernandes da Graça 1

Conexões na Rede
▪ Para estabelecer conexões entre a aplicação e o servidor Oracle
num ambiente de rede utilizamos uma rede Oracle, considerando os
seguintes fatores:
• A configuração de rede ;
• A localização dos nós de rede ;
• A aplicação que acessará a BD;
• O protocolo de rede que será utilizado
▪ Tipos de conexão utilizados:
• Aplicações Cliente-Servidor (Client-Server);
• Aplicações Java;
• Aplicações de Cliente Web (Web Client).

Dra. Otília Fernandes da Graça 2

1
4/16/2020

Conexão em aplicações Cliente-Servidor


▪ A função de uma rede Oracle é simplesmente habilitar uma
conexão entre um cliente e um servidor de BD Oracle. Nada mais é
que um componente presente em ambos os lados da conexão e é a
camada mais alta do protocolo de rede .
▪ Quando uma conexão é iniciada num cliente para o servidor de
BD, as informações desta requisição são passadas para baixo nas
camadas de rede do cliente, são transportadas através do meio
físico de rede e finalmente são enviadas para cima nas camadas de
rede do servidor.

Dra. Otília Fernandes da Graça 3

Conexão em aplicações Cliente-Servidor


Aplicação do Cliente .
▪ A aplicação do cliente ( como o
SQL*Plus, por exemplo ) utiliza a OCI
(Oracle Call Interface ) para se comunicar
com o servidor de BD. A OCI é um
componente que fornece interface entre a
aplicação do cliente e a linguagem SQL
que o BD pode entender.
Two Task Common.
▪ TTC é o responsável pela conversão do
tipo de dado e o character set entre os
diferentes formatos presentes no cliente e
servidor de BD. É uma implementação da
camada de apresentação do modelo OSI.

Dra. Otília Fernandes da Graça 4

2
4/16/2020

Conexão em aplicações Cliente-Servidor


Rede Oracle - Camada Base
▪ A camada base da rede Oracle é a responsável em
estabelecer e manter a conexão entre a aplicação do
cliente e o servidor de BD. Deve estar presente em ambos
os lados da conexão .
▪ No lado cliente, é responsável pelos seguintes assuntos de
conectividade:
– Localização do servidor de BD;
– Se um ou mais protocolos estão envolvidos na
conexão;
– Como manusear exceções e interrupções.
▪ No lado servidor , além de se responsabilizar pelas
mesmas actividades executadas no lado cliente, trabalha
com o “ ouvidor ” (listener) para receber pedidos de
conexão .
▪ Esta camada também se comunica com o serviço de
nomeação e com o Oracle Advanced Security para
garantir conexões seguras.
▪ É a implementação da camada de sessão do modelo OSI.
Dra. Otília Fernandes da Graça 5

Conexão em aplicações Cliente-Servidor

Protocolo de Suporte Oracle.


▪ É responsável pelo mapeamento das funcionalidades da
Rede Oracle para os protocolos padrão usados em
conexões entre as aplicações cliente e o servidor de BD.
Esta camada suporta os seguintes protocolos de rede :
– TCP/IP;
– TCP/IP com SSL;

Dra. Otília Fernandes da Graça 6

3
4/16/2020

Conexão em Aplicações de Cliente Web

▪ Podemos estabelecer conexões com um servidor de BD


Oracle através de navegadores Web:
– Utilizando um servidor Web como camada intermediária ;
– Conectando diretamente ao servidor Oracle através de http.

Dra. Otília Fernandes da Graça 7

Conexão em Aplicações de Cliente Web


• Servidor Web como camada
intermediária
• O navegador Web utiliza-se do
protocolo HTTP para “chamar”
uma aplicação ou applet Java num
servidor Web. O servidor Web,
assumindo o papel de cliente com
a rede Oracle instalada, conecta-se
ao servidor de BD Oracle
utilizando a rede Oracle. A rede
Oracle deve estar instalada tanto
no servidor Web ( que actua como
cliente ) quanto no servidor de BD
Oracle.
Dra. Otília Fernandes da Graça 8

4
4/16/2020

Conexão em Aplicações de Cliente Web


▪ Cliente Web utilizando aplicação Java
O servidor Web é o cliente e é necessário utilizar um driver
JDBC para comunicação com a rede Oracle para se conectar ao
servidor de BD Oracle. O servidor de BD também deve estar
configurado com a rede Oracle.

Dra. Otília Fernandes da Graça 9

Conexão em Aplicações de Cliente Web


• Cliente Web utilizando applet Java
No caso de um applet Java ser “chamado” no servidor Web para iniciar uma
conexão com o servidor Oracle (o servidor Web também passa a ser o cliente )
é utilizado o driver JDBC Thin. Este driver “conversa” com a rede Java para se
comunicar com o servidor de BD Oracle, que deve estar configurado com a rede
Oracle. Ele utiliza uma implementação Java da camada base da rede Oracle,
chamada rede Java (JavaNet) e uma implementação Java do TTC, chamado
JavaTTC.

Dra. Otília Fernandes da Graça 10

10

5
4/16/2020

Conexão em Aplicações de Cliente Web


▪ Conexão Web utilizando HTTP
Não é necessária a rede Oracle nem no cliente nem no servidor. O
servidor de BD Oracle deve estar configurado para suportar este
protocolo. Também não é necessário um servidor de Web para a
conexão.

Dra. Otília Fernandes da Graça 11

11

Conexão em Aplicações de Cliente Web


▪ Pode-se configurar o “ouvidor” (listener) para aceitar conexões
HTTP. É comumente usado para conexões a aplicações que são
parte da base de dados, por exemplo, pode-se usar o Oracle
Internet File System para exibir o conteúdo da base de dados para o
cliente através de uma grande variedade de protocolos, inclusive
HTTP.

Dra. Otília Fernandes da Graça 12

12

6
4/16/2020

Terminologia e conceitos de conectividade


Estas terminologias e conceitos são aplicados para qualquer plataforma
operacional, desde que, devidamente, suportadas pela BD Oracle.
• Database Service (serviço de base de dados):
Para o cliente, uma BD Oracle aparece como um serviço, ou seja, a BD
executa o trabalho como representante do cliente. É possível existir um
ou mais serviços associados a uma BD, que pode ainda ser apresentado
como múltiplos serviços e ainda um serviço pode ser implementado
como várias instâncias da BD;
• Service Name (nome do serviço):
É uma representação lógica da BD, é a maneira pela qual a BD se
apresenta ao cliente. O service name é um string que representa o nome
global da BD, ou seja, um nome composto do nome da BD e o nome do
domínio. Esta definição é feita durante a instalação ou criação da BD. É
necessário incluir o service name na secção de dados da conexão no
descritor de conexão;
Dra. Otília Fernandes da Graça 13

13

Terminologia e conceitos de conectividade


• Descritor de Conexão:
O descritor de conexão é utilizado pelo cliente para efectuar a
conexão a um serviço. O descritor indica qual a localização da BD
e qual o nome do serviço;
• Listener (ouvidor):
A secção de endereço do descritor de conexão é o protocolo de
endereço do listener. Para conectar a um serviço, primeiramente o
cliente entra em contato com um processo ouvidor que se encontra
no servidor de BD. O ouvidor recebe um pedido de conexão do
cliente e manipula esta requisição para o servidor de BD. Uma vez
estabelecida a conexão, o cliente e o servidor de BD passam a se
comunicar directamente;

Dra. Otília Fernandes da Graça 14

14

7
4/16/2020

Terminologia e conceitos de conectividade


• Registo de Serviço:
O descritor de conexão também especifica o nome do serviço de
BD com os quais os clientes tentam estabelecer uma conexão. O
ouvidor conhece quais serviços podem enviar pedidos de conexão.
Este processo é conhecido como registo de serviço. Ele também
fornece informações sobre as instâncias de BD e também os
manipuladores de serviço disponíveis para cada instância;
• Manipulador de serviço:
Os manipuladores de serviço actuam como pontos de conexão para
um servidor de BD Oracle. Um manipulador de serviço pode ser
um despachante (dispatcher), que atende a várias conexões
simultaneamente, ou um servidor dedicado, que atenderá apenas a
uma conexão.

Dra. Otília Fernandes da Graça 15

15

Modelos de configuração da rede Oracle


As informações de configuração podem ser armazenadas num arquivo
de configuração local ou num repositório centralizado.
• Gestão Local:
Todas as informações sobre a conexão estão armazenadas num
arquivo chamado tnsnames.ora em cada um dos computadores da
rede (clientes);
• Gestão Centralizada:
As informações sobre a conexão estão armazenados num serviço
de directório centralizado, incluindo um servidor de directórios
LDAP ou um servidor de nomes Oracle.

Dra. Otília Fernandes da Graça 16

16

8
4/16/2020

Arquivos de configuração da rede Oracle


• ldap.ora:
Localizado no cliente e no servidor de BD configurado para gestão
centralizada; este arquivo contém os parâmetros necessários para
acessar um servidor de directórios;
• listener.ora:
Localizado no servidor de BD, este arquivo contém:
- protocolos de endereçamento que o ouvidor aceita numa
requisição de conexão;
- serviços de BD e serviços diversos aos quais ele está “ouvindo”;
- parâmetros de controle que são utilizados pelo ouvidor.

Dra. Otília Fernandes da Graça 17

17

Arquivos de configuração da rede Oracle


• names.ora:
Localizado no servidor de nomes Oracle, este arquivo inclui a
localização, informações de domínio e parâmetros de configuração
opcionais para o servidor de nomes Oracle;
• tnsnames.ora:
Localizado apenas nos clientes, este arquivo contém os nomes dos
serviços de rede mapeados para o descritor de conexão. Este
arquivo é utilizado apenas no método de nomeação local;
• sqlnet.ora:
Localizado tanto nos clientes quanto no servidor de BD.
Todos estes arquivos são criados tipicamente em
%ORACLE_HOME%\network\admin em ambiente Windows.

Dra. Otília Fernandes da Graça 18

18

9
4/16/2020

Arquivos de configuração da rede Oracle


• A rede Oracle irá procurar os arquivos sqlnet.ora e
ldap.ora na seguinte ordem:
1. No diretório especificado pela variável de ambiente
TNS_ADMIN. Caso não tenha sido definida como uma
variável em ambiente Windows, deverá estar definida no
registo (verificar através do regedit);
2. Nos directórios padrão, comentados acima.
• A rede Oracle procurará os arquivos names.ora,
tnsnames.ora e listener.ora na seguinte ordem:
1. No diretório especificado na variável de ambiente
TNS_ADMIN, nas mesmas condições que os arquivos
sqlnet.ora e ldap.ora;
2. Nos directórios padrão, comentados acima.
Dra. Otília Fernandes da Graça 19

19

Configuração do lado servidor


▪ O processo ouvidor (listener)
• A aplicação cliente faz uma conexão inicial ao servidor de BD
através do ouvidor (listener), que por sua vez é um processo que
“ouve” as requisições de conexão como representante de uma ou mais
BDs.
• Algumas características do listener são:
* Um listener pode “ouvir” mais de uma BD;
* Vários listeners podem “ouvir” uma mesma BD afim de promover
balanceamento de carga;
* Um listener pode “ouvir” através de vários protocolos;
* O nome padrão do listener numa rede Oracle é LISTENER;
• O nome do arquivo do listener deve ser listener.ora.

Dra. Otília Fernandes da Graça 20

20

10
4/16/2020

Configuração do lado servidor


▪ Métodos de conexão
Sempre que uma aplicação cliente faz um pedido de conexão para um
servidor de BD, o listener executa um dos seguintes métodos de
conexão:
* Geração e transmissão de conexão:
Neste método de conexão, o listener gera um processo servidor
dedicado e transmite a conexão para o processo servidor para que a
conexão entre o cliente e o BD seja feita diretamente. Neste caso, é
executada a sequência de eventos

Dra. Otília Fernandes da Graça 21

21

Configuração do lado servidor


▪ Métodos de conexão (cont)
* Conexão direta através do despachante:
Quando este método de conexão é utilizado, o listener usa o despachante
(dispatcher) como um tipo de manipulador de serviço, que atende directamente
às requisições do cliente. No momento que a requisição do cliente é bem
sucedida, é executada a sequência de eventos

Dra. Otília Fernandes da Graça 22

22

11
4/16/2020

Configuração do lado servidor


▪ Métodos de conexão (cont)
* Sessão de redirecionamento:
Quando encontramos ambientes que não suportam nenhum dos métodos
anteriores de conexão, será estabelecida uma sessão de redirecionamento:

Dra. Otília Fernandes da Graça 23

23

Configurando o ouvidor (listener)


▪ Configuração do Serviço e Registo
O listener pode ser configurado de duas maneiras: dinâmica ou
estaticamente.
• Registo dinâmico do serviço:
Uma instância Oracle 9i utiliza o registo de serviço para informar ao listener
sobre o serviço de BD. O registo do serviço depende do processo de segundo
plano PMON para registar as informações da instância para o ouvidor.
Quando uma instância é inicializada, os parâmetros de inicialização sobre o
listener são lidos do arquivo de parâmetros de inicialização para que o PMON
registe informações para o listener. Caso o listener não esteja “no ar” no
momento da inicialização da instância, o PMON não registará as informações.
Se isto acontecer, o PMON irá continuar tentando conctatar o listener. O listener
irá rejeitar qualquer conexão feita através de um serviço não registado.

Dra. Otília Fernandes da Graça 24

24

12
4/16/2020

Configurando o ouvidor (listener)


▪ Registo estático do serviço:
Para utilizar o registo estático do serviço, é necessário utilizar o
arquivo listener.ora, que deve estar localizado na máquina em que
o listener está localizado, usualmente o servidor de BD.
Este arquivo contém as seguintes informações de configuração:
– O nome do listener;
– O endereço do listener;
– As bases de dados que utilizam o listener;
– Parâmetros do listener.

Dra. Otília Fernandes da Graça 25

25

Configurando o ouvidor (listener)


▪ Registo estático do serviço:
– Conteúdo do arquivo listener.ora
1. LISTENER =
2. (ADDRESS_LIST =
3. (ADDRESS = (PROTOCOL = TCP)
(HOST = Otilia)
(PORT = 1521)))
4. SID_LIST_LISTENER =
5. (SID_LIST =
6. (SID_DESC =
7. (ORACLE_HOME = c:\oracle\ora92\network\admin)
8. (GLOBAL_DBNAME = bd1aulas.casa)
9. (SID_NAME = bd1aulas)))

Dra. Otília Fernandes da Graça 26

26

13
4/16/2020

Configurando o ouvidor (listener)


▪ Oracle Net Manager
• A Oracle disponibiliza uma interface gráfica para se efectuar a
configuração do listener. Esta interface é conhecida como Oracle
Net Manager e é instalada juntamente com o software da base de
dados.
• Durante a instalação das versões Enterprise Edition ou Standard
Edition no servidor, o Oracle Net Configuration Assistant
configura, automaticamente, um listener com o nome padrão
(LISTENER) utilizando o protocolo TCP/IP.
• Caso precise criar um listener adicional, utilize o próprio Oracle
Net Manager para configurar o listener adicional no arquivo
listener.ora.
• Expanda a árvore Configuração do Oracle Net > Local > Listener
e depois seleccione o comando Criar no menu Editar.........
Dra. Otília Fernandes da Graça 27

27

Configurando o ouvidor (listener)


▪ Configuração dinâmica do registo do serviço
• O registo dinâmico do serviço é executado pelo processo em
segundo plano chamado PMON para cada instância de BD. Uma
particularidade é que este registo 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 registo de serviço é feita
directamente no PFILE é que a configuração de listener deve ser
sincronizada com as informações do arquivo de inicialização da
BD e não há melhor lugar para configurá-lo que no próprio arquivo
de inicialização do BD.

Dra. Otília Fernandes da Graça 28

28

14
4/16/2020

Configurando o ouvidor (listener)


▪ Configuração dinâmica do registo do serviço
• Para que o registo de serviço funcione adequadamente, devemos
adicionar os seguintes parâmetros ao PFILE:
– SERVICE_NAMES: especifica um ou mais nomes de serviço de base 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 a
mesma base de dados;
– INSTANCE_NAME: especifica o nome da instância de base de dados.
Normalmente, num sistema de base de dados com uma única instância,
utiliza-se o mesmo nome da base de dados.
– ...
SERVICE_NAMES=bd1aulas.casa
INSTANCE_NAME=bd1aulas
...
• O processo em segundo plano PMON utiliza, por padrão, o endereço local de
TCP/IP na porta 1521 para registar as informações do serviço no listener local.
Dra. Otília Fernandes da Graça 29

29

Configurando o ouvidor (listener)


▪ Configuração dinâmica do registo do serviço
• Utilitário de controle de listener – LSNRCTL
Os comandos do utilitário de controle de listener podem ser executados
directamente pela linha de comando
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 da base de dados em
questão, a não ser que utilizemos o comando set listener para seleccionar o
listener desejado.
Para executar um comando do utilitário directamente pela linha de comando,
simplesmente invoque o comando precedido do utilitário.
C:\> LSNRCTL nome_do_comando

Dra. Otília Fernandes da Graça 30

30

15
4/16/2020

Configurando o ouvidor (listener)


▪ Configuração dinâmica do registo do serviço
• Utilitário de controle de listener – LSNRCTL
• Comandos do utilitário LSNRCTL
Este utilitário provê uma série de funcionalidades para a
administração do listener da base de dados.
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 utilizadores 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.

Dra. Otília Fernandes da Graça 31

31

Configurando o ouvidor (listener)


• Comandos do utilitário LSNRCTL
QUIT - Mesma função do comando exit .
RELOAD - Finaliza tudo, com exceção do endereço do listener e efectua uma
releitura do arquivo LISTENER.ORA. Este comando é utilizado para adicionar
ou alterar serviços sem a necessidade de parar o listener actual.
SAVE_CONFIG - Cria uma cópia de segurança do arquivo de configuração do
listener (chamado de listener.bak) e actualiza o listener.ora para refletir qualquer
alteração executada.
SERVICES - Exibe informações sobre os serviços e instâncias registadas.
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 registados.

Dra. Otília Fernandes da Graça 32

32

16
4/16/2020

Configurando o ouvidor (listener)


• Parâmetros de configuração do utilitário LSNRCTL
Podem ser definidos através do comando set, seguido do parâmetro e podem ser
exibidos através do comando show, seguido pelo parâmetro.
CURRENT_LISTENER - Define ou exibe ( set ou show ) qual o listener que está
sendo, actualmente, 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 login 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
exactamente 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.
Dra. Otília Fernandes da Graça 33

33

Visão geral de métodos de nomeação


Métodos de nomeação são utilizados pela aplicação cliente para analisar um
identificador de conexão para um descritor de conexão numa tentativa de conexão
com um serviço de BD.
Uma rede Oracle suporta cinco métodos de nomeação:
• Nomeação no Servidor (Host naming): Habilita o utilizador num ambiente
TCP/IP para analisar nomeações através dos nomes de serviço existentes;
• Nomeação Local (Local naming): Localiza endereços de rede através da
utilização de informações de configuração armazenadas em cada cliente no
arquivo tnsnames.ora;
• Nomeação em Directório (Directory naming): Analisa um serviço de BD ou
nome de um serviço de rede para um descritor de conexão, armazenado num
servidor de directório centralizado;
• Oracle Names: É um serviço de directórios Oracle que contém um sistema de
servidor de nomes Oracle, que provê soluções de nomes para endereços, para
cada serviço na rede;
• Nomeação Externa: Utiliza-se de nomes de serviços de terceiros devidamente
suportados.
Dra. Otília Fernandes da Graça 34

34

17
4/16/2020

Configurando o método de nomeação local


• É feito através de dois arquivos de configuração residentes no lado
cliente, são eles o arquivo tnsnames.ora e o arquivo sqlnet.ora
• Vantagens do método de nomeação local:
– É um método relativamente directo de resolver endereços de serviços;
– Possibilita resolver nomes de serviços de rede através de diferentes
protocolos;
– Pode ser configurado facilmente através da ferramenta gráfica Net Manager
• Todas as configurações estão armazenadas no arquivo
tnsnames.ora, que é um arquivo do tipo texto puro que pode ser
editado em qualquer editor de texto
• O arquivo tnsnames.ora é utilizado para armazenar os nomes de
serviço de rede para que a estação de trabalho (cliente) consiga
conectar-se ao servidor Oracle.

Dra. Otília Fernandes da Graça 35

35

Configurando o método de nomeação local


• A localização padrão onde este arquivo (tnsnames.ora) fica
gravado é:
%ORACLE_HOME%\network\admin;

BD1AULAS =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = TCP) (HOST = 192.168.10.25) (PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = BD1AULAS)
)
)

Dra. Otília Fernandes da Graça 36

36

18
4/16/2020

Configurando o método de nomeação local


• BD1AULAS É o nome dado para a sua entrada de nomeação local. É ele que
deverá ser usado no momento da conexão com o BD. Poderá ser definido
qualquer nome desde que não contenha espaços.
• DESCRIPTION É a palavra chave para definir o descritor de conexão. Todas as
descrições serão especificadas sempre desta mesma forma.
• ADDRESS_LIST É a palavra chave que indica a lista de endereços disponíveis.
• ADDRESS É a palavra chave para a especificação do endereço. Para múltiplos
endereços, basta manter uma entrada ADDRESS para cada endereço e todos
dentro do mesmo ADDRESS_LIST.
• PROTOCOL Define qual o protocolo de rede que está sendo usado.
• HOST Especifica o endereço IP do servidor ou seu nome quando da utilização
do protocolo TCP/IP.
• PORT Especifica o número da porta na qual o listener está “escutando”, no lado
servidor quando da utilização do protocolo TCP/IP.
• CONNECT_DATA Especifica o nome do serviço de base de dados no qual se
deverá conectar. Habitualmente, utiliza-se o nome da entrada no tnsnames.ora
sendo o mesmo nome do serviço.
Dra. Otília Fernandes da Graça 37

37

Configurando o método de nomeação local


• O arquivo sqlnet.ora
O arquivo sqlnet.ora controla o comportamento do serviço de rede
Oracle.
A localização padrão onde este arquivo fica gravado é:
%ORACLE_HOME%\network\admin;
• O arquivo sqlnet.ora possui apenas um parâmetro,
NAMES.DIRECTORY_PATH, que define como o serviço de rede
Oracle irá resolver o nome do serviço definido no descritor de
conexão. Pode utilizar múltiplos métodos apenas representando-os
numa lista separada por ponto e vírgula (;) e delimitadas por
parênteses.
• Caso múltiplos métodos sejam definidos, o serviço de rede irá
resolver os nomes de serviço utilizando a ordem da esquerda para a
direita de definições dos métodos.
Dra. Otília Fernandes da Graça 38

38

19
4/16/2020

Configurando o método de nomeação local


• O arquivo sqlnet.ora
– Conteúdo típico do arquivo sqlnet.ora.
NAMES.DIRECTORY_PATH = (TNSNAMES)
– Códigos e mensagens de erro relacionadas a problemas no lado
cliente.
• ORA-12154 “TNS: could not resolve service name”
• ORA-12198 “TNS: could not find path to destination”
• ORA-12203 “TNS: unable to connect to destination”
• ORA-12533 “TNS: illegal ADDRESS parameters”
• ORA-12541 “TNS: no listener”

Dra. Otília Fernandes da Graça 39

39

CONFIGURAÇÃO DO AMBIENTE DA
REDE EM LINUX

PC A (CLIENTE DA BD + SERVIDOR DA BD)

ORACLE NET
40

20
4/16/2020

CONFIGURAÇÃO DO AMBIENTE DA
REDE
PC A (CLIENTE DA BD)

PC B (SERVIDOR DA BD)
ORACLE NET

ORACLE NET
41

CONFIGURAÇÃO DO AMBIENTE
DA REDE
• PC B (SERVIDOR DA BD)
– LISTENER (ESCUTAR OU NÃO
$ lsnrctl
ESCUTAR PEDIDOS)
LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 05-AUG-2008 11:58:01
Copyright (c) 1991, 2007, Oracle. All rights reserved.
Welcome to LSNRCTL, type "help" for information.

LSNRCTL> help
The following operations are available
An asterisk (*) denotes a modifier or extended command:
start stop status
services version reload
save_config trace spawn
change_password quit exit
set* show*

42

21
4/16/2020

CONFIGURAÇÃO DO AMBIENTE
DA REDE
• PC B (SERVIDOR DA BD)
– $ORACLE_HOME/network/admin/listener.
$ cat listener.ora
LISTENER =
ora
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.2)(PORT = 1521))
)))

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orcl.example.com)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
(SID_NAME = orcl)
)
)

43

CONFIGURAÇÃO DO AMBIENTE
DA REDE
• PC B (SERVIDOR DA BD)
– 1 SERVIDOR COM MÚLTIPLAS
$ cat listener.ora
LISTENER=
INSTÂNCIAS?
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.100.99)(PORT=1521))
(ADDRESS=(PROTOCOL=ipc)(KEY=extproc))))

SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(ORACLE_HOME=/oracle10g)
(SID_NAME=sales))
(SID_DESC=
(SID_NAME=plsextproc)
(ORACLE_HOME=/oracle10g))

44

22
4/16/2020

CONFIGURAÇÃO DO AMBIENTE
DA REDE
• PC B (SERVIDOR DA BD)
– 1 SERVIDOR COM MÚLTIPLAS
INSTÂNCIAS?
• INSTANCE CAGING
– OVER-PROVISIONING
– PARTITIONING

45

CONFIGURAÇÃO DO AMBIENTE
DA REDE
• PC A (CLIENTE DA BD)
– CONECTAR COM O SERVIDOR DA BD
• LOCAL NAMING
• DIRECTORY NAMING
• EASY CONNECT NAMING
• EXTERNAL NAMING

46

23
4/16/2020

CONFIGURAÇÃO DO AMBIENTE
DA REDE
• PC A (CLIENTE DA BD)
– LOCAL NAMING (tnsnames.ora)
$ cat tnsnames.ora

orcl.example.com =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = myserver.example.com)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)

47

CONFIGURAÇÃO DO AMBIENTE
DA REDE
• PC A (CLIENTE DA BD)
$ sqlplus – DIRECTORY NAMING
CONNECT hr@orcl

48

24
4/16/2020

CONFIGURAÇÃO DO AMBIENTE
DA REDE
• PC A (CLIENTE DA BD)
$ sqlplus – EASY CONNECT NAMING
"host[:port][/service_name][:server][/instance_name]“

nick@"dbhost.example.com/orclins.service.example.com/orclins"

49

CONFIGURAÇÃO DO AMBIENTE
DA REDE
• PC A (CLIENTE DA BD)
– EXTERNAL NAMING (sqlnet.ora)
$ cat sqlnet.ora

NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)


NAMES.DEFAULT_DOMAIN = example.com

# The following entry is necessary on Windows if OS authentication is required.


SQLNET.AUTHENTICATION_SERVICES= (NTS)

50

25

Você também pode gostar