Outils pour utilisateurs

Outils du site


environnements:oracle

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
environnements:oracle [2014/06/25 14:52]
root created
environnements:oracle [2023/11/16 10:54]
magim
Ligne 1: Ligne 1:
-TODO => présentation ​et accès oracle+====== Le serveur de base de données Oracle ====== 
 + 
 +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 :  
 + 
 +  * **<color #ed1c24>Le mot de passe Oracle n'est pas celui de votre compte universitaire.</​color>​** 
 + 
 + 
 +Voir le chapitre "​[[https://​im2ag-wiki.univ-grenoble-alpes.fr/​doku.php?​id=environnements:​oracle#​connexion_oracle|connexion à Oracle]]"​ ci-dessous pour plus de détails sur les modalités de connexion. 
 + 
 +===== Les différentes instances ​ ===== 
 + 
 +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: 
 + 
 +  * **IM2AG** : sur cette instance, les utilisateurs peuvent créer leur propre base de données, elle est donc particulièrement adaptée aux TP plus avancés où les étudiants doivent faire de telles manipulations. 
 + 
 +  * **UFRIMA** : cette instance est la plus utilisée, elle est dédiée aux TP qui font des requêtes d'​interrogation des schémas publics (camions, repas, etc.). Attention, sur cette instance, il est impossible pour les utilisateurs de créer leur propre base de données. 
 + 
 +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 : 
 + 
 +  * **UFRIMA** 
 +  * **IM2AG** 
 +  * **M1MIAGE** 
 +  * **TPTOMCAT** 
 + 
 + 
 +===== Connexion Oracle ===== 
 + 
 +Il faut vous connecter en ssh sur le serveur **im2ag-oracle.univ-grenoble-alpes.fr** avec vos login et mot de passe universitaires : 
 + 
 +<​code=bash>​ 
 +ssh login@im2ag-oracle.univ-grenoble-alpes.fr 
 +</​code>​ 
 + 
 +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 : 
 + 
 +<​code=bash>​ 
 +cat ~/​oracle.txt 
 +</​code>​ 
 + 
 +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: 
 +<​code=bash>​ 
 +source /​oracle/​UFRIMA/​.cshrc 
 +</​code>​ 
 +Exemple pour l'​instance M1MIAGE: 
 +<​code=bash>​ 
 +source /​oracle/​M1MIAGE/​.cshrc 
 +</​code>​ 
 + 
 +Pour visualiser sur quelle instance vous êtes actuellement positionné vous pouvez utiliser la commande: 
 +<​code=bash>​ 
 +echo $ORACLE_SID 
 +</​code>​ 
 + 
 +Pour s'y connecter utilisez la commande : 
 + 
 +<​code=bash>​ 
 +sqlplus LOGIN 
 +</​code>​ 
 + 
 +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. 
 + 
 +<​code=bash>​ 
 +[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: 
 +</​code>​ 
 + 
 + 
 +<color #​ff7b0a>​**Remarque : **</​color>​ 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. 
 + 
 +===== Changement de mot de passe Oracle ===== 
 + 
 +**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. 
 + 
 +<color #​ed1c24>​**Attention :​**</​color>​ 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éé. 
 + 
 +===== Les schémas publics ===== 
 + 
 +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 : 
 + 
 +<​code=sql>​ 
 +    SELECT owner, table_name FROM all_tables 
 +    WHERE owner NOT IN ('​SYS',​ '​SYSTEM',​ '​CTXSYS',​ '​MDSYS'​) 
 +    ORDER BY owner, table_name;​ 
 +</​code>​ 
 +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. 
 + 
 +===== Les schémas personnels ===== 
 + 
 +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 : 
 + 
 +  * Soit en préfixant le nom des tables par votrelogin 
 +  * Soit en changeant le schéma sur lequel on travaille avec la commande **ALTER SESSION SET CURRENT_SCHEMA = votrelogin**,​ les tables sont ensuite accessible directement par leur nom sans aucun préfixe 
 + 
 +Il est possible de créer des tables, des vues, des triggers, etc. 
 + 
 +===== Se connecter à Oracle depuis une application ===== 
 + 
 +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** \\ 
 +<color #​ff7b0a>​Fonctionnement et installation du VPN</​color>:​ [[ https://​nomadisme.grenet.fr/​ ]]. 
 + 
 + 
 +===== Mise en garde ===== 
 + 
 +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.
  
-TODO => erreurs communes 
environnements/oracle.txt · Dernière modification: 2023/11/16 10:54 par magim