Como se conectar à instância banco de dados oracle 12c

Um Oracle 12c instância de banco isn&rsquo-t muito bom se você pode&rsquo-t conectar a ele. Estabelecer uma conexão confiável, persistente, e seguro para o banco de dados do cliente é essencial.

Oracle Net é apoiada por

  • administrador de banco de dados (DBA) processos ouvinte geridas por

  • arquivos de configuração do cliente quanto do lado do servidor

  • utilitários de linha de comando

  • ferramentas de administração GUI opcionais

As conexões podem vir ao banco de dados através de vários protocolos não Oracle mais leves tais como ODBC ou JDBC.

Local versus conexões remotas com o Oracle 12c

Conexões para o banco de dados pode ser um dos dois tipos:

  • Local (legar): A conexão local se origina a partir do mesmo servidor de banco de dados está ligado e doesn&rsquo-t utilizar o processo de banco de dados ouvinte.

  • Controlo remoto: Todas as outras conexões de fora do servidor de banco de dados ou os do servidor usando o ouvinte são conexões remotas. A maneira mais fácil para determinar se um usuário está se conectando remotamente é se você tiver @TNS_ALIAS na tela de conexão.

fluxo de comunicação com o Oracle 12c

Ligações para um banco de dados Oracle normalmente vêm em frente a um cliente localizado longe da database- sobre uma Infra-estrutura de rede para o servidor-base de dados através de um Process- ouvinte banco de dados e, finalmente, no próprio banco de dados.

No lado do cliente, o programa chamando as referências de banco de dados tnsnames.ora para encontrar o host do servidor de banco de dados e protocolo para enviar a solicitação para. O pedido, então, deixa o cliente e vai para o OracleNet utilização da rede. A porta padrão para comunicações Oracle Net é 1521. Ao longo deste protocolo Oracle Net é onde o tráfego de comunicações de banco de dados flui entre o cliente eo servidor de banco de dados.

Depois de um cliente&pedido de comunicação rsquo-s atinge o host do servidor de banco de dados, ele&rsquo-s entregue ao ouvinte. O ouvinte base de dados é um processo separado de software Oracle no servidor de base de dados que atende a pedidos de entrada na porta OracleNet definido (1521). Quando se recebe um pedido, o ouvinte identifica qual instância de banco de dados é direcionado para esse pedido e estabelece uma conexão com essa instância do banco de dados.

Video: Aula Arquitetura de Banco de Dados Oracle - Comando Select em uma Instäncia

No lado do servidor, o ouvinte usa o arquivo listener.ora para fazer essa determinação. Quando a conexão é estabelecida e do início da sessão, o ouvinte sai da imagem e permite a comunicação entre o banco de dados e cliente. Cada sessão de cliente tem um processo de servidor dedicado no lado do servidor. Dentro deste processo de servidor dedicado, o usuário&rsquo-s código de sessão é executado. Isto representa o fluxo de comunicação.

O cliente contém o aplicativo cliente e tnsnames.ora arquivo. Ele se comunica com o servidor de banco de dados sobre Oracle Net na porta 1521. No servidor de banco de dados, um processo ouvinte é configurado por meio do arquivo listener.ora. As vias de ouvinte a solicitação de entrada para a instância de dados alvo (quer dev11g ou DB01) e estabelece o protocolo de reconhecimento de ligação inicial entre o exemplo da base de dados e o cliente.

Como configurar tnsnames.ora com a Oracle 12c

Você deve fornecer o endereço ou localização do banco de dados&rsquo-re tentando se conectar. Esta informação é frequentemente armazenados no arquivo de texto tnsnames.ora, que existe no cliente você&rsquo re-ligar de.



Nota esta &ldquo-cliente&rdquo- pode ser utilizador&rsquo-s estação de trabalho, um servidor de aplicativos web, ou mesmo outro servidor de banco de dados.

Aqui está um arquivo tnsnames.ora amostra que pode ser encontrado em oracle_home_directory / network / admin:

dev12c = (DESCRIÇÃO = (ADDRESS_LIST = (ENDEREÇO ​​= (PROTOCOLO = TCP) (HOST = orasvr01) (PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = dev12c)) DB01 = (DESCRIÇÃO = (ADDRESS_LIST = (ENDEREÇO ​​= (PROTOCOLO = TCP) (HOST = orasvr02) (PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = DB01))

Este tnsnames particular contém 2 TNS (Transport Network Substrate) pseudónimos, um para dev12c e um por DB01. Ao se conectar a uma instância de banco de dados, você realmente especificar o alias TNS (não o nome do banco de dados). O alias TNS pode ser qualquer nome (como dev12c ou algo mais genérico, como dev ou trainingdb). Essa flexibilidade significa que você pode ter um apelido genérico e não codificar o nome do banco.

Sob HOST você especificar o nome do host DNS ou o endereço IP do servidor que contém a instância do banco de dados. Mais uma vez, tentar evitar valores codificados como endereço IP e usar nomes de DNS, se possível.

PORT é a porta que o processo de escuta do lado do servidor está escutando. isto&rsquo-s também a porta que você se conectar através da rede on para o seu tráfego OracleNet (assim os firewalls devem ser abertas nessa porta).

Video: BANCO DE DADOS EM INSTANCIA - pedrofcarvalho.com.br

SERVICE_NAME é o nome da instância do banco de dados do serviço que você&rsquo-re tentando se conectar. Você também pode usar SID, embora a Oracle está promovendo o uso de SERVICE_NAME em seu lugar.

O arquivo tnsnames.ora é baseado em texto, e você pode editá-lo com a mão. Depois de fazer mudanças,&não rsquo-S necessário reiniciar o processo de banco de dados ou ouvinte.

Como testar a conexão com o Oracle 12c

A melhor maneira de testar uma conexão é através da aplicação, mas que isn&rsquo-t sempre possível. De preferência, você&rsquo-re na camada do cliente e realmente percorrer o mesmo caminho de rede como os aplicativos cliente

Para executar um teste de conectividade, siga estes passos para determinar se você pode se conectar à instância de banco de dados:

  1. Ir para a camada de cliente.

  2. Veja se o software cliente Oracle como o SQL * Plus e tnsnames.ora está instalado.

  3. Executar um sqlplus nome de usuário@tns_alias, tais como sqlplus mwhalen @ dev12c.

  4. Digite a senha para se conectar ao banco de dados.

Usando o utilitário tnsping é um método ainda mais rápido que doesn&rsquo-t exigir uma senha. Este utilitário se conecta através da rede via o ouvinte e estabelece um aperto de mão. Em seguida, ele termina a ligação e relata os resultados, o que você vê aqui:

$ Tnsping dev12cTNS Ping Utility para Linux: Versão 12.1.0.1.0 - Produção on-19-maio ​​2013 12: 20: 07Copyright (c) 1997, 2013, Oracle. Todos os direitos reserved.Used arquivos de parâmetros: Adaptador /u01/app/oracle/product/12.1.0/dbhome_1/network/admin/sqlnet.oraUsed TNSNAMES para resolver o aliasAttempting para contato (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) ( HOST = 
localhost) (PORT = 1,521)) (CONNECT_DATA = (SERVIDOR = DEDICADO) (SERVICE_NAME = dev12c))) OK (20 ms)

Testando conexões é uma etapa boa verificação para o DBA. Se ocorrerem problemas, ele permite que você pegá-los primeiro em vez de confiar em usuários relatá-los mais tarde.


Publicações relacionadas