Oracle Express Edition – Impossible de se connecter à distance (plus d’autres)

Je ne parviens pas à établir une connexion à distance avec une installation Oracle XE (via TOAD / SQL Developer). Voici l’affaire.

J’ai mis en place un nouveau serveur (Windows 2003). L’objective était de créer une nouvelle image avec plusieurs applications préinstallées, Oracle XE en faisant partie. Got Oracle n’a posé aucun problème, connecté localement, à distance et avait access à l’interface Web – celle trouvée à l’ adresse http://127.0.0.1:8081/apex (Remarque: j’ai modifié manuellement le port de l’interface Web lorsque nous exécutons notre Environnement de développement Tomcat sur 8080).

Donc, tout se passe bien, je crée l’image, essuie la machine et y place l’image nouvellement créée. Tout fonctionne sauf Oracle. Après beaucoup de recherches, je mets à jour le fichier tnsnames.ora, ajoute les variables d’environnement ORACLE_HOME et ORACLE_SID, afin que je puisse me connecter localement. Je n’arrive toujours pas à me connecter à distance et j’ai complètement perdu l’access à l’interface Web. J’ai passé 2 jours sur Google et je ne sais plus rien. S’il vous plaît aidez!

ManuelF se rapporte à l’access via l’interface Web, mais n’est pas pertinent pour l’access local via l’interface Web.

Vous ne dites pas comment le nom d’hôte / l’adresse est géré, ni comment vous vous connectez localement. Si vous SQLPLUS / AS SYSDBA vous vous connectez directement. Si vous SQLPLUS user/pass@XE vous connectez via l’écouteur. Si le premier fonctionne et que le second ne fonctionne pas, recherchez un fichier appelé listener.ora et vérifiez le nom d’hôte. Si vous avez toujours des problèmes, essayez

 sqlplus user/[email protected]:1521/XE 

Si cela fonctionne, alors le problème est le tnsnames.ora.

Sur l’access à distance, si votre image est installée sur la «boîte a» et que vous souhaitez y accéder depuis la «boîte b», pouvez-vous envoyer une requête «boîte a» à partir de la «boîte b»? Ensuite, essayez box_b

 sqlplus user/pass@box_a:1521/XE 

Cela suppose que vous ayez un client Oracle, avec sql * plus, sur box_b. Si cela fonctionne, vous devrez regarder le fichier tnsnames.ora sur box_b. Si vous ne possédez pas de client Oracle sur box_b, Oracle Developer de SQL peut se connecter via le pilote JDBC thin (qui ne nécessite aucun client Oracle) et pour cela, vous devez spécifier le port hôte, listener (généralement 1521). ) et sid (XE pour édition express)

Avez-vous vérifié si vous avez le port 1521 ouvert sur le pare-feu?

Depuis l’Interface Web, vous devez vous connecter en tant qu’administrateur de firebase database [je pense], et il existe une option dans la section d’administration où vous devez activer «Activer les connexions depuis l’extérieur».

EDIT: Chemin complet: WebInterface -> Administration -> [menu déroulant] Gestion de l’access HTTP -> Disponible à partir du serveur local et des clients distants.

J’ai découvert que les connexions distantes échouaient sur ma boîte Ubuntu car j’avais mal configuré le fichier /etc/hosts . La machine avait une adresse IP statique configurée dans /etc/interfaces , mais l’entrée dans les hôtes avait une adresse IP incorrecte:

 127.0.0.1 localhost 127.0.1.1 fqdn.domain.com myhost sta.tic.ip.address fqdn.domain.com myhost 

La dernière ligne avait la mauvaise adresse IP.

En conséquence, l’exécution lnsrctl status n’a pas répertorié le service XE. Une fois que j’ai corrigé le fichier hosts, j’ai redémarré le service oracle-xe et les connexions à distance ont commencé à fonctionner.

J’ai un problème similaire avec Windows 8.1 fonctionnant avec un pare-feu. J’ai installé Oracle XE 11g et installé Oracle Application Express 5.0.2. Tout fonctionne comme prévu dans l’hôte / la machine locale. Seul le problème n’a pas pu se connecter à l’application Oracle Express depuis la machine distante du réseau local.

Après quelques recherches, le problème a été résolu en ajoutant l’exécutable TNSLSNR aux parameters Windows du pare-feu, comme indiqué ci-dessous.

Système et sécurité -> Pare-feu Windows -> Applications autorisées

assurez-vous que la connexion à distance est activée sur votre machine. sur la machine locale, connectez-vous à http://localhost:8080/apex/ tant qu’utilisateur SYSTEM, puis allez dans Administration et à partir du panneau de droite, sélectionnez Manage HTTP Access puis dans la fenêtre suivante choisissez

Disponible à partir du serveur local et des clients distants

donc appuyez sur appliquer les modifications.

Dans ma machine, je dois redémarrer pour obtenir un résultat.