web-dev-qa-db-fra.com

Comment se connecter à distance à la base de données Oracle 11g

Oracle 11g XE est installé sur l'ordinateur A. Je peux me connecter via la ligne de commande SQL à l'aide de la commande connect username/password. Je peux aussi envoyer des instructions SQL à la base de données Demo: Select * from demo_customers;

La base de données s'exécute sur l'hôte local de l'ordinateur A.

Je veux que l'ordinateur B se connecte à la base de données de l'ordinateur A sur localhost. Comment puis je faire ça?

14
gamosa

Vous devrez exécuter l'utilitaire lsnrctl sur le serveur A pour démarrer l'écouteur. Vous devriez alors vous connecter à partir de l'ordinateur B en utilisant la syntaxe suivante:

sqlplus username/password@hostA:1521 /XE

Les informations sur le port sont facultatives si la valeur par défaut, 1521, est utilisée. 

Documentation de configuration d'auditeur ici.Documentation de connexion à distance ici.

12
DCookie

J'installe le serveur Oracle et cela permet de se connecter à partir de la machine locale sans problème. Mais à partir d’un autre Maclaptop de mon réseau domestique, il ne peut pas se connecter à l’aide de Sql Developer ni de Sql Plus. Après quelques recherches, je me suis rendu compte qu'il y avait cette étape supplémentaire à faire:

Utilisez le gestionnaire de réseau Oracle. Sélectionnez l'auditeur. Ajoutez l'adresse IP (dans mon cas, il s'agit de 192.168.1.12) en plus du 127.0.0.1 ou de l'hôte local. 

Cela finira par ajouter une entrée dans [OracleHome]\product\11.2.0\dbhome_1\network\admin\listener.ora

  • redémarrez le service d'écoute. (note: pour moi je redémarre l'ordinateur une fois pour le faire fonctionner) 

  • Utiliser le statut de lsnrctl pour vérifier
    Notez que l’hôte supplémentaire = 192.168.1.12 apparaît et c’est ce que vous devez utiliser pour que la connexion à distance fonctionne. 

    C:\Windows\System32> état lsnrctl
    LSNRCTL pour Windows 64 bits: Version 11.2.0.1.0 - Production le 05-SEP-2015 13:51:43
    Copyright (c) 1991, 2010, Oracle. Tous les droits sont réservés.
    Connexion à (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)) (KEY = EXTPROC1521)))
    Statut de l'écouteur 


    Alias ​​LISTENER
    Version TNSLSNR pour Windows 64 bits: Version 11.2.0.1.0 - Production
    Date de début 05-SEP-2015 13:45:18
    Disponibilité 0 jours 0 h. 6 min 24 sec
    Trace Level off
    Sécurité activée: authentification du système d'exploitation local
    SNMP OFF
    Fichier de paramètres d'écoute
    D:\Oracle11gr2\product\11.2.0\dbhome_1\network\admin\listener.ora
    Fichier journal du programme d'écoute d:\Oracle11gr2\diag\tnslsnr\eagleii\listener\alert\log.xml
    Résumé des points finaux d'écoute ...
    (DESCRIPTION = (ADDRESS = (PROTOCOL = ipc) (PIPENAME = \.\Pipe\EXTPROC1521ipc)))
    (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)) (hôte = 127.0.0.1) (PORT = 1521)))
    (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)) (hôte = 192.168.1.12) (PORT = 1521)))
    Résumé des services ...
    Le service "CLRExtProc" a 1 instance (s).
    L'instance "CLRExtProc", statut INCONNU, possède 1 gestionnaire (s) pour ce service ...
    Le service "xe" a 1 instance (s).
    L'instance "xe", état PRET, a 1 gestionnaire (s) pour ce service ... Le service "xeXDB" a 1 instance (s).
    L'instance "xe", état PRET, a 1 gestionnaire (s) pour ce service ... La commande s'est terminée avec succès 

  • utilisez tnsping pour tester la connexion
    Envoyez une requête ping à l'adresse IPv4, pas à l'hôte local ou au 127.0.0.1

C:\Windows\System32> tnsping 192.168.1.12
Utilitaire TNS Ping pour Windows 64 bits: Version 11.2.0.1.0 - Production le 05-SEP-2015 14:09:11
Copyright (c) 1997, 2010, Oracle. Tous les droits sont réservés.
Fichiers de paramètres utilisés:
D:\Oracle11gr2\product\11.2.0\dbhome_1\network\admin\sqlnet.ora 

Adaptateur EZCONNECT utilisé pour résoudre l'alias
Tentative de contact (DESCRIPTION = (CONNECT_DATA = (SERVICE_NAME =)) (ADRESSE = (PROTOCOL = TCP) (hôte = 192.168.1.12) (PORT = 1521)))
OK (0 msec) 

4
Tony

C'est assez facile sur ordinateur et vous n'avez rien à faire. Assurez-vous simplement que les deux systèmes sont sur le même réseau si ce n'est pas un accès Internet (pour cela, vous avez besoin d'une adresse IP statique). Ok maintenant sur l'ordinateur b allez dans le menu démarrer trouver la configuration dans le dossier Oracle cliquez sur Assistant de configuration réseau sous ce dossier lorsque la fenêtre contextuelle cliquez sur l'option de configuration réseau locale doit être la troisième option.

Maintenant, cliquez sur ajouter et cliquez sur suivant dans l'écran suivant il demandera le nom du service ici vous devez ajouter le nom de la base de données globale Oracle de l'ordinateur A (normalement j'utilise Oracle86 pour mon installation) maintenant cliquez sur suivant écran suivant choisissez le protocole normalement son TCP cliquez ensuite dans Nom de l'hôte entrez le nom de l'ordinateur A, vous pouvez le trouver dans les propriétés de mon ordinateur. Cliquez sur Suivant ne modifiez pas le port jusqu'à ce que vous ayez modifié la valeur dans Ordinateur A, cliquez sur Suivant et choisissez Tester la connexion maintenant. Vous pouvez vérifier si votre connexion fonctionne ou non. Si l'erreur est un nom d'utilisateur et un mot de passe incorrects, cliquez sur le bouton de connexion mot de passe. Si son énoncé ne parvient pas à atteindre l'ordinateur ou la cible non trouvée, vous devez ajouter une exception dans le pare-feu pour le port 1521 ou simplement désactiver le pare-feu sur l'ordinateur A.

4
Manjit Singh

Tout d’abord, assurez-vous que listener sur le serveur de base de données (ordinateur A) qui reçoit les demandes de connexion client est en cours d’exécution. Pour ce faire, exécutez la commande lsnrctl status.

Au cas où, si vous obtenez le message TNS:no listener (voir l’image ci-dessous), cela signifie que le service d’écoute n’est pas en cours d’exécution. Pour le démarrer, exécutez la commande lsnrctl start.

 enter image description here

Deuxièmement, pour les opérations de base de données et la connectivité des clients distants, les exécutables suivants doivent être ajoutés à la liste des exceptions du Pare-feu Windows: (voir image)

Oracle_home\bin\Oracle.exe - Exécutable de la base de données Oracle

Oracle_home\bin\tnslsnr.exe - Programme d'écoute Oracle

 enter image description here

Enfin, installez client instantané Oracle sur la machine cliente (ordinateur B) et exécutez:

sqlplus user/password@computerA:port/XE

3
Rajkaran Mishra
# . /u01/app/Oracle/product/11.2.0/xe/bin/Oracle_env.sh  

#  sqlplus /nolog  

SQL> connect sys/password as sysdba                                           

SQL>  EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);  

SQL> CONNECT sys/password@hostname:1521 as sysdba
0
lakshmikandan

Premier. Il est nécessaire d’ajouter une adresse IP statique pour l’ordinateur A AND B . Par exemple, dans mon cas, les ordinateurs A (172.20.14.13) et B (172.20.14.78). 

Seconde. Dans l'ordinateur A avec Net Manager, ajoutez une nouvelle adresse au programme d'écoute (172.20.14.13) ou ajoutez manuellement un nouvel enregistrement dans le fichier listener.ora. 

# listener.ora Network Configuration File: E:\app\user\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (Oracle_HOME = E:\app\user\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:E:\app\user\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(Host = localhost)(PORT = 1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(Host = 172.20.14.13)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = E:\app\user

Troisième. Avec Net Manager, créez un nom de service avec l'adresse IP de l'ordinateur B (172.20.14.78) ou ajoutez manuellement un nouvel enregistrement dans tnsnames.ora.

# tnsnames.ora Network Configuration File: E:\app\user\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.

ALINADB =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(Host = localhost)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = alinadb)
    )
  )

LISTENER_ALINADB =
  (ADDRESS = (PROTOCOL = TCP)(Host = localhost)(PORT = 1521))


LOCAL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(Host = 172.20.14.13)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = alinadb)
    )
  )

ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )

ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(Host = 172.20.14.78)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

Quatrième. Sur l’ordinateur B (172.20.14.78), installez win64_11gR2_client (par exemple, c’est pour moi dans Windows 10 Pro 64 bits)

Cinq. Créez un écouteur avec Net Configuration Assistant (localhost) ou ajoutez manuellement un enregistrement dans listener.ora 

# listener.ora Network Configuration File: F:\app\alinasoft\product\11.2.0\client_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(Host = myserver)(PORT = 1521))
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
        )
      )

    ADR_BASE_LISTENER = F:\app\alinasoft

Six. Avec Net Manager, créez une dénomination de service avec un ordinateur à adresse IP A (172.20.14.13) ou ajoutez manuellement un nouvel enregistrement dans tnsnames.ora.

SERVER-DB =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(Host = 172.20.14.13)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = alinadb)
    )
  )

Seven (Ordinateur A - (172.20.14.13)) pour les opérations de base de données et la connectivité à partir de clients distants, les fichiers exécutables suivants doivent être ajoutés à la liste des exceptions du Pare-feu Windows: (voir image) \Oracle.exe - Exécutable Oracle Database Oracle_home\bin\tnslsnr.exe - Oracle Listener

Huit Autoriser les connexions pour le port 1158 (Ordinateur A - (172.20.14.13)) pour Oracle Enterprise Manager ( https://172.20.14.13:1158/em/console/logon/logon )

Neuvième Autoriser les connexions pour le port 1521 (entrée et sortie) (Ordinateur A - (172.20.14.17)) 

Dixième Dans l'ordinateur B 172.20.14.78 Sqlplus/NOLOG Système CONNECT/Oracle @ // 172.20.14.13:1521/alinadb

Si utilise Toad, dans mon cas est  enter image description here

0
Vitalie Bancu