Oracle 19c : six améliorations (très) utiles pour les DBAs
Oracle publie désormais chaque année une nouvelle version de sa base. Voici quelques nouveautés que les administrateurs de base de données ont tout à gagner à envisager dans cette mise à jour 2019.
Comme pour les précédentes versions de son SGBD, comme la 18c, les nouveautés d'Oracle 19c seront publiées par étapes. Oracle a rendu sa nouvelle version disponible pour la première fois en janvier 2019 sur Live SQL, sa plateforme gratuite de développement SQL et de tutoriels.
À la mi-février, la 19c est également devenu disponible pour les versions sur site d'Exadata.
Oracle prévoit la 19c pour ses autres systèmes et pour ses services cloud avant la fin mars.
Les clients qui utilisent les bases Oracle sur des systèmes sur site « conventionnels » devront attendre un peu plus longtemps - la version 19c sera disponible sur une variété de plates-formes serveur au cours du deuxième trimestre.
Les administrateurs de bases de données (DBAs) qui veulent essayer Oracle 19c et qui n'ont pas de système Exadata peuvent néanmoins travailler avec la nouvelle base sur le site Live SQL. Comme vous pouvez le voir dans la capture d'écran ci-dessous, Live SQL exécute maintenant la version de production d'Oracle Database 19c Enterprise Edition. Pour utiliser cette plate-forme cloud, vous aurez besoin d'un compte Oracle (si vous n'en avez pas déjà un, l'ouverture est gratuite).
Alors qu'Oracle a déclaré que l'amélioration de la stabilité est sa priorité absolue pour la 19c, cette version propose également de nouvelles fonctionnalités très intéressantes. Oracle a mis sa documentation en ligne. Voici une liste de mes nouveautés préférées, sur ce que j'ai vu jusqu'à présent :
I - Comptes (seulement) propriétaires de schéma. Créer un compte utilisateur dans Oracle 19c sans spécifier de mot de passe est une excellente façon de créer un compte pour un propriétaire de schéma - qui contient et donne accès à des objets de la base (tables, vues, synonymes, etc.) - tout en se protégeant des accès non autorisés. Dans la 19c, la colonne ACCOUNT_STATUS de la vue DBA_USERS affichera une valeur NONE pour ces comptes qui sont seulement propriétaires de schémas.
II - Indexation automatique. Cette nouvelle fonctionnalité met à profit les capacités d'automatisation tant vantées par Oracle. Si une base Oracle 19c pense qu'une table bénéficierait d'un index, le système la créera automatiquement en la marquant au début comme invisible pour qu'elle ne puisse être utilisée.
Oracle 19c lancera alors les instructions SQL de votre application pour voir si l'index améliore l'exécution des requêtes ou pas. Si l'index s'avère utile, il sera rendu visible; s'il ne l'est pas, l'index deviendra inutilisable et sera supprimé. Vous pouvez contrôler cette fonctionnalité avec DBMS_AUTO_INDEX, un nouveau package PL/SQL inclus dans 19c.
III - Mise en quarantaine des instructions SQL problématiques. L'utilisation de l'outil Resource Manager est un excellent moyen de s'assurer que les instructions SQL ne s'accaparent pas les ressources et ne ralentissent pas les performances de la base pour les autres requêtes. Si une instruction demande plus de ressources système que le DBA ne le permet, Resource Manager y met fin.
Cependant, dans les versions précédentes d'Oracle Database, rien n'empêchait les utilisateurs d'exécuter à nouveau ces requêtes SQL problématiques. Dans la 19c, Resource Manager peut automatiquement mettre les instructions en quarantaine ; et si un utilisateur essaie de la publier une nouvelle fois, elle ne sera pas du tout prise en compte.
IV - Flashback automatique des bases de secours. Dans les versions précédentes, si les administrateurs souhaitaient utiliser les fonctions de restauration des sauvegardes rapides (flashback) pour ramener une base de données primaire dans un état antérieur, ils devaient reconstruire manuellement une base de données de secours associée (standby database) avant de pouvoir reprendre ses opérations normales.
Dans la 19c, un DBA peut mettre simplement la base de secours en mode MOUNT, puis réactiver la base de données primaire ; la base de secours sera alors recopiée, la maintenant ainsi synchronisée avec la base de données primaire.
V - Analyse intégrée des privilèges. Un DBA aime donner aux utilisateurs les stricts privilèges dont ils ont besoin (et pas plus) pour leur travail. La fonction d'analyse des privilèges signale les privilèges qui ont été attribués aux utilisateurs et qui ne sont pas utilisés ; les administrateurs peuvent utiliser ces informations pour créer une politique de sécurité plus stricte - sans supprimer les privilèges nécessaires.
Cette fonctionnalité a été initialement lancée en 2014 dans la 12c, mais elle nécessitait Oracle Database Vault. L'édition Enterprise de la 19c inclut désormais nativement cette analyse des privilèges.
VI - Lecture/écriture des bases Multitenant. Si vous utilisez l'option d'architecture Oracle Multitenant, vous pouvez cloner une base de données pluggable (PDB). Mais auparavant, si le clone était un snapshot qui utilisait des fichiers clairsemés sans beaucoup de données, le PDB source devait être configuré en lecture seule et devait le rester pour toute la vie du clone. Avec Oracle 19c, le PDB source peut désormais prendre en charge la lecture et l'écriture.
Ces 6 fonctions ne font évidemment qu'effleurer les nouveautés de la 19c. Avec la disponibilité de la nouvelle version du produit phare d'Oracle, il y a, une fois de plus, beaucoup à regarder et à apprendre pour tous les DBA Oracle.