Suite à des changements sur notre infrastructure pour des raisons de sécurité, et de performance un nouveau serveur Oracle (19C) à été déployé, les modalités de connexion à la base Oracle restent similaires :
Voir le chapitre “connexion à Oracle” ci-dessous pour plus de détails sur les modalités de connexion.
Le serveur Oracle héberge plusieurs instances : afin de cloisonner les TP, à la fois par rapport aux manipulations sensibles de certains d'entre eux, mais aussi dans le but de mieux répartir les ressources du système.
Par défaut (si on ne change pas d'instance), c'est l'instance IM2AG qui est configurée dans l'environnement.
Les instances accessible à tous sont:
Il y a aussi d'autres instances qui sont réservées à des TP spécifiques, les enseignants s'occupent de faire les demandes d'accès au service info pour les étudiants concernés. Voici une liste des instances existantes :
Il faut vous connecter en ssh sur le serveur im2ag-oracle.univ-grenoble-alpes.fr avec vos login et mot de passe universitaires :
ssh login@im2ag-oracle.univ-grenoble-alpes.fr
Ensuite, prenez connaissance de votre mot de passe pour les bases de données Oracle. Il se trouve dans un fichier texte à la racine de votre HOME : ~/oracle.txt. Votre HOME est monté sur le serveur Oracle, vous pouvez donc utiliser la commande suivante pour afficher votre mot de passe Oracle :
cat ~/oracle.txt
L'instance par defaut est precisée à la connexion, il s'agit de IM2AG, pour changer d'instance il faudra modifier l'environement avec la commande source. Exemple pour l'instance UFRIMA:
source /oracle/UFRIMA/.cshrc
Exemple pour l'instance M1MIAGE:
source /oracle/M1MIAGE/.cshrc
Pour visualiser sur quelle instance vous êtes actuellement positionné vous pouvez utiliser la commande:
echo $ORACLE_SID
Pour s'y connecter utilisez la commande :
sqlplus LOGIN
En remplaçant LOGIN par votre login universitaire.
Un prompt vous demandera de saisir le mot de passe qui se trouve dans le fichier ~/oracle.txt.
[LOGIN@im2ag-oracle ~]$ sqlplus LOGIN SQL*Plus: Release 19.0.0.0.0 - Production on Thu Sep 15 09:42:00 2022 Version 19.3.0.0.0 Copyright (c) 1982, 2019, Oracle. All rights reserved. Enter password:
Remarque : Il est possible d'utiliser gqlplus à la place de sqlplus il s'agit d'une alternative qui permet d'avoir un historique des commandes SQL une édition de ligne fonctionnelle et de l'autocompletion.
Avertissement : vous êtes l'unique détenteur de votre mot de passe Oracle.
Si vous le souhaitez, vous pouvez modifier le mot de passe qui se trouve dans le fichier oracle.txt. Prenez garde à choisir un mot de passe ayant au minimum 8 caractères et au maximum 16, et faites attention à ne pas laisser de caractères spéciaux dans le fichier (sauts de lignes, espaces, etc.). Une fois le fichier modifié, le mot de passe sera mis à jour dans les 12h suivantes sur toutes les instances. En attendant, l'ancien mot de passe est toujours valide, attention donc à le conserver le temps de la mise à jour.
Attention : si vous supprimez votre fichier oracle.txt, un nouveau mot de passe sera généré dans les 12h suivantes pour toutes les instances et le fichier sera recréé.
Pour les besoins des TP, certaines instances hébergent des schémas publics : tous les utilisateurs peuvent faire des requêtes d'interrogation sur ces derniers.
Lorsque l'on se trouve sur une instance, la requête SQL suivante permet de lister l'ensemble des schémas et tables publics qui nous sont accessibles :
SELECT owner, TABLE_NAME FROM all_tables WHERE owner NOT IN ('SYS', 'SYSTEM', 'CTXSYS', 'MDSYS') ORDER BY owner, TABLE_NAME;
La colonne owner correspond au nom des schémas, et la colonne table_name contient le nom des tables. Attention, cette requête liste également les schémas des éventuels utilisateurs qui ont défini un accès public sur leurs tables (et peut être certaines tables système dont il ne faut pas tenir compte).
La mise à disposition d'un schéma sur une ou des instances se fait à la demande des enseignants.
Chaque étudiant ou enseignant possède sa propre base (schéma) sur Oracle, sur lequel il a les droits de lecture et d'écriture.
Ce schéma est accessible de deux façons :
Il est possible de créer des tables, des vues, des triggers, etc.
Pour se connecter à Oracle depuis une application, vous aurez en général besoin des informations suivantes :
Nom d'hote : im2ag-oracle.univ-grenoble-alpes.fr
Port : 1521
Instance/Servicename : le nom de l'instance sur laquelle vous travaillez (voir la liste des instances en haut de cette page)
Pour se connecter depuis une application PHP hébergée sur Goedel (ou autre), vous avez un exemple de code ici : https://im2ag-wiki.univ-grenoble-alpes.fr/doku.php?id=environnements:php#procedure_pour_se_connecter_a_une_base_oracle
À noter que si vous essayez d'accéder au port 1521 en dehors des réseaux de l'UGA, vous devez utiliser le VPN
Fonctionnement et installation du VPN: https://nomadisme.grenet.fr/.
Faites attention à bien fermer votre session (ou si vous écrivez des scripts, à bien fermer la connexion à la base après avoir effectué vos requêtes). Dans le cas contraire, les connexions mortes ainsi créées attendent le timeout du serveur pour se fermer, ce qui entretemps peut vous empêcher d'en ouvrir de nouvelles.