Oracle

Généralités

Oracle est un système de gestion de base de données propriétaire. Il est très utilisé dans le monde de l'entreprise surtout pour les grosses bases de données.

Installation

Configuration

Tablespaces

Fichiers

tablespace

Conteneur (taille figée à l'avance)

Table

Index

Procédure stockée

Les tablespaces sont en autoextensible or ce n'est pas ce qu'il faut faire. La taille doit être fixe.

Bonne pratique : La DATA est égale à INDEX*3 en taille. Autre école, l'INDEX est égal à 60-70% du DATA.

Pas supprimer les archives logs à la main sinon désynchro avec les références stockés dans la BD.

Pour être plus propre, il faut exporter les données et tout réimporter complètement après avoir fixé les bonnes valeurs de tuning de la base.

Démarrage/arrêt

Démarrage

Instructions pour démarrer une base Oracle.

su - <oracle_account>
#Listener start
lsnrctl start

Database NOMBD start

export ORACLE_SID=NOMBD
sqlplus /nolog
connect /as sysdba
startup
exit

Démarrage : http://www.dba-oracle.com/concepts/starting_database.htm

Arrêt

Instructions pour arrêter une base Oracle.

su - oracle
#Listener stop
lsnrctl stop

export ORACLE_SID=NOMBD
sqlplus /nolog
connect /as sysdba
shutdown immediate
exit

Arrêt : http://www.dba-oracle.com/t_oracle_shutdown_immediate_abort.htm

Audit

Disposer de l'aide sur une commande.

help show
help select

Lister les dernières commandes du buffer.

list

Taille de la mémoire utilisée.

select * from v$sga
ou
show sga (plus complet)

Pour avoir toutes les vues oracle.

dbaviews

Liste des utilisateurs.

select * from dba_users;
select * from all_users;

Liste des index.

select * from user_indexes;
select * from dba_indexes;

Connaitre l'utilisateur avec lequel on est connecté.

show user

Requêtes d'informations intéressantes : http://oracle.developpez.com/sources/?page=devniveau1

Audit : http://www.dba-oracle.com/art_builder_proper_oracle_design_for_auditing.htm

Autres commandes en vrac.

show parameter “init_parameter_name”
select * from v$log;
select * from v$logfile;
select name from v$datafile;

Logs

Par défaut Oracle produit des fichiers logs pour le client et le listener Oracle. Vous ne pouvez pas désactiver les logs clients.

Par défaut le serveur est configuré pour générer un fichier log. Il centralise les démarrages, les arrêts du listener, les connexions, les refus de connexions. Les logs de listener enregistrent les informations tel que : numéro de version, attente de connexion, protocole.

$ORACLE_HOME/network/log/listener.log

Il est intéressant de le rotationner avec logrotate car ce log grandit considérablement. Le rotationner tous les jours, en garder 6 lorqu'il dépasse la taille de 100Mo est une bonne valeur.

Infos intéressantes : http://www.wikiora.com/index.php?option=com_content&view=article&id=69:les-logs-oracle-net-les-traces-sur-le-serveur-oracle-net-services&catid=42:chapitre-6&Itemid=58