Catégories
Intermédiaire SGBD

Oracle : activer l’historique de commandes SQL Plus

L’outil SQL*Plus est pratique et léger pour piloter un SGBD Oracle. Cet utilitaire en ligne de commande développé par Oracle permet aux utilisateurs d’exécuter des commandes SQL et PL/SQL sur Oracle Database, entre autres.

Différents guides pour Oracle se trouvent sur le site, certains spécifiques à SQL Plus. Ce tutoriel explique comment activer l’historique des commandes exécutées dans SQL*Plus, à la manière d’un history sur Linux. Si la commande n’est pas encore active, la procédure pour la mettre en action est vraiment facile à réaliser.

 

Activer « history » sur SQLPlus pour Oracle

1. Ouvrir une session SQL*Plus, se connecter avec un compte ayant des droits supérieurs sur la base de données.

2. Vérifier si la commande history est active :

3. Activer l’historique de commande SQLPlus :

set history on

4. Vérifier que l’historique est désormais bien actif : history

Catégories
SGBD

Date de fin de support Oracle Database

Il est toujours important d’utiliser un serveur de bases de données qui bénéficie de mises à jour de la part de l’éditeur, pour optimiser les performances, ajouter des fonctions et à minima apporter des correctifs de sécurité. Comme tout logiciel et plus particulièrement sur des serveurs informatiques, un SGBD comme Oracle se doit d’être le plus stable possible

Nos tutoriels Oracle Database sont nombreux mais celui-ci est un guide pour connaitre la date de fin de support (end of life) des versions Oracle Database. Sinon, voici des procédures pour télécharger Oracle 19c ou Oracle XE gratuit, ou simplement voir la version Oracle actuellement installée.

 

Oracle Database : dates de fin de support

Oracle 11g – 11.2.0.4

Support général terminé depuis le 31 janvier 2015

Support étendu payant (ES, ULA et EBS) échu au 31 décembre 2020

Oracle 12c – 12.1.0.1

Support classique terminé depuis le 31 août 2016

Support étendu non disponible sur 12.1.0.1

Oracle 12c – 12.1.0.2

Support standard (Premier Support, PS) terminé au 31 juillet 2018

Les abonnements ES, EBS et ULA sont valables jusqu’au 31 juillet 2022 pour cette release 12c R1

Oracle 12c – 12.2.0.1

Patchs correctifs distribués jusqu’au 20 novembre 2020

Oracle 12c R2 n’est pas éligible au Extended Support (ES)

Oracle 18c

Correctifs proposés jusqu’au 08 juin 2021

La 18c n’est pas éligible au ES, Oracle Extended Support

Oracle 19c

Support standard (Premier Support, PS) actif jusqu’au 31 mars 2023

L’option Extended Support prolonge jusqu’au 31 mars 2026

 

On le voit, toutes les versions de Oracle Database ne sont pas maintenues de la même manière par l’éditeur américain. Certaines versions ne peuvent bénéficier de support étendu mais quand c’est le cas, l’entreprise peut conserver son SGBD pendant plusieurs années supplémentaires avant de devoir migrer en version supérieure.

Oracle 12c est encore majoritairement utilisé et malgré les dates de fin de support, certaines entreprises n’ont pas encore envisagé la migration vers 19c. Le coût d’une telle opération est très important et le tarif des licences Oracle n’aide pas à faire évoluer son infrastructure de base de données.

Catégories
Expert SGBD

Oracle : changer le character set

Défini lors de l’installation du SGBD, le character set Oracle peut être modifié par la suite. Le charset est le jeu de caractères qui précise le codage utilisé pour rendre des informations lisibles. Une sorte d’alphabet pour que les logiciels sachent quel codage est utilisé par l’expéditeur du message (ASCII, ISO, UTF…).

Ce tutoriel explique comment voir le character set actuellement utilisé par un serveur Oracle et la méthode pour modifier ce charset. Cela concerne Oracle Database 12c et suivants (18c, 19c, 20c).

 

Voir le jeu de caractères utilisé dans Oracle

1. Ouvrir un SQL Developer ou un autre outil pour interroger un serveur Oracle.

2. Copier coller la requête suivante :

select * from v_$nls_parameters;

3. Dans les résultats, est indiqué le « NLS_CHARACTERSET » qui correspond au charset :

 

Changer le CHARACTERSET d’une base Oracle

Ce n’est pas aussi simple que ça. Si avec Oracle jusqu’à la version 9, il suffisait de faire un ALTER DATABASE CHARACTER SET AL32UTF8; ou ALTER DATABASE CHARACTER SET WE8MSWIN1252; les choses sont un peu plus compliquées depuis Oracle 10g, 11g, 12c, 18c, 19c, 20c.

On peut aussi regarder avec les outils CSSCAN et CSALTER.

Le character set forge la manière dont sont stockées les données, au niveau block. AL32UTF8 accepte tous les caractères de toutes les langues du monde, c’est le plus utilisé.

La procédure la plus propre pour changer de charset sur une base est la suivante :

  1. Export de la base
  2. Création d’une nouvelle base avec le bon character set
  3. Import de la base sauvegardée
  4. Vérifier avec select * from v_$nls_parameters;

Catégories
Expert SGBD

Oracle : créer un utilisateur sysdba

Sur Oracle 11g, 12c, 18c, 19c, 20c, la procédure est la même pour créer un nouveau compte utilisateur qui aura les droits maximum de sysdba. S’il existe déjà plusieurs comptes système qui possèdent ces privilèges (sys, system), c’est une bonne idée d’avoir un compte administrateur BDD sous un autre nom que ces comptes par défaut, qui sont logiquement une cible privilégiée par les hackers.

Si l’interface graphique Enterprise Manager permet de faire cette création d’un nouveau user admin Oracle, l’opération ne prendra que quelques secondes à réaliser en SQL Plus. C’est aussi beaucoup plus simple à automatiser et cela fonctionne sur toutes les versions du SGBD Oracle.

Bien évidemment, pour mener à bien cette procédure, il faut disposer d’un compte Oracle ayant les privilèges de sysdba pour en créer un nouveau avec les droits maximum du serveur.

 

Create user as sysdba « admin » pour Oracle

1. Ouvrir l’outil SQL Developer, un Terminal ou un Invite de commandes Windows.

2. Démarrer une session SQL*Plus en tant que sysdba :

sqlplus / as sysdba

3. S’identifier avec un compte existant, ayant les privilèges sysdba.

4. Demander la création d’un nouveau compte utilisateur :

create user newuser identified by password ;

On le devine aisément, « newuser » est le nom du compte à créer et « password » le mot de passe qui lui sera associé.

5. Ce compte n’est pour l’instant qu’un simple user. L’augmentation des privilèges sysdba se fait avec cette commande :

grant sysdba to newuser ;

6. Le nouveau compte bénéficie ainsi des mêmes droits que sys ou system sur le SGBD Oracle.

Catégories
Expert SGBD

Script pour démarrer et arrêter les services Oracle Database

Ce ne sera pas très utile sur un serveur de production mais pratique sur un poste de développeur ou sur un ordinateur de test, surtout lorsque différentes versions de Oracle ou si plusieurs SGBD sont installés sur la machine. Il est possible de cumuler les serveurs de bases de données Oracle Database, Microsoft SQL Server, PostgreSQL, MySQL… sur le même poste mais celui-ci risque de s’écrouler niveau mémoire vive et accès disque. Pour éviter cela, le plus simple est de couper les services du SGBD qui n’est pas utilisé.

Nous allons faire un script pour démarrer les services Oracle sur Windows : Oracle Server, TNS Listener, MTS Recovery Service, VSS Writer. Le service Job Scheduler est optionnel et est en statut « désactivé » après une installation classique de Oracle Database.

Ce tutoriel a été réalisé sur Windows Server 2019 avec Oracle Database 12c. La procédure est identique sur Windows Server 2016 ou WS 2012 / R2. Pour les autres éditions du SGBD Oracle, il faudra peut-être adapter le nom des services.

 

Script Windows pour start les services Oracle serveur

1. Ouvrir les Services locaux de Windows par les Outils d’administration ou avec la commande services.msc.

2. Localiser les services Oracle. Ceux-ci commencent par « Oracle* » donc pas de risque d’en oublier un. Regarder ceux qui sont en démarrage automatique et démarrés.

3. Le nom des services à exécuter est affiché lorsque l’on ouvre (double clic) un service :

4. Créer un nouveau fichier texte, avec Bloc-notes / notepad par exemple.

5. Taper et adapter les commandes suivantes au sein du même document :

net start OracleOraDB12Home1MTSRecoveryService
net start OracleOraDB12Home1TNSListener
net start OracleServiceORCL
net start OracleVssWriterORCL
pause

Le nom des services varie selon le nom de l’instance SID indiqué lors de la configuration du SGBD. On rajoute une ligne « pause » pour voir le résultat des commandes à l’écran.

6. Enregistrer ce fichier texte sous le nom « start_oracle » par exemple.

7. Changer l’extension du fichier .txt pour « .bat » afin de le transformer en script exécutable d’un double clic ou par une tâche planifiée.

8. Tester en exécutant le script bat et voir les services se démarrer automatiquement.

 

Script .bat pour stop les services d’un serveur Oracle

1. Reproduire les mêmes premières étapes.

2. Taper et adapter les commandes suivantes :

net stop OracleOraDB12Home1MTSRecoveryService
net stop OracleOraDB12Home1TNSListener
net stop OracleServiceORCL
net stop OracleVssWriterORCL
pause

3. Enregistrer le fichier « stop_oracle » par exemple.

4. Changer l’extension .txt pour « .bat » pour en faire un script.

5. Tester l’arrêt automatique des services Oracle Database en exécutant ce fichier bat, par simple double clic ou depuis un Invite de commandes cmd.

Catégories
Expert SGBD

Oracle : créer des utilisateurs sans C##

Depuis Oracle 12c en 2015, dans sa configuration par défaut, le SGBD impose de créer des utilisateurs avec le préfixe suivant : C##. Cela est assez contraignant pour l’utilisation du serveur de bases de données, surtout en mode test ou développement, quand on doit manipuler de nombreux comptes. Le create user peut se faire sans ce préfixe C## et en voici la procédure.

Introduit sur Oracle 12c, le préfixe C## est aussi par défaut sur Oracle 18c, Oracle 19c, Oracle 20c (connaitre la version Oracle). Ce tutoriel explique comment supprimer le préfixe C## pour créer un utilisateur Oracle. La désactivation se fait en une seule requête SQL.

 

Désactiver le préfixe C## pour créer un utilisateur Oracle

1. Ouvrir une console SQLPlus (ou un terminal / invite de commandes et ouvrir sqlplus).

2. Se connecter avec un compte sysdba.

Par exemple, depuis un cmd sur Windows, taper : sqlplus / as sysdba

3. Ecrire la requête suivante et l’exécuter :

alter session set "_ORACLE_SCRIPT"=true;

4. La réponse doit être « Session modifiée » :

5. Les prochaines créations d’utilisateurs Oracle (create user) n’imposeront plus de préfixer par C##.

 

Explication Oracle sur ce C##

Catégories
Expert SGBD

Installer Oracle 19c

Oracle Database est un système de gestion de base de données relationnel (SGBDR) dont la nomenclature a changé depuis 2018. Chaque année, l’éditeur va sortir une version majeure et c’est ainsi que la 19c est la version courante en 2019, et un peu après. L’installation d’Oracle n’est pas aussi facile que SQL Server mais ce tutoriel explique, étape par étape, comment installer un serveur Oracle Database 19c sur Windows Server.

Les prérequis logiciels sont les suivants : système d’exploitation Windows Server 2012 R2, 2016 ou 2019 (toutes éditions), Windows 8.1 et 10 Pro en x64 et éditions Pro, Entreprise ou Education. Noter que Windows Server Core n’est pas pris en charge. La virtualisation Oracle VM Server et Microsoft Hyper-V sont certifiées Oracle, mais pas VMware. Ce qui n’empêche pas le fonctionnement d’un serveur Oracle Database sur cet hyperviseur principal. Pour se connecter à un Oracle 19c, il faut au moins avoir un Oracle Database Client version 11.2.0.4 (ou supérieur).

 

Installer Oracle Database 19c

1. Extraire le contenu de Oracle19c_Windows.zip et ouvrir le setup.exe (clic droit, Exécuter en tant qu’Administrateur si l’utilisateur connecté n’est pas dans le groupe Admin local).

2. L’option de configuration à choisir est « Créer et configuration une base de données mono-instance » (pour un RAC Oracle, il faut cocher la seconde option) :

3. Sélectionner la « Classe serveur »

4. Type « Installation avancée » pour configurer et vérifier certaines options.

5. L’édition de Oracle Database 19c à installer dépend de la licence : Enterprise Edition ou Standard Edition 2.

6. Le Nom d’utilisateur de répertoire sert à définir les droits du compte qui va démarrer les services Windows liés à Oracle. On peut choisir de créer un Compte virtuel dédié, employer un compte utilisateur Windows déjà existant, créer un nouveau compte ou utiliser un compte intégré Windows. Choisir un « Utilisateur Windows existant » et renseigner les informations d’un compte du domaine, ou demander à utiliser un Compte virtuel (NT SERVICE).

7. Définir le chemin d’installation des fichiers Oracle pour les binaires, la configuration, les tablespaces, les logs, etc.

8. Le type de configuration dépend de l’usage qui sera fait du SGBD Oracle. Le plus courant est pour l’ « Utilisation générale / Traitement de transactions » tandis que le Data Warehouse est lié à un usage spécifique (Business intelligence, par exemple).

9. Indiquer les informations de l’identificateur pour accéder à la BDD : Nom global de la base de données et SID Oracle.

10. Les options de configuration permettent de gérer la mémoire allouée à Oracle (SGA et PGA). Il faut tout d’abord déduire la RAM utilisée par le système d’exploitation (soustraire 1Go pour un ancien Windows Server et 2Go pour WS 2016 et 2019). Ensuite, définir la quantité de mémoire vive que pourra utiliser Oracle. C’est particulièrement important pour laisser de bonnes performances au SGBD mais sans impacter les autres logiciels et traitements qui peuvent tourner sur ce serveur. Laisser l’option « Activer la gestion automatique de la mémoire » cochée.

Dans l’onglet suivant, on peut choisir le jeu de caractères (AL32UTF8, WE8MSWIN1252, ou autre).

11. On avait précédemment configuré le répertoire d’installation du logiciel Oracle, il est possible maintenant de spécifier un autre endroit (autre disque) pour stocker les fichiers de base de données (tablespace). Par défaut ce dossier est oraclehome\oradata

12. L’assistant d’installation de Oracle 19c propose de gérer ce nouveau serveur avec un outil de gestion de Oracle 12c, Oracle Enterprise Manager 12c Cloud Control. Si tel est le cas, renseigner les informations de connexion à OMS, sinon laisser décoché.

13. Activer ou non la récupération de la BDD en définissant une zone de récupération, soit par un dossier précis, soit par Oracle Automatic Storage Management.

14. Voici l’étape des mots de passe d’accès pour les comptes système par défaut : SYS, SYSTEM et PDBADMIN. On peut simplifier les choses en définissant un mot de passe unique pour ces comptes système.

15. Vérification des prérequis et de la configuration modifiée. A cet écran, on peut encore changer quelques paramètres. Cliquer sur « Installer » pour démarrer la mise en place du serveur Oracle 19c. L’étape de configuration à 42% peut prendre un moment, ne pas s’inquiéter et patienter.

16. Quand l’opération configuration de Base de données Oracle a réussi, l’URL de Oracle Enterprise Manager Database Express est indiquée : https://nomserveur.domaine.local:5500/em

On peut évidemment utiliser SQL Developer ou un autre outil de gestion pour accéder au serveur Oracle, à ses utilisateurs, aux bases, etc.

Catégories
Expert SGBD

Vérifier la version d’un serveur Oracle

Connecté à un serveur Oracle par SQL Developer ou un autre outil de gestion de base de données, vous avez besoin de connaitre la version exacte du SGBD ? Cette simple commande renvoie un résultat clair pour toutes les versions de Oracle Database, le serveur de bases de données à consulter. Cette requête est identique, que le serveur Oracle soit installé sur un OS Windows ou Linux / UNIX.

 

La commande

select * from v$version ;

 

Résultat sur Oracle 19c :

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Résultat sur Oracle 12c R2 :

Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
PL/SQL Release 12.2.0.1.0 - Production
"CORE 12.2.0.1.0 Production"
TNS for 64-bit Windows: Version 12.2.0.1.0 - Production
NLSRTL Version 12.2.0.1.0 - Production

Résultat sur Oracle 12c R1 :

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
PL/SQL Release 12.1.0.2.0 - Production
"CORE 12.1.0.2.0 Production"
TNS for 64-bit Windows: Version 12.1.0.2.0 - Production
NLSRTL Version 12.1.0.2.0 - Production

Résultat sur Oracle 11g R2 :

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
"CORE 11.2.0.1.0 Production"
TNS for 64-bit Windows: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production

 

Pour information, et s’il existe bien une version Oracle 18c sortie en 2018, il n’y a jamais eu de Oracle 13, 14, 15, 16 ni 17. L’éditeur américain est passé de la version 12c à 18c pour nommer ses nouvelles versions selon l’année de sortie. A savoir que Oracle Database 12c est sorti en juillet 2013 et la 12.2 (12c R2) en septembre 2016.

Catégories
SGBD Téléchargement

Télécharger Oracle Database 12c

Les applications métier importantes sont soit liées à une base de données Microsoft SQL Server, soit Oracle Database. Ce dernier est très présent dans les entreprises, malgré un coût d’utilisation élevé. Les DBA (administrateurs de bases de données) apprécient de travailler avec un SGBDR puissant et performant. Sortie en 2013, la version Oracle Database 12c est depuis mise à jour en 12c R2, numérotée 12.2.0.1.0. Ce guide montre où télécharger le setup d’installation de Oracle Database 12c, ici en version R2 (la dernière disponible). Une procédure légale, mise à disposition sur le site officiel Oracle, qui nécessite uniquement un compte gratuit. L’utilisation est cependant soumise à licence.

Oracle Database 12c R2 n’est plus officiellement supporté par l’éditeur américain mais de nombreuses entreprises l’utilisent encore, sans vouloir migrer sur Oracle 18c ou Oracle 19c. De plus, les éditeurs d’applications métier ne sont pas forcément compatibles avec les versions les plus récentes du SGBDR.

 

Télécharger l’installation serveur Oracle Database 12c

1. Aller sur le site Oracle Database Software Downloads.

2. Accepter le contrat de licence : cocher « Accept License Agreement » :

3. Descendre jusqu’au groupe « Oracle Database 12c Release 2 » pour télécharger la dernière version de Oracle 12c selon le système d’exploitation du serveur :

  • Microsoft Windows x64 (64bits)
  • Linux x86-64
  • Oracle Solaris (SPARC systems, 64-bit)
  • Oracle Solaris (x86 systems, 64-bit)
  • HP-UX Itanium
  • AIX (PPC64)
  • Linux on System z (64 bit)

Oracle Database 12c R2 n’est plus supporté mais le besoin est encore réel dans les entreprises. Oracle 12.2 est compatible avec Microsoft Windows (Server 2012, 2012 R2 et 2016, Windows 7, 8, 8.1 et 10). Sous Linux, il y a bien sûr la compatibilité avec Oracle Linux (OL6 et OL7) ainsi qu’avec Red Hat (RHEL) et SUSE Linux Enterprise Server.

4. Le téléchargement de Oracle 12c version 12.2.0.1.0 est gratuit mais nécessite la connexion avec un compte Oracle. S’identifier au compte Oracle pour télécharger le fichier adéquat : winx64_12201_database.zip ou linuxx64_12201_database.zip. Standard Edition 2 et Enterprise Edition sont livrés dans ces archives.

Catégories
SGBD Téléchargement

Télécharger Oracle Database 19c

Besoin de passer sur la dernière version du SGBDR propriétaire, pour continuer à bénéficier du support éditeur, pour vérifier si une application métier fonctionne correctement ou pour profiter d’une nouvelle fonctionnalité ? Ce guide montre comment télécharger Oracle Database version 19c de manière légale. Avec un compte Oracle, le téléchargement est gratuit depuis le site officiel. Pour l’installer, pas besoin de numéro de série mais il faudra s’acquitter des coûteuses licences Oracle afin de l’utiliser. Cela peut aussi servir aux développeurs qui veulent s’assurer que leur logiciel est bien compatible avec Oracle Database 19c.

Remarque : un serveur et des bases Oracle se gèrent très bien avec Oracle SQL Developer, également embarqué dans l’installation de Oracle Database.

 

Télécharger l’installation serveur Oracle Database 19c

1. Aller sur le site Oracle Database Software Downloads.

2. Accepter le contrat de licence : cocher « Accept License Agreement » :

3. Choisir la version souhaitée sous le titre « Oracle Database 19c » selon le système d’exploitation. Cliquer sur le lien « ZIP » ou « RPM » en face pour télécharger Oracle Database pour le bon OS :

  • Microsoft Windows x64 (64bits)
  • Linux x86-64
  • Oracle Solaris (SPARC systems, 64-bit)
  • IBM AIX
  • HP-UX ia64
  • Linux on System z (64 bit)

ou :

La présentation varie selon l’édition en cours. Sur la capture d’écran ci-dessus est indiquée la version 19.3, qui était d’abord réservée aux systèmes Oracle Solaris et Linux, avant d’être étendue aux Windows et autres systèmes d’exploitation. Il faudra donc disposer d’un OS en 64 bits pour installer un serveur Oracle. La distribution Oracle Linux (ex Oracle Enterprise Linux, sur base de Red Hat) est bien évidemment supportée (OL7 et OL8).

Remarque : il n’y a pas que les « Windows Server » qui sont supportés. Outre WS 2012 R2, 2016 et 2019, les OS Windows 8.1 et 10 sont également pris en charge par Oracle Database 19c, dans les éditions Pro, Enterprise et Education (pas Windows 10 Famille).

4. Le téléchargement est gratuit mais nécessite la connexion avec un compte Oracle. S’identifier au compte Oracle pour télécharger le fichier d’installation : WINDOWS.X64_193000_db_home.zip, LINUX.X64_193000_db_home.zip, oracle-database-ee-19c-1.0-1.x86_64.rpm selon la version souhaitée.

Catégories
SGBD Téléchargement

Télécharger Oracle Database 18c

Les logiciels qui se basent sur une architecture trois tiers (ou multi-tiers) ont besoin d’un serveur de base de données pour fonctionner. Les éditeurs choisissent la compatibilité avec un ou plusieurs SGBD, que sont par exemple Microsoft SQL Server, PostgreSQL, MySQL, IBM DB2, MariaDB… Oracle Database est l’un des SGBDR les plus populaires, malgré les tarifs élevés appliqués par l’entreprise américaine. Se dire « compatible Oracle » signifie évidemment que de nombreux tests ont été effectués avec ce serveur et les différentes versions supportées.

Oracle a changé la manière de référencer les versions de son serveur Database. Si les 10g, 11g et 12c sont restées longtemps à jour, l’éditeur a choisi de modifier la convention de nommage en changeant chaque année le numéro de version. Ainsi, en 2018, est sortie la version 18c. Ce guide explique comment télécharger Oracle Database version 18c de manière légale sur le site officiel Oracle.

Remarque : une BDD Oracle se gère généralement avec l’outil Oracle SQL Developer.

 

Télécharger l’installation serveur Oracle Database 18c

1. Aller sur le site Oracle Database Software Downloads.

2. Accepter le contrat de licence en cochant « Accept License Agreement » :

3. Dans le groupe « Oracle Database 18c » , choisir la version et l’édition souhaitée selon le système d’exploitation. Cliquer sur le lien « ZIP » ou « RPM » relatif pour télécharger l’édition désirée :

  • IBM AIX
  • HP-UX ia64
  • Linux on System z (64bit)
  • Microsoft Windows x64 (64-bit)
  • Linux x86-64
  • Oracle Solaris (SPARC systems, 64-bit)
  • Oracle Solaris (x86 systems, 64-bit)

On remarque que la version 18c d’Oracle impose d’avoir un système d’exploitation 64 bits. Si l’OS du serveur est Windows ou une distribution Linux standard (Debian, Red Hat, Ubuntu…), il faudra se contenter de la version 18.3 car Oracle n’a pas rendu compatible la plus récente 18.4 avec ces systèmes d’exploitation.

4. Le téléchargement est gratuit mais est soumis à un compte Oracle. S’identifier au compte Oracle pour télécharger le fichier d’installation (une archive zip dans la plupart des cas). Pour Windows Server, le fichier s’appelle WINDOWS.X64_180000_db_home.zip. Pour Linux (RPM), il s’agit de LINUX.X64_180000_db_home.zip ou oracle-database-ee-18c-1.0-1.x86_64.rpm.

Catégories
SGBD Téléchargement

Télécharger (gratuit) Oracle SQL Developer

L’éditeur Oracle met à disposition un outil gratuit pour interroger des bases de données hébergées sur son SGBDR en langage SQL et développer des applications en PL/SQL. Il s’agit du logiciel SQL Developer, programmé en Java et dont la première version remonte à l’année 2006. Cet environnement de développement intégré est multi-plateforme, ce qui signifie que le logiciel fonctionnera sur ordinateurs Windows, macOS et Linux). Il n’est pas nécessaire d’installer SQL Developper sur le serveur de BDD, il est même recommandé de le faire sur un poste client (DBA, développeur, administrateur système…).

Ce tutoriel explique où télécharger le logiciel gratuit Oracle SQL Developer pour taper dans des BDD Oracle Database, mais pas que. Il est aussi possible d’utiliser Oracle SQL Developer avec des serveurs PostgreSQL, Microsoft SQL Server, Microsoft Access, MySQL, IBM DB2, Sybase Adaptive Server. Les fonctions seront plus limitées qu’avec les outils officiels de chaque SGBD mais c’est ici pour centraliser l’accès à des serveurs hétérogènes depuis la même application.

 

Téléchargement gratuit de Oracle SQL Developer

Depuis sa sortie en 2006, le logiciel propriétaire Oracle SQL Developer a toujours été gratuit.

1. Ouvrir un navigateur internet pour aller sur cette page du site Oracle.

Le site de téléchargement a été mis à jour durant l’été 2019 pour ressembler à ceci :

Seule la dernière version est disponible au téléchargement ici. La version 19.x correspond à l’année 2019. On avait donc la v18 pour 2018, v17 pour 2017. SQL Developer 20 est l’édition de l’année 2020, SQLDev 21 pour 2021, etc.

2. Choisir l’une des plateformes souhaitées :

  • Windows 64-bit with JDK 8 included : package complet qui intègre un JDK8
  • Windows 32-bit/64-bit : nécessite qu’un JDK 8 ou JDK 11 soit déjà installé sur le PC
  • Mac OSX : requiert la préinstallation d’un JDK8 ou JDK11 Oracle sur macOS
  • Linux RPM : demande qu’un JDK 8 ou 11 soit déjà installé

3. Accepter le contrat de licence et cliquer sur le bouton pour télécharger l’archive au format zip ou rpm.

4. Le téléchargement de SQLDeveloper est gratuit mais nécessite un compte Oracle (l’inscription est gratuite).

5. Le fichier se télécharge immédiatement.

Catégories
Expert SGBD

Oracle : voir le jeu de caractères

Si les humains utilisent différents alphabets (latin, cyrillique, arabe…), les ordinateurs aussi communiquent avec différentes manières d’écrire. Les plus anciens codages de caractères sont le code international des signaux maritimes ou encore l’alphabet Morse (1838) mais les machines utilisent plutôt le standard américain ASCII, le Standard Unicode UTF ou d’autres caractères ISO. A titre d’information, le codage UTF-8 est utilisé par plus de 90% de sites web dans le monde, faisant de lui un standard pour l’échange d’informations.

Comme tout système informatique, le serveur de bases de données Oracle Database utilise lui aussi les jeux de caractères. Ceux-ci peuvent être choisis au niveau du SGBD ou un encodage peut être appliqué à chaque base de données. Ce tutoriel explique comment voir le jeu de caractères (characterset) utilisé par un serveur Oracle Database : WE8ISO8859P15, AL32UTF8, AL16UTF16…

Ce paramètre se configure lors de l’installation de Oracle Database :

On peut d’ailleurs modifier le jeu de caractères d’une BDD lors d’un export / import mais attention à la corruption et la perte de données.

 

Voir le jeu de caractères utilisé dans Oracle Database

1. Ouvrir une console SQL*Plus ou un Invite de commandes Windows et se connecter à sqlplus.

2. Copier / coller la commande suivante :

select * from nls_database_parameters;

3. Le résultat indique le Jeu de caractères utilisé à la ligne NLS_CHARACTERSET :

  • AL32UTF8 pour CESU-8, un codage de caractères variante d’UTF-8 depuis Oracle 9

  • WE8ISO8859P15 pour ISO/CEI 8859-15, le code numérique tenant sur 8 bits aux caractères de l’alphabet latin

  • AL16UTF16, une variante de UTF-8

Catégories
SGBD

Présentation Oracle Database 18c

Oracle ne sort pas régulièrement de nouvelle version de son serveur Database. L’édition précédente, la 12c, est disponible depuis 2013. Auparavant, la 11g R1 était sortie en septembre 2007 (la 11g R2 deux ans plus tard), la 10g R1 en 2003. C’est maintenant un rythme annuel de versions qu’Oracle nous a promis. Oracle Database 18c correspond à l’année 2018, la prochaine sera donc Oracle 19. La version 18.1 réservée au Cloud a été publiée en février 2018 mais l’édition On premise (on-prem) n’est disponible que depuis juillet 2018 avec la 18.3. Oracle Database 18c et Oracle 12c sont les seules versions encore supportées par l’éditeur.

Oracle a donc modifié la dénomination de ses versions du serveur de base de données mais aussi la fréquence de publication. Une version par an et une mise à jour par trimestre. L’annuelle dans un mode DevOps, les updates trimestrielles pour de la maintenance proactive. Et des révisions pour corriger des bugs. Ainsi, on obtient des numéros de version de type Année.Update.Révision (18.3.0, par exemple).

Pour se former à Oracle 18, il existe des formations : New Features for Administrators, High Availability New Features, Administration Workshop.

 

Principales nouveautés Oracle 18c

Disponibilité

  • Transparent Application Continuity augmente la disponibilité sans modification des applications
  • Meilleure disponibilité des services durant les maintenances planifiées (draining sessions)
  • Prise en charge d’un clone de la BDD par Oracle ASM 18c (Point-In-Time Database Clones)

Sécurité

  • Possibilité de créer un compte Oracle sans mot de passe (NO AUTHENTIFICATION) : Schema-Only Account
  • Intégration Active Directory (informations d’identification et autorisations) : Centrally Managed Users (CMU)

Sauvegarde RMAN

  • Automatisation de la synchronisation d’une base de secours à partir d’une base principale (RECOVER FROM SERVICE)
  • Possibilité de cloner une PDB active dans une autre CDB

Général

  • Optimisation de la fonction Automatic In-Memory
  • Les SQL Tuning Set (STS) sont maintenant inclus dans Oracle Database Enterprise (donc gratuit) et plus en option pack Tuning
  • Nouveau package DBMS_SQLSET disponible pour gérer les STS
  • SQL Tuning Advisor devient EXADATA Aware
  • Interrogation d’une table externe sans créer d’objet persistant avec un SELECT … EXTERNAL
  • Nouvelles opérations de maintenance disponible en ligne (sans arrêt) : DROP INDEX, ALTER TABLE MOVE, ALTER TABLE DROP CONSTRAINT, ALTER INDEX UNUSABLE…
  • Les bases Oracle 18c supportent Unicode 9.0

 

Documentation des nouveautés Oracle Database 18c

Télécharger “Introducing Oracle Database 18c” oracledatabase18c.pdf – Téléchargé 2056 fois – 1 Mo

Catégories
Expert SGBD Téléchargement

Télécharger et installer serveur Oracle Database Express gratuit

Si le prix des licences Oracle Database explose, mettant les clients dans une impasse financière ou les incitant à changer de SGBD pour leurs applications métier, l’entreprise californienne offre une version gratuite et limitée de son logiciel phare. Sous le nom complet de Oracle Database Express Edition 11g Release 2, il s’agit ainsi d’une version allégée du serveur de bases de données Oracle Database 11g R2, malheureusement indisponible dans la release 12c. Publiée depuis 2009, Oracle Express 11g R2 fait suite à Oracle Database 10g Express Edition sortie en 2005. Depuis, et si Oracle Database 12c version complète payante est sortie en juillet 2013, il n’y a pas eu d’édition gratuite de cette v12.

Au niveau des limitations, Oracle 11g Express Edition offre un maximum de 11Go pour les données utilisateur et 1Go pour la SGA (System Global Area). C’est souvent bien suffisant pour développer une application ou faire des démonstrations clients (ingénieur commercial, avant-vente technique…). Cela permet aussi de se familiariser avec l’environnement SGBDRO de Oracle Corporation sans débourser un centime. Oracle Database Express est l’équivalent de Microsoft SQL Server Express, l’édition gratuite du serveur de bases de données.

Ce guide explique où télécharger et comment installer Oracle Database Express Edition 11g R2, qui existe pour Windows (64 et 32 bits) ainsi que pour Linux x64. Le serveur gratuit Oracle est compatible avec les postes de travail Windows (10, 8, 7), il n’est pas obligatoire de l’installer sur un environnement Windows Server. Il est par contre nécessaire de posséder un compte Oracle pour le télécharger, ce qui est gratuit à créer.

 

Télécharger Oracle Database Express Edition 11g Release 2 (gratuit)

1. Aller sur la page de téléchargement Oracle Database 11g R2 Express.

Cela se trouve dans Oracle Technology Network > Database > Database Express Edition > Download.

2. Cliquer sur « Accept License Agreement » pour déverrouiller les liens de téléchargement.

3. Cliquer sur « Oracle Database Express Edition 11g Release 2 for Windows x64 » et s’identifier avec un login Oracle (gratuit).

4. Le téléchargement est immédiat.

 

Installer Oracle Database Express Edition 11g R2

1.. Décompresser le fichier OracleXE112_Win64.zip téléchargé (ou OracleXE112_Win32.zip ou oracle-xe-11.2.0-1.0.x86_64.rpm.zip pour Linux).

2. Ouvrir le dossier DISK1 et double cliquer sur setup.exe.

3. Bienvenue sur l’assistant d’installation Oracle Database 11g Express, InstallShield Wizard.

4. Par défaut, l’installation se fait dans C:\oraclexe et nécessite 632Mo d’espace disque.

5. Indiquer un mot de passe pour les comptes SYS et SYSTEM (le même password). Valider les paramètres d’installation en cliquant sur Install. Le Listener sera sur le port 1521, comme sur la version Enterprise de Oracle Database.

6. L’installation démarre et ne demande pas plus de renseignements. Cinq services locaux sont créés dont deux sont en démarrage automatique : OracleServiceXE et OracleXETNSListener. On peut les passer en démarrage manuel pour éviter de surcharger la RAM de l’ordinateur si le serveur Oracle n’est pas utilisé tous les jours.

7. Le fichier tnsnames.ora se trouve par défaut dans C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN.

8. On peut vérifier le bon fonctionnement du SGBD en s’y connectant soit en SQLPlus, en SQL Developer ou avec le SQL Command Line intégré à Oracle XE.

  • Ouvrir « Run SQL Command Line« 
  • connect
  • system ou sys
  • mot de passe défini lors de l’installation

Si le message « Connected » apparait, cela signifie que l’installation est validée. On peut maintenant importer des bases et travailler dessus, par exemple avec SQLDeveloper.

Catégories
Expert SGBD

Oracle : voir ce qui consomme de la ressource temporaire

Le SGBD Oracle est un moteur puissant et très efficace.. quand on sait le gérer. Si des requêtes prennent plus de temps que d’habitude ou si le tablespace temporaire est saturé, il existe un moyen de voir les connexions qui consomment des ressources temporaires. C’est une manière de voir à un instant précis s’il y a de trop nombreuses connexions, des requêtes trop lourdes et pour comprendre pourquoi le fichier TEMP01.DBF augmente de manière inhabituelle.

Le tablespace temporaire TEMP est utilisé pour gérer les longues requêtes qui ne peuvent être exécutées dans la mémoire PGA (Program Global Area). Ce fichier peut donc rapidement se remplir si les demandes sont régulières, gourmandes en ressource ou si le serveur de base de données est mal configuré. Elément de réponse avec cette requête qui donne une vue sur l’utilisation du tablespace TEMP d’un serveur Oracle.

 

Voir l’utilisation de la mémoire temporaire Oracle

1. Ouvrir une connexion SQLPlus ou SQL Developer sur le serveur Oracle, avec un compte sysdba.

2. Copier / coller la requête suivante :

SELECT se.osuser, se.username, se.sid,
su.extents, su.blocks * to_number(rtrim(p.value)) as Space,
tablespace
FROM v$sort_usage su, v$parameter p, v$session se
WHERE p.name = 'db_block_size'
AND su.session_addr = se.saddr
ORDER BY se.username, se.sid

3. Le retour est de ce type :

Et dans le cas où il y a une grosse consommation de TEMP :

4. On peut ainsi identifier l’utilisateur Oracle et le SID qui utilisent le tablespace temporaire TEMP du serveur Oracle.