Estabelecer Conexão com um Banco de Dados
Você pode se conectar a um banco de dados na Infraestrutura de Dados depois de se conectar a uma VM ou remotamente usando o Oracle Net Services.
Use SSH para estabelecer conexão com uma VM quando precisar de acesso ao sistema operacional antes de estabelecer conexão com um banco de dados. Use o Oracle Net Services quando precisar de acesso remoto ao banco de dados de um cliente.
Estabelecer Conexão com um Banco de Dados Após a Conexão com uma VM
Depois de se conectar a uma VM, você poderá usar comandos do sistema operacional para identificar um banco e estabelecer conexão com ele.
-
Estabeleça conexão com a VM como o usuário
opc.Para obter etapas detalhadas, consulte Estabelecer Conexão com uma VM com SSH.
-
Alterne para o usuário
oracle.sudo su - oracle -
Use o utilitário
srvctllocalizado em Oracle Grid Infrastructure home directory para listar os bancos de dados no Cluster de VMs.grid-home/bin/srvctl config database -v -
Identifique as instâncias do banco de dados que você deseja acessar.
grid-home/bin/srvctl status database -d <dbname> -
Configure as definições de ambiente do banco de dados que você deseja acessar.
. oraenvNo prompt, informe o SID (identificador do sistema Oracle) para o banco.
ORACLE_SID = [oracle] ? <dbname> -
Defina a variável de ambiente
ORACLE_SIDpara a instância do banco de dados que você deseja acessar.export ORACLE_SID=<dbname1> -
Opcionalmente, use o comando
srvctlpara exibir informações mais detalhadas sobre o banco de dados.srvctl config database -d <dbname> -
Conecte-se ao banco de dados usando SQL*Plus.
sqlplus / as sysdba
Estabelecer Conexão com um Banco de Dados com Oracle Net Services
Você pode se conectar a um banco de dados na Infraestrutura de Dados remotamente usando o Oracle Net Services.
Como a Infraestrutura de Dados usa o Oracle Grid Infrastructure, você pode fazer conexões com o Oracle Net Services usando conexões SCAN (Single Client Access Name). O SCAN fornece um mecanismo consistente para que os clientes acessem instâncias de banco de dados em execução em um Cluster de VMs.
Por padrão, o SCAN é associado com três VIPs (endereços IP virtuais). Cada VIP de SCAN está associado a um listener de SCAN que fornece um ponto final para conexões de banco de dados usando o Oracle Net Services. Para aumentar a disponibilidade, o Oracle Grid Infrastructure distribui os VIPs do SCAN e os listeners do SCAN pelos nós do Cluster de VMs disponíveis. Se um nó for encerrado ou falhar, os VIPs SCAN e os listeners SCAN serão migrados automaticamente para um nó disponível.
Usando conexões SCAN, os clientes do Oracle AI Database têm um conjunto confiável de pontos finais de conexão que podem atender aos bancos de dados em execução no Cluster de VMs.
Os listeners SCAN são além dos listeners Oracle Net que são executados em todos os nós do Cluster de VMs, que também são conhecidos como listeners de nós. Quando uma conexão Oracle Net Services vem por meio de uma conexão SCAN, o listener SCAN roteia a conexão para um dos listeners de nó e não desempenha mais nenhum papel na conexão. Uma combinação de fatores, incluindo disponibilidade do listener, posicionamento da instância do banco de dados e distribuição da carga de trabalho, determina qual listener de nó recebe cada conexão.
Esta documentação fornece requisitos básicos para estabelecer conexão com bancos de dados na Infraestrutura de Dados usando o Oracle Net Services.
Pré-requisitos de Conexão com um Banco de Dados com o Oracle Net Services
- Os endereços IP dos VIPs do SCAN ou o nome do host ou endereço IP de uma VM que hospeda o banco de dados que você deseja acessar.
- O identificador da base de dados, o identificador de sistema da base de dados (SID) ou um nome de serviço.
Estabelecer Conexão com um Banco de Dados Usando SCAN
Para criar uma ligação do Oracle Net Services utilizando os listeners SCAN, pode selecionar entre as seguintes abordagens:
- Defina um descritor de conexão que faça referência a todos os VIPs SCAN.
- Defina um descritor de ligação que faça referência a um nome de SCAN personalizado.
Estabelecer Conexão com um Banco de Dados Usando um Descritor de Conexão que Faz Referência a Todos os VIPs SCAN
Você pode configurar um descritor de conexão usando vários listeners SCAN.
Essa abordagem requer que você forneça todos os endereços VIP de SCAN e permita que Oracle Net Services se conecte a um listener de SCAN disponível.
-
Use o seguinte modelo para definir um apelido de Serviços de Rede:
<alias-name> = (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=<SCAN-VIP-1>)(PORT=1521)) (ADDRESS=(PROTOCOL=tcp)(HOST=<SCAN-VIP-2>)(PORT=1521)) (ADDRESS=(PROTOCOL=tcp)(HOST=<SCAN-VIP-3>)(PORT=1521))) (CONNECT_DATA=(<sid-or-service-entry>)))em que:
<alias-name>é o nome que você usa para identificar o alias.<SCAN-VIP-1>,<SCAN-VIP-2>e<SCAN-VIP-3>são os endereços IP dos VIPs de SCAN.<sid-or-service-entry>identifica o SID ou nome de serviço do banco de dados usando um dos seguintes formatos:SID=sid-name. Por exemplo:SID=DBNAME1.SERVICE_NAME=service-name. Por exemplo:SERVICE_NAME=pdb1.example.com.
Por padrão, o Oracle Net Services seleciona aleatoriamente um dos endereços na lista de endereços para balancear a carga entre os listeners do SCAN.
Conectar-se a um Banco de Dados Usando um Descritor de Conexão Que Referencia um Nome de SCAN Personalizado
Você pode configurar um descritor de conexão usando um nome SCAN personalizado.
Usando essa abordagem, você define um nome SCAN personalizado no seu servidor de nomes de domínio (DNS). O nome SCAN personalizado é resolvido para os três endereços VIP SCAN.
-
Use o seguinte modelo para definir um alias do Net Services que faça referência ao nome personalizado do SCAN:
<alias-name> = (DESCRIPTION= (ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=<scan-name>)(PORT=1521))) (CONNECT_DATA=(<sid-or-service-entry>)))em que:
<alias-name>é o nome que você usa para identificar o alias.<scan-name>é o nome personalizado da SCAN.<sid-or-service-entry>identifica o SID ou nome de serviço do banco de dados usando um dos seguintes formatos:SID=sid-name. Por exemplo:SID=DBNAME1.SERVICE_NAME=service-name. Por exemplo:SERVICE_NAME=pdb1.example.com.
-
Se preferir, use a opção Método Easy Connect para especificar um descritor de ligação com o seguinte formato:
<scan-name>:1521/<sid-or-service-entry>Por exemplo:
dbscan.example.com:1521/DBNAME1ou:
dbscan.example.com:1521/pdb1.example.com
Estabelecer Conexão com um Banco de Dados Usando um Listener de Nó
Para estabelecer conexão com um banco de dados com um descritor de conexão que ignora os listeners SCAN, roteie a conexão diretamente para um listener de nó.
Usando esse método, você desiste da alta disponibilidade e do balanceamento da carga fornecidos pelo SCAN. No entanto, esse método pode ser útil quando você deseja direcionar conexões para um nó ou interface de rede específica.
-
Use o seguinte modelo para definir um alias de Serviços de Rede que faça referência diretamente ao nó:
<alias-name> = (DESCRIPTION= (CONNECT_TIMEOUT=<timeout>) (ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=<node>)(PORT=1521))) (CONNECT_DATA=(<sid-or-service-entry>)))em que:
<alias-name>é o nome que você usa para identificar o alias.<timeout>especifica um período de timeout, em segundos, que permite encerrar uma tentativa de conexão sem aguardar um timeout por TCP. O parâmetro(CONNECT_TIMEOUT=timeout)é opcional.<node>é o nome do host ou o endereço IP da VM que você deseja usar.<sid-or-service-entry>identifica o SID ou nome de serviço do banco de dados usando um dos seguintes formatos:SID=sid-name. Por exemplo:SID=DBNAME1.SERVICE_NAME=service-name. Por exemplo:SERVICE_NAME=pdb1.example.com.
-
Se preferir, use a opção Método Easy Connect para especificar um descritor de ligação com o seguinte formato:
<node>:1521/<sid-or-service-entry>Por exemplo:
node01.example.com:1521/DBNAME1ou:
node01.example.com:1521/pdb1.example.com