Database tunning

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Type Paramétrage d'instance
Composant Oracle Database
Voir aussi Sysctl.conf · Kernel parameters 11gR2 · Service oracle

Aide-mémoire des principaux paramètres d'instance Oracle impliqués dans le tuning mémoire/performance, ainsi que quelques opérations de base liées (fichier de mots de passe, fichier de paramètres serveur, création de base).

Principaux paramètres d'instance

Paramètres les plus fréquemment revus lors d'un tuning d'instance (`init<SID>.ora` / `spfile`, consultables via `show parameter <nom>`) :

  • `DB_BLOCK_SIZE`
  • `MEMORY_TARGET`
  • `SGA_MAX_SIZE`, `SGA_TARGET`
  • `SHARED_POOL_SIZE`, `JAVA_POOL_SIZE`, `LARGE_POOL_SIZE`, `DB_CACHE_SIZE`
  • `LOG_BUFFER`
  • `PGA_AGGREGATE_TARGET`
  • `STATISTICS_LEVEL` (`ALL`, `TYPICAL`, `BASIC`)
  • `OPEN_CURSORS`
  • `PROCESSES` (voir aussi la vue `V$PROCESS`)
  • `SESSIONS`, `SHARED_SERVERS`
  • `JOB_QUEUE_PROCESSES`
  • `NLS_LANGUAGE`
  • `UNDO_MANAGEMENT`, `UNDO_TABLESPACE`
  • `DIAGNOSTIC_DEST`
  • `DB_RECOVERY_FILE_DEST`, `DB_RECOVERY_FILE_DEST_SIZE`
  • `LOG_ARCHIVE_DEST`, `LOG_ARCHIVE_DUPLEX_DEST`, `LOG_ARCHIVE_FORMAT`
  • `REMOTE_LOGIN_PASSWORDFILE`
  • `SEC_CASE_SENSITIVE_LOGON`

(Coquille corrigée par rapport à la source : `STATITICS_LEVEL` → `STATISTICS_LEVEL`.)

Fichier de mots de passe

Nécessaire pour autoriser une connexion externe (`SYSDBA`/`SYSOPER` via le réseau) :

# cd $ORACLE_HOME/dbs/
# rm -f orapw<SID>
# orapwd FILE=fichier PASSWORD=motdepasse ENTRIES=nombre FORCE=y|n IGNORECASE=y|n
SQL> show parameter password

Fichier de paramètres serveur (spfile)

Générer un `spfile` binaire à partir d'un `pfile` texte (ou l'inverse) :

SQL> CREATE SPFILE [='nom_spfile'] FROM PFILE [='nom_pfile'];

Créer une base de données

Squelette de la commande `CREATE DATABASE` (syntaxe simplifiée, à adapter) :

CREATE DATABASE nom_base
 USER SYS IDENTIFIED BY mot_passe
 USER SYSTEM IDENTIFIED BY mot_passe
 CONTROLFILE REUSE
 SET DEFAULT {BIGFILE | SMALLFILE} TABLESPACE
 DATAFILE specification_fichier [, ...]
 [BIGFILE | SMALLFILE] UNDO TABLESPACE nom [DATAFILE specification_fichier [, ...]]
 [BIGFILE | SMALLFILE] DEFAULT TEMPORARY TABLESPACE nom
  TEMPFILE specification_fichier [, ...]
  EXTENT MANAGEMENT LOCAL [UNIFORM [SIZE valeur [K|M|G|T]]]
 DEFAULT TABLESPACE nom
  DATAFILE specification_fichier [, ...]
  clause_extent_management
 LOGFILE [GROUP numero] specification_fichier_redo [, ...]
 ARCHIVELOG | NOARCHIVELOG
 FORCE LOGGING
 CHARACTER SET jeu
 NATIONAL CHARACTER SET jeu
 SET TIME_ZONE = {'+|-hh:mi' | 'region'}
 MAXINSTANCES nb
 MAXLOGFILES nb
 MAXLOGMEMBERS nb
 MAXDATAFILES nb;

(Corrigé par rapport à la source : `CREATE DATABSE` → `CREATE DATABASE`, `EXTEND MANAGEMENT` → `EXTENT MANAGEMENT`, `NATIONNAL` → `NATIONAL`.)

Dictionnaire de données

Ensemble de tables et de vues (préfixées `DBA_`/`ALL_`/`USER_`) maintenues automatiquement par Oracle, qui décrivent la structure et l'état de la base — indispensable au fonctionnement des vues systèmes et de nombreux outils d'administration.

oratab

Fichier recensant les instances connues sur le serveur, utilisé notamment par `dbstart`/`dbshut` (voir Service oracle) :

/etc/oratab
DATABASE_NAME:/u01/app/oracle/product/11.2.0/db_1:Y

Database Control (EM)

emca -config dbcontrol db [-repos {create|recreate}]
emca -deconfig dbcontrol db [-repos drop]

(Database Control est déprécié depuis Oracle 12c au profit d'Enterprise Manager Cloud Control ou d'EM Express — à vérifier selon la version en place.)

Voir aussi