Comme vous avez pu les découvrir sur notre blog, Oracle 12c a introduit une nouvelle fonctionnalité, voire même LA nouvelle fonctionnalité à savoir, la base de données multitenant.
Comme Thomas nous l’indique, cette architecture nous amène à parler d’une instance, à savoir la Container Database qui contient n Pluggable databases.
En terme d’administration, il risque d’être dur pour nous, DBA, de nous y retrouver.
L’idée est de ne se connecter qu’à notre CDB (Container Database) qui contient les metadata des PDB.
Pour se faire, il nous suffit de nous connecter comme nous l’avons toujours fait :
sqlplus / as sysdba
Attention, cette méthode n’est plus valable si vous avez activé la fonctionnalité de multithreaded model.
Une fois connecté à la CDB, nous avons donc la possibilité de requêter les vues du dictionnaire de données.
Afin de nous connecter aux différentes PDB, nous pouvons maintenant effectuer des modifications de nos sessions.
Ainsi, voici la commande à passer :
ALTER SESSION SET CONTAINER = myPDB1;
Il est tout à fait possible de changer à nouveau de PDB pour aller vers une seconde PDB ou de revenir sur la CDB grâce à la commande :
ALTER SESSION SET CONTAINER = CDB$ROOT;
Astuce :
Il est possible de modifier le prompt SQL pour vous permettre de vous y retrouver facilement.
Pour ce faire, vous pouvez modifier le fichier :
vi $ORACLE_HOME/sqlplus/admin/glogin.sql
Vous pouvez ainsi ajouter le code à lancer pour modifier votre prompt :
set verify off set term off col con_name new_value _container_name noprint select sys_context('userenv', 'con_name') as con_name from dual; set sqlprompt "_user'@'_connect_identifier':'_container_name'> '" set verify on set term on
Attention, le prompt n’est pas modifié sur ALTER SESSION.
Pour ce faire, il vous faudra lancer le script :
@?/rdbms/admin/glogin.sql
Bonne utilisation !