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

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
environnements:oracle [2017/09/27 09:30]
magim [En cas d'accès interdits depuis l'extérieur]
environnements:oracle [2021/09/22 10:53]
magim [Connexion Oracle à partir de septembre 2021]
Ligne 1: Ligne 1:
-====== Le serveur de base de données Oracle ======+====== Le serveur de base de données Oracle ​- Modalités de connexion septembre 2021======
  
-Les TP Oracle sont centralisés ​sur le serveur ''​im2ag-oracle.e.ujf-grenoble.fr'​' , ce serveur est dédié ​à cet usage.+Suite à des changements ​sur notre système d'authentification pour des raisons de sécuritéles modalités de connexion ​à la base Oracle ont changées : 
  
-Ce serveur est accessible en ssh depuis tous les réseaux IM2AG.+  * **<color #​ed1c24>​Le ​serveur ​im2ag-oracle.univ-grenoble-alpes.fr n'est plus accessible en ssh.</​color>​**
  
 +
 +  * **<color #​ed1c24>​Le mot de passe Oracle n'est plus celui de votre compte universitaire.</​color>​**
 +
 +
 +Voir le chapitre "​[[https://​im2ag-wiki.univ-grenoble-alpes.fr/​doku.php?​id=environnements:​oracle#​connexion_oracle_a_partir_de_septembre_2021|connexion à Oracle]]"​ ci-dessous pour plus de détails sur les nouvelles modalités de connexion.
 ===== Les différentes instances ​ ===== ===== Les différentes instances ​ =====
  
 Le serveur Oracle héberge plusieurs instances : cela a pour but de cloisonner les TP, à la fois par rapport aux manipulations sensibles de certains d'​entre eux, mais cela a aussi pour but de mieux répartir les ressources du système. Le serveur Oracle héberge plusieurs instances : cela a pour but de cloisonner les TP, à la fois par rapport aux manipulations sensibles de certains d'​entre eux, mais cela a aussi pour but de mieux répartir les ressources du système.
   ​   ​
-Par défaut (si on ne change pas d'​instance),​ c'est l'​instance ​''​UFRIMA'' ​qui est configurée dans l'​environnement.+Par défaut (si on ne change pas d'​instance),​ c'est l'​instance ​**UFRIMA** qui est configurée dans l'​environnement.
  
 Les instances accessible à tous sont: Les instances accessible à tous sont:
  
-  * 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ée.+  ​* **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.
  
  
-  * IM2AG : sur cette instance, les utilisateurs peuvent créer leur propre base de donnée, elle est donc particulièrement adaptée aux TP plus avancés où les étudiants doivent faire de telles manipulations.+  ​* **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.
  
-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 ​(liste non exhaustive) ​:+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 ​:
  
-  * M1MIAGE +  * **UFRIMA*
-  ​TPTOMCAT +  * **IM2AG** 
-  ​INF245 +  * **M1MIAGE** 
-  ​M2CCI +  * **TPTOMCAT**
-  * TP_ADMIN_ORACLE_M2MIAGE +
-  * TP_ADMIN_ORACLE_M2PGI +
-  * HIB+
  
-Si l'on souhaite changer d'​instance,​ il faut utiliser la commande suivante : 
  
-   ​source /​oracle/​M1MIAGE/​.cshrc+===== Connexion Oracle à partir de septembre 2021 ===== 
 +Il faut premièrement vous connecter en ssh sur le serveur **im2ag-goedel.univ-grenoble-alpes.fr** avec vos login et mot de passe universitaires :
  
-Si vous souhaitez vérifier sur quelle instance vous travaillez avant de lancer sqlplus, vous pouvez utiliser la commande suivante :+<​code=bash>​ 
 +   ssh login@im2ag-goedel.univ-grenoble-alpes.fr 
 +</​code>​
  
-   env+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 Goedel, donc vous pouvez simplement utiliser la commande suivante pour afficher votre mot de passe Oracle :
  
-Le contenu de la variable "​ORACLE_SID"​ vous indique sur quelle instance vous allez travailler.+<​code=bash>​ 
 +   cat ~/oracle.txt 
 +</​code>​
  
 +Puis utilisez la commande :
 +
 +<​code=bash>​
 +   ​sqlplus login@INSTANCE
 +
 +</​code>​
 +En remplaçant **login** par votre login universitaire et **INSTANCE** par l'une des instances présentées plus haut.
 +
 +Un prompt vous demandera de saisir le mot de passe qui se trouve dans le fichier ~/​oracle.txt.
 +
 +
 +<​code=bash>​
 +    im2ag-goedel:​~
 +    [16:​22:​11]LOGIN$ sqlplus LOGIN@M1MIAGE
 +    SQL*Plus: Release 10.2.0.1.0 - Production on Mon Sep 20 16:22:19 2021
 +    Copyright (c) 1982, 2005, Oracle. ​ All rights reserved.
 +    Enter password:
 +</​code>​
 +
 +<color #​ed1c24>​**Attention : **</​color>​lorsque vous tapez la commande sqlplus présentée plus haut, si vous ne spécifiez aucune instance, ou une instance qui n'​existe pas, il vous sera quand même demandé de saisir un mot de passe, mais vous devriez ensuite obtenir une erreur **ORA-12154** et/ou **ORA-12545**.
 +===== 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 ===== ===== Les schémas publics =====
  
Ligne 44: Ligne 77:
 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 : 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     SELECT owner, table_name FROM all_tables
     WHERE owner NOT IN ('​SYS',​ '​SYSTEM',​ '​CTXSYS',​ '​MDSYS'​)     WHERE owner NOT IN ('​SYS',​ '​SYSTEM',​ '​CTXSYS',​ '​MDSYS'​)
     ORDER BY owner, table_name;     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 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. La mise à disposition d'un schéma sur une ou des instances se fait à la demande des enseignants.
-===== En cas d'​accès interdit depuis l'​extérieur ===== 
  
-Si vous essayez de vous connecter de chez vous, ou depuis le VPN, et +===== Les schémas personnels ===== 
-que vos tentatives ​de connexion ​sont bloquées, vous pouvez utiliser + 
-un tunnel SSH pour contourner les filtrages réseau.+Chaque étudiant ​ou enseignant possède sa propre base (schéma) sur Oraclesur 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.e.ujf-grenoble.fr
  
-Le principe est le suivant : plutôt que d'​accèder directement au port Oracle sur le serveur, on peut feinter en passant par le port SSH qui, lui, est toujours ouvert, et en se connectant au port Oracle "de l'​intérieur"​. Pour ce faire, entrez la commande suivante ​+**Port ​:** 1521
  
-  ssh -NL 21521:localhost:​1521 im2ag-oracle.e.ujf-grenoble.fr+**Instance/​Servicename ​:** le nom de l'​instance sur laquelle vous travailler (voir la liste des instances en haut de cette page)
  
-Cette commande ouvre le port 21521 sur votre machine et le lie au port +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
-1521 (le fameux port Oracle) de "​localhost de im2ag-oracle.e", c'est à +
-dire au port 1521 comme vu de im2ag-oracle lui-même.+
  
-Ensuite, tous vos accès à la base Oracle peuvent se faire sur +A noter que si vous essayez d'accéder au port 1521 en dehors des réseaux de l'UGAvous devez utiliser le VPN.
-''​localhost:​21521'', ​qui sera automatiquement forwardé à ''​im2ag-oracle.e:​1521''​+
  
 ===== Mise en garde ===== ===== Mise en garde =====
environnements/oracle.txt · Dernière modification: 2023/11/16 10:54 par magim