Mémento des commandes DBA ORACLE

 

B. LISAN – créé le 2 janvier 2000- mise à jour le 28 octobre 2005.

 

1          Fichiers de configuration SQLNET V2.0 avec Oracle 7.3.4 : 2

2          Augmenter la taille d’un datafile : 2

3          Réparation d’une base ORACLE dont un fichier “.ctl” est cassé (en Oracle 7.3.4.) : 2

4          Réparation d’une base dont l’un des fichiers de journalisation « …log …rdo » a été supprimé par erreur (Oracle 7.3.4) : 3

5          Problème d’extension de tablespace : Ajout d’un fichier à un tablespace (en Oracle 7.1.6 & 7.3.4) : 3

6          Export d’une liste de tables 4

7          Export/import d’une base d’une machine vers une autre, en changeant le nom des tablespaces : 5

8          Effacement par erreur du datafile avant de faire le drop de la tablespace associée : 5

9          Exemples de commandes DBA Oracle : 5

10        Exemple de type de démarrages et d’arrêt d’une base Oracle : 6

11        En cas d’une erreur ORACLE mentionnant RESETLOGS lors d’un database open : 6

12        Mettre une base Oracle en archive log : 6

13        Pour faire une sauvegarde manuelle de type archive log : 6

14        Voir des cessions (leurs locks …) : 6

15        Erreurs lors du lancement de la base (fichiers de contrôle perdu) : 7

16        Changement de place d’un datafile : 7

17        Si erreur Oracle : log on line non disponible (ORA-00313 ou ORA-00322) : 7

18        Rétablir le mot de passe du login “system” : 7

19        Création d’un fichier mot de passe : 8

20        Suppression de la limite « maxextents » pour tables et indexes 8

21        Déplacer un datafile d’un répertoire à un autre 8

22        Commandes diverses : 8

22.1      Script DOS pour transfert ftp à partir de machine NT : 8

23        Contourner une limite de taille à la création d’un fichier d’export 9

24        Vérification de l’état de la base de donnée 9

25        Commande NT pour savoir quell process lock un fichier 9

26        Installation d’un patch ORACLE 9

27        Tests sql*net 10

28        Divers : mount sur AIX 10

29        Mot de passe 10

30        Chargement de données par SQL*LOADER 10

31        Arrêt / démarrage du « listener » Oracle 11

32        Analyze de la base 11

 

1           Fichiers de configuration SQLNET V2.0 avec Oracle 7.3.4 :

 

a) listener.ora

(il se trouve dans /XXXX/oracle/network/admin ou dans /XXXX/oracle/tnsadmin ).

Ce fichier liste les bases de données visibles de SQLNET.

b) tnsname.ora

Ce fichier liste les clients Oracle (pour SQLNET) (un nom de service = une base ???) ???.

Dès qu’on modifie un de ces fichiers, il faut relancer le démon listener SQLNET V2.

 lsnrctl reload      (ou bien “lsnrctl stop”    puis   “lsnrctl start” ).

 

2           Augmenter la taille d’un datafile :

 

set pages 10

select * from v$tablespace;

select name, bytes  , ts# from v$datafile;

(pour calculer la taille du “datafile”), ou bien :

select tablespace_name, file_name, bytes from dba_data_files where tablespace_name='EPT_TS_DATA1'

 

alter database datafile '/ora_data_tbl/eptidbo/epti_data001.dbf' resize 800 M ;

 

(alter tablespace USER_DATA autoextend unlimited;) (???).

 

3           Réparation d’une base ORACLE dont un fichier “.ctl” est cassé (en Oracle 7.3.4.) :

 

On a, par exemple les messages :

ORA-01110 : data file 1 : ‘/data_3/…./system_1.dbf’

ORA-01207 : file is more recent than control file.

 

on ne démarre que sur le 2° control file, en supprimant le 1er « control file », précisé dans le fichier « initXXX.ora ».

svrmgrl

connect internal ;

startup mount;

select * from v$log;

group    sequence

67

65

66

select * from v$logfile;

/data_1/oracle_gret/gret_log_3_1.rdo

(note : ici avec cette commande, on voit s’afficher une liste de “logfiles” (liste de chemins _ paths _ absolus et fichiers unix).

select * from v$recover_file;

sequence#        change#

select * from v$log_history;

sequence#       

1er  essai de “recover” de la base :

recover database until cancel using backup controlfile ;

(note : prompt affiché : <RET> = suggested | filename | AUTO | CANCEL )

On choisit alors “AUTO” (et non “OK”).

2ème essai de “recover” de la base :

Au : prompt affiché : « <RET> = suggested … », le réponds par le nom du fichier log, par exemple, par le « filename » : /data_3/oracle_gret/gret_log_1_2.rdo

(note : si les messages suivants, ci-dessous, s’affichent, alors l’opération est réussie :

log appli

Media recovery completed ).

Alter database open resetlogs ;

(note : on doit alors voir s’afficher le message : « statement processed ).

Test de fonctionnement de la base :

Select * from dba_freespaces ;

Shutdown immediate ;

Copie du 2ème “control file” sur le 1er (sur celui qui était “vérolé”).

Restauration du fichier « initXXX.ora », spécifiant les 2 fichiers « control file » employés.

Redémarrage de la base Oracle : startup open

 

4           Réparation d’une base dont l’un des fichiers de journalisation « …log …rdo » a été supprimé par erreur (Oracle 7.3.4) :

 

svrmgrl

shutdown immediate ;

archive log liste ;  (???)

alter system [disable | enable ] restricted session ;

recover database until cancel ;

alter database open resetlogs;

shutdown immediate ;

startup open;

Test fonctionnement de la base : select * from dual;

 

5            Problème d’extension de tablespace : Ajout d’un fichier à un tablespace (en Oracle 7.1.6 & 7.3.4) :

 

svrmgrl

connect internal

alter tablespace TEMP_1 add datafile ‘xxx/MIDV_temp_1.dbf’ size 20M ;

alter tablespace TEMP_1 default storage (initial 1M next 1M pctincrease 0);

select * from dba_tablespaces;

select tablespace_name, filename, bytes from dba_data_files ;

 

Ajout d’un “datafile” à un tablespace existant :

 

Svrmgrl

connect / as sysdba ;

 ALTER TABLESPACE nom_tablespace  ADD DATAFILE ‘xxx.dbf’ SIZE 20M ;

ALTER TABLESPACE TEMP_1 default storage (initial 1M next 1M pctincrease 0);

SELECT * FROM DBA_TABLESPACE ;

 

Recherche de doublons dans une table :

 

Select col from table having(col) > 1 group by col ;

 

 

Ø       Exemple d’options de l’import d’Oracle :

 

imp system/manager file=expdat.dmp destroy=y full=y ignore=y log=expdat.log

 

Ø       Exemple d’options de l’export d’Oracle :

 

(exemple du contenu d’un script d’export : export_db ).

 

export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1

export ORACLE_HOME=/oracle/9.2.0

export PATH=$ORACLE_HOME/bin:/usr/bin:/etc:/usr/sbin:/usr/ucb:/sgbd/oracle/bin:/

usr/bin/X11:/sbin:.

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export TNS_ADMIN=/oracle/9.2.0/network/admin

export ORACLE_SID=PILOAP

exp system/manager full=yes compress=yes file=/ora_data_tbl/piloap/exppilo.dmp log=/util/admindb/pilo/ap/expilo.log statistics=none grants=yes indexes=yes

 

Sur NT, script exp_PILDBO.BAT dans c:\UTIL\ADMINDB\PIL\OPER :

 

REM

set ORACLE_SID

dir E:\data\pildboPROD.dmp

pause

set ORACLE_SID=PILO

set ORACLE_SID

pause

c:\orant\bin\exp73.exe system/manager full=yes compress=yes file=E:\data\pildboPROD.dmp log=C:\ORANT\expildboPROD.log statistics=none grants=yes indexes=yes

dir E:\data\pildboPROD.dmp

pause

 

Ø       Exemple de fichier ‘parfile’ pour l’import d’Oracle :

 

sumeq/sumeq

file=expdat.dmp

grant=y

ignore=y

from_user=sumeq

tables=TABLE1, TABLE2, …

buffer=1000000

commit=y

log=expdat.log

#indexfile=createindex.sql

 

La commande d’import sera par exemple : imp sumeq=sumeq parfile=parfile

 

Note : pour l’export Oracle (exp), on peut mettre l’option « compress=N ».

 

Faire un export/import d’une base sur une machine vers une autre base sur une autre machine

(avec des noms de tablespaces différents).

 

Note : pour la volumétrie : il y a le logiciel Oracle : oraflash2  (à partir du ‘dba_menu’ ???).

 

Opérations sur la machine source :

 

faire un full export (de l’utilisateur administrateur).

Par exemple : exp c/c [full=y]      (export normal).

 

Opérations sur la machine cible :

 

créer le fichier « parfile » suivant :

 

 

login/passe

indexfile=creix.sql

file=expdat.dmp

(full=Y)

(from use=c)

(log=imp.log)

Exemple :

c/c

indexfile=ix.sql

file=expC.dmp

(full=Y)

(from use=c)

(log=imp.log)

 

 

faire un « imp c/c » normal (full). On importe les tables/données dans les tablespaces par défaut de l’utilisateur de l’import.

On génére un script de création d’index (avec la commande suivante et le parfile précédent) : imp c/c parfile=parfile

Note :  Il ne crée pas les tables mais crée le script : « creix.sql »

On modifie dans ce script « creix.sql », le nom du tablespace des index par celui qui est le « bon » (par exemple « CAPA_1 » par « C_2 »).

Note :   Attention, ôter,  dans ce script, l’ordre : « connect c ».

On lance ce script modifié : sqlplus c/c @creix.sql

 

6           Export d’une liste de tables

 

script "export_T_RAPPORT.sh" :

export ORACLE_SID=TTTDBT

exp system/manager file=/ora_arch_log/tttdbt/exp_TTT_T_RAPPORT.dmp indexes=y constraints=no grants=no tables= TTTDBA.T_RAPPORT,TTTDBA.T_RAPPORT_FOURN, TTTDBA.T_RAPPORT_PALIER log=log/export_TTT_T_RAPPORT.log

7           Export/import d’une base d’une machine vers une autre, en changeant le nom des tablespaces :

 

a) machine source :

 

a.1) lancer le script export_chmdbaw contenant les lignes suivantes :

 

#!/bin/ksh

echo "init variables oracle"

export ORACLE_HOME=/sgbd/oracle/8.1.7

export PATH=/sgbd/oracle/8.1.7/bin:$PATH

export PATH=$ORACLE_HOME/bin:$PATH

export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1    

export ORACLE_SID=CHMDBO

echo "etape 1 : export no row : export schema base"

exp chmdbaw/chmdbaw  file=/ora_arch_log/exp_chmdbaw_norow.dmp rows=no log=exp_chmdbaw_norow.log

 

echo "etape 2 : export indexfile (pour créer un script de creation d'indexes)"

 

imp chmdbaw/chmdbaw  file=/ora_arch_log/exp_chmdbaw_norow.dmp indexfile=/ora_arch_log/ exp_chmdbaw_ixfile.sql log=exp_chmdbaw_ixfile.log

 

b) transférer par ftp , les 3 fichiers : exp_chmdbaw_ixfile.sql et exp_chmdbaw_norow.dmp

 

c) machine cible :

 

c1.) Modifier les noms des tablespaces (sources par ceux cible) dans le fichier :  exp_chmdbaw_ixfile.sql

Lancer l’exécution de ce script sql : sqlplus system/Mdp @exp_chmdbaw_ixfile.sql

 

c.2) Lancer le script import_chmdbaw contenant les lignes suivantes :

 

# maj par B. LISAN 20 oct 05

export ORACLE_SID=CHMDBO

export NLS_LANG=french_france.WE8ISO8859P15

 

imp chmdbaw/chmdbaw file=/ora_data_tbl/chmdbo/exp_chmdbaw_norow.dmp fromuser=CHMDBAW touser=CHMDBAW grants=y indexes=y commit=y ignore=y log=imp_chmdba.log

#imp system/xxx  file/ora_data_tbl/chmdbo/exp_chmdbaw_norow.dmp fromuser=chmdbaw touser=chmdbaw ignore=y

 

8           Effacement par erreur du datafile avant de faire le drop de la tablespace associée :

 

Message d’erreur : ORA-07368 : …

(note pas d’entrée pour cette erreur avec « oerr ora 07368 »).

 

Copier la tablespace (si possible)

sqlplus system/manager

alter tablespace TOTO offline;

Si OK, faire alors :  alter database datafile ’/xxx/datafilex.dbf’ offline drop ;

Puis : drop tablespace C1 including contents ;

 

Une règle : en général, toujours lancer les commandes oracle avant les commandes unix.

 

9           Exemples de commandes DBA Oracle :

 

Select * from v$database ;

Select sum(blocks), owner from dba_segments group by owner ;

Alter table TOTO deallocate unused ;

Select sum(blocks) from dba_data_files ;

Select sum(blocks), tablespace_name from dba_free_spaces group by tablespace_name ;

 

Set page 0

Select ‘alter table SUMEQ.’||[table_name|index_name]||’ deallocate unused keep 10k ;’ from [dba_tables|dba_indexes] where owner = ‘SUMEQ’;

Select count(*) from dba_indexes where table_owner=’SUMEQ’;

Truncate table TABLE1 ; (???)

 

DANGER ! : drop tablespace TABSPACE1 including contents ;

 

Alter user SUMEQ default tablespace TABSPACE2;

 

10        Exemple de type de démarrages et d’arrêt d’une base Oracle :

 

Lancements d’une base :

 

Startup mount ;

Startup open ;

Alter database open ;

 

Mode restreint : startup rectrict ;

Alter system disable restricted session ;

 

Arrêt d’une base :

 

Shutdown ;

Shutdown immediate ;

Shutdown abort ;

 

11        En cas d’une erreur ORACLE mentionnant RESETLOGS lors d’un database open :

 

Message d’erreur :

ORA-01589 : must user RESETLOGS or NORESETLOGS option for database open

 

Note : diagnostic pas “bon”.

 

svrmgrl

connect internal ;

alter database open [resetlogs | noresetlogs ] ;

 

12        Mettre une base Oracle en archive log :

 

shutdown immediate ;

faire une sauvegarde à froid de la base

modifier le fichier « initXXX.ora » et y mettre :

Log_archive_start=true

Relancer “svrmgrl”.

Se connecter avec l’instance sysdba : connect a/a as sysdba ;

Startup mount ;

Alter database archive log ;

Alter database open ;

“archive log list;“ affiche alors “mode: archive automatical archival enable“.

Il faut sauvegarder le “control file“ :

Alter database backup controlfile to trace ;

Notes : . On doit voir apparaître le répertoire « userdumpdest ».

 . L’archive est au format « control file ».

Startup mount ;

Alter system archive log start ;

 

13        Pour faire une sauvegarde manuelle de type archive log :

 

Alter tablespace begin backup tablespace XXX ;

( alter tablespace unbackup tablespace XXX ; ).

 

14        Voir des cessions (leurs locks …) :

 

Select sid, username from v$sessions ;

Select * from v$process;

 

15        Erreurs lors du lancement de la base (fichiers de contrôle perdu) :

 

Messages d’erreur : ORA-01157 : cannot identify datafile 14 - file not found

ORA-01110 : ‘/data_26/oracle_sumeq/sumeq_sumeq_3_3.dbf’

 

select * from v$recover_file ;

FILE     ON LINE           ERROR

14        ON LINE           FILE NOT FOUND

select name from v$datafile ;

alter database datafile ‘/data_26/oracle_sumeq/sumeq_sumeq_3_3.dbf’ offline drop ;

alter database open ;

select * from dba_data_files;

drop tablespace TEMP_1 ;

Message d’erreur : « not empty ».

Select * from dba_segments where tablespace_name = ‘TEMP_1’ ;

On trouve 2 tables : PRODUCT_FILE et USER_FILE

DANGER ! : drop tablespace TEMP_1 including contents ;

Create tablespace TEMP_1 … ;

 

16        Changement de place d’un datafile :

 

Select file_name from dba_data_files ;  (ou “from v$logfile” ou « from v$database” ).

arrêt de la base  (shutdown immediate ?).

cp –p /partition_de_départ/FIC.dbf  /partition_cible

svrmgrl

connect internal ;

startup mount ;

select * from v$datafile ;

alter database rename file ‘ancien_datafile’ to ‘nouveau_datafile’;

(alter database open ; )

shutdown immediate ;

startup mount ;    (et start DB Oracle) ;

select * from v$datafile ;

Eventuellement, modifier le chemin du “control file” dans le fichier « iniXXX.ora ».

 

17        Si erreur Oracle : log on line non disponible (ORA-00313 ou ORA-00322) :

 

Messages d’erreurs : ORA-00313 : open failed for members of log group %s of thread %s

ORA-00322 : log %s of thread %s is not current copy

 

a) Erreur ORA-00313 :

Cause:  La « log online » ne peut pas être ouverte. La base semble incapable de trouver le fichier. Action: Voir les erreurs accompagnant le message d’erreur et faire en sorte que la log soit de nouveau disponible.

b) Erreur ORA-00322 :

Cause:  La vérification de l’entête (header) de la “log file” à l’ouverture de la database (« open database ») montre que la « online log » est un « backup » restauré incorrect.

Action: Restaurer les correct “file” ou “reset logs” corrects.

 

connect internal ;

startup mount ;

alter database open resetlogs;

shutdown immediate ;

startup pmount=initXXX.ora

 

18        Rétablir le mot de passe du login “system” :

 

sqlplus /nolog

connect / as sysdba

alter user system identified by manager ;

 

19        Création d’un fichier mot de passe :

 

Mot de passe ayant été modifié par la commande :

orapwd file=/oracle/9.2.0/dbs/orapwPILOdbo password=Lfst2f$lcm#eaX entries=5

 

20        Suppression de la limite « maxextents » pour tables et indexes

 

Il faut d’abord trouver le propriétaire ([owner]) à qui appartient l’objet (table, index …).

 

Par exemple :

select owner, index_name from dba_indexes where index_name like '%I_COL_SESSIONS%';

select owner, table_name from dba_tables where table_name = 'TTDPUR051950';

 

Alter [table|index] [ [owner.]nom_table | [owner.]nom_index ] storage ( maxextents unlimited ) ;

Exemple : alter table BAAN.TTDPUR051950 storage ( maxextents unlimited );

 

21        Déplacer un datafile d’un répertoire à un autre

 

Actions à faire pour renommer un fichier qui n'est pas dans le bon répertoire (avec copie du fichier dans le bon répertoire cible).

 

1.Mettre le tablespace offline en utilisant la commande ALTER TABLESPACE avec la clause OFFLINE :

 

     ALTER TABLESPACE accounting OFFLINE NORMAL;

 

   2.Copier le fichier de 'diska:pay1.dat' vers 'diskb:receive1.dat'.

 

   3.Renommer le datafile en utilisant ALTER TABLESPACE avec la clause RENAME DATAFILE :

 

     ALTER TABLESPACE accounting

       RENAME DATAFILE 'diska:pay1.dbf'

       TO     'diskb:receive1.dbf';

 

   4. Remettre la tablespace en utilisant ALTER TABLESPACE avec la clause ONLINE :

 

     ALTER TABLESPACE accounting ONLINE;

 

22        Commandes diverses :

22.1       Script DOS pour transfert ftp à partir de machine NT :

 

REM copie FTP de NT a UNIX

echo open h443111m > c:\util\system\put_stat.cmd

echo user oracle machin >> c:\util\system\put_stat.cmd

echo cd /tmp  >> c:\util\system\put_stat.cmd

echo put e:\data\pildboPROD.dmp >> c:\util\system\put_stat.cmd

echo bye  >> c:\util\system\put_stat.cmd

cat  c:\util\system\put_stat.cmd

pause

ftp -n < c:\util\system\put_stat.cmd

del c:\util\system\put_stat.cmd

pause


23        Contourner une limite de taille à la création d’un fichier d’export

 

Exemple de script shell à lancer :

 

#!/bin/ksh

# script shell : expSYMDBO.sh

# export full de la base SYMDBO (Symbad ope).

#

 

export nopipe=410 # ce numero de pipe est pris comme exemple

# creation des fichiers pipes nommes

# mknod /dev/pipe_${nopipe} p

# mknod /dev/compress_${nopipe} p

 

export DUMPDIR=/work_oracle/backup

export TAILLE_SPLIT=1000

export ORACLE_SID=SYMDBO

 

# === Test de l'existence des pipes

if [ ! -p /dev/pipe_${nopip} -o ! -p /dev/compress_${nopip}]

then

        echo "\nATTENTION, au moins un des pipes nommes n'existe pas !!\n"

        exit 1

fi

 

nohup split -b${TAILLE_SPLIT}m /dev/pipe_${nopip} $DUMPDIR/exp${ORACLE_SID}.dmp &

 

# === compress recupere les donnees du pipe compress_pipe_${nopip},les compresse

# === et renvoie le tout dans le pipe split_pipe_${nopip}

 

nohup compress < /dev/compress_${nopip}  > /dev/pipe_${nopip} &

 

exp system/<MdP> file=/dev/compress_${nopip} full=y compress=y constraints=y indexes=y log=$DUMPDIR/exp${ORACLE_SID}.log

 

Note : Pour créer un fichier pipe nommé : mknod /dev/nom_pipe p 

 

24        Vérification de l’état de la base de donnée

 

select trigger_name, trigger_type, owner, status from dba_triggers where status = 'DISABLED';

select object_name, object_type, owner, status from dba_objects where status = 'INVALID';

 

25        Commande NT pour savoir quell process lock un fichier

 

HANDLE.EXE (disponible sur le site : SYSINTERNAL).

 

26        Installation d’un patch ORACLE

 

1) arrêter toutes les bases oracle :

 

a) export ORACLE_SID=<sid_base>

b) svrmgrl   (ou sqlplus /nolog).

c) connect internal

d) shutdown immediate

[ e) shutdown abort  (si le « shutdown immediate” d’avant ne fonctionne pas) ]

[f) faire le kill [-9] le reste des derniers process oracle restant en mémoire]

 

g) lancer ddterm ou xterm (en Xwindows / X11 sous un émulateur X _ par ex. Humingbird … _ ou sur une station graphique Unix).

(xterm ls –display @ d ).

 

h) export DISPLAY=adr_IP_de_son_PC :0

i) mount /cdrom (être root).

[j) rootpre.sh ]

k) ./runIntaller

 

[kl) éventuellement, modifier “l’init<sid>.ora” ]

 

l) svrmgrl   (ou sqlplus /nolog).

m) connect internal

n) startup (doit faire le mount et l’open dans la base).

o) vérification par : select * from dba_users ;

 

p) lancer @chemin_ORACLE_HOME/catalog

q) lancer @chemin_ORACLE_HOME/catproc

 

r) shutdown immediate

 

[s) éventuellement, modifier “l’init<sid>.ora” ]

 

t) startup

 

27        Tests sql*net

 

a) Test listener : lsnrctl status

b) Test TNS : tnsping [ nom_machine | nom_listener_base ]

 

28        Divers : mount sur AIX

 

Note : mount sur AIX

 

mount -rv cdrfs /dev/cd0 /cdrom

 

29        Mot de passe

 

orapwd file=oraNOCIDBO password=Lfst2flcmeap entries=5

 

Et placer, dans le fichier “init<sid>.ora” :

remote_login_passwordfile=EXCLUSIVE

 

select username , LAST_CALL_ET , PROGRAM from sys.v_$session;

 

30        Chargement de données par SQL*LOADER

 

a) script "load_T_Rapport.sh" :

export ORACLE_SID=TTTDBT

sqlldr userid=system/manager control=load_T_Rapport.ctl log=log/load_T_Rapport.log

 

b) script load_T_Rapport.ctl :

-- ******************************************************************** 

-- *        load_T_Rapport.ctl                                        *

-- *        Creation controle SQLLOADER de table la table T_RAPPORT   *

-- ********************************************************************

--

-- *********transfert de donnees sqlserver

--

-- NUMFOUR;NUMFOURNEE;DATES;DATEDEBUTTRAIT;HEUREDEBUTTRAIT;DATEFINTRAIT;HEUREFINTRAIT;USERNAME;USERDESC;TOTALTAP;COMMENTAIRESFAB;NOMFAB;USERFAB;VALIDFAB;COMMENTAIRESQUALITE;NOMQUALITE;USERQUALITE;VALIDQUALITE;TTHPILOTE;IDFOURNEE

-- F31;1;08/10/2005 00:00;08/10/2005 00:00;01/01/1900 16:30;10/10/2005 00:00;01/01/1900 16:30;S086508;MACHTELINCKX;100,8;RAS;TROUSSELIER;S086972;1;;;;1;00464-09-11-6376;F31-2005/10/08-1

--

options (rows=15000,errors=9999)

load data

infile  'T_Rapport.csv'

-- SKIP 1

badfile 'log/t_rapport.bad'

discardfile 'log/t_rapport.dsc'

discardmax 999

replace                

-- preserve blanks

into table TTTGENIO.T_RAPPORT

fields terminated by ";" optionally enclosed by '"'

TRAILING NULLCOLS

 (

  NUMFOUR                   ,

  NUMFOURNEE                ,

  DATES               DATE 'DD/MM/YYYY HH24:MI' ,

  DATEDEBUTTRAIT      DATE 'DD/MM/YYYY HH24:MI' ,

  HEUREDEBUTTRAIT     DATE 'DD/MM/YYYY HH24:MI' ,

  DATEFINTRAIT        DATE 'DD/MM/YYYY HH24:MI' ,

  HEUREFINTRAIT       DATE 'DD/MM/YYYY HH24:MI' ,

  USERNAME                  ,

  USERDESC                  ,

  TOTALTAP            INTEGER EXTERNAL ,

-- TOTALTAP DECIMAL(7,2) EXTERNAL ,

  COMMENTAIRESFAB           ,

  NOMFAB                    ,

  USERFAB                   ,

  VALIDFAB                  ,

  COMMENTAIRESQUALITE       ,

  NOMQUALITE                ,

  USERQUALITE               ,

  VALIDQUALITE              ,

  TTHPILOTE                 ,

  IDFOURNEE

 )

 

31        Arrêt / démarrage du « listener » Oracle

 

./lsnrctl start

./lsnrctl stop

 

32        Analyze de la base

 

1) En V9, pour un propriétaire d’un schéma de la base :

 

exec DBMS_STATS.GATHER_SCHEMA_STATS('DATAMART',degree=> 20,cascade=>true);

 

2) En V8 et V9, pour une table donnée :

 

analyze nom_table compute statistics ;