Oracle - Cours2

publicité
PLAN
●
L'instance
●
Optimisations
●
–
Gestion de l'espace
–
La gestion des quotas
–
Les requêtes gourmandes
–
Les goulots d'étranglement
Administration et sauvegardes
PLAN
●
L'instance
●
Interconnexion
●
–
La couche NET
–
Le listener
–
Les clients : ...
–
Les logs
–
Où c'est cassé ?
–
Quand ça marche bien.
Administration et sauvegardes
●
Gestion de l'espace
●
La création des objets ( create table)
●
Les index
●
Les statistiques
●
Les tablespaces
●
Les objets systémes
●
Les axes disques
●
La création des objets
●
Analyse du CREATE TABLE
●
Attention aux index systèmes.
●
Une table appartient à un seul tablespace
●
La taille des extents devrait être un multiple de 5x
DB_BLOCK_SIZE
●
Le high water mark
●
Les objets en mémoire.
HEADER
PCTFREE
Initrans, maxtrans, header
PCTUSED + PCTFREE < 100
PCTFREE= ( 1 – initial/moyenne ) * 100
PCTUSED=
100–PCTFREE-3*100*(moyenne/dispo)
PCTINCREASE, INITIAL, NEXT
PCTUSED
Ne pas oublier ANALYZE et VSIZE
Nécessite de connaître la vie des tables.
●
●
Les index
Les différents types
–
Classique (concaténé, unique)
–
Clé inversé ( uniquement pour les égalités).
–
Bitmap ( index peu sélectif)
–
Fonction, key compression
–
Tables organisées en index
●
Le rafraichissement
●
L'option no logging
●
La création suivant le besoin.
●
●
●
●
●
Les statistiques
J'en ai pas parlé
C'est un module qui devient de plus en plus
efficace
Elles demandent de la gestion.
Elles peuvent induire en erreur sur le chemin
d'une requête
●
Les tablespaces
●
Le truc des 3 ordres de grandeur.
●
Mode Dictionary
●
●
–
Clause d'extent par défaut
–
L'autoextent
–
La fragmentation
Mode LOCAL
–
Autoallocate, uniform size
–
Space management : manual, auto
Attention le nombre de fichiers est limité.
●
●
Le tablespace SYSTEM
Il est indispensable de le créer en même temps
que la base.
●
Il doit être contenu en taille
●
Ca vaut le coup de le laisser en autoextend
●
Se méfier des packages SQL et des tables du type
analyze
●
Les objets systémes
●
TEMPORARY = zone de tri
●
UNDO les anciens RBS => importants
●
Les control files leur multiplexage
●
Les traces, logs ...
●
Les axes disques
●
Le must suivant Oracle
●
Si on a plusieurs disques et plusieurs contrôleurs
●
Séparer data, index, système, traces et archives
●
Séparer les disques en FS, mettre en oeuvre la
surveillance la plus efficace.
●
●
●
●
●
La gestion des quota
On peut faire beaucoup à la création des
utilisateurs ou grâce aux rôles.
La limitation de l'espace en limitant à quelques
tablespaces le droit d'écriture.
Controler l'activité: les index ...
Les quota sur le CPU ou les sessions doit-êre
réservé aux cas particuliers.
●
Les requêtes gourmandes
●
Les 10 plus longues.
●
Les 10 plus fréquentes.
●
V$SQL...
●
●
Se méfier des reqêtes identiques mais
réinterprétées à chaque fois.
Il faut se servir des variables liées.
●
Les goulots d'étranglement
●
Travailler souvent en mémoire
●
Mieux vaut un swap OS (pas trop fréquent)
●
top, free, netstat, ipcs, df, vmstat
●
Explain plan + tkprof
●
Utlbstat et utlestat
Interconnexion
●
La couche NET
●
Le listener
●
Les clients : ...
●
Les logs
●
Où c'est cassé ?
●
Quand ça marche bien.
●
L' interconnexion
●
Elle sert surtout à relier des machines distantes
●
Les développements s'appuient dessus
●
Problémes de sécurité, de volume
●
Sert aussi aux requêtes multi-bases
●
Le passage par IPC
●
OCI et préprocesseurs.
●
Incontournable
●
La couche NET
●
Middleware
●
Connexions directes
●
Client/ Serveur
●
Protocoles réseaux
●
user/password@service
●
Le listener
●
C'est la partie serveur de la couche SQL*NET
●
lsnrctl start,stop, status
●
listener.ora redirection des traces
●
●
Dans les nouvelles versions gèrent
automatiquement l'inscription des services.
Créer un listener par instance permet une
meilleure gestion.
●
Les clients
●
Oracle OLE objects
●
Pilote ODBC
●
Jdbc léger ou lourd
●
Client Oracle
●
L'URL de connexion :
●
Pool de connnexion et JNDI
●
Les fichier tnsnames.ora et sqlnet.ora
●
Les outils graphiques
●
netca : Net Configuration Assistant
●
netmgr : Net Manager
●
Sous Windows dans la base de registres
●
Où c'est cassé ?
●
Se connecter en local
●
Se connecter en local via SQL*NET
●
Essayer avec un client Oracle
●
Faire tracer.
●
L'utilitaire tnsping, ping avant.
●
Quand ça marche bien.
●
v$session
●
Les logs
●
Le MTS
Téléchargement