![]() |
|||||||||||||||||||||||||||||||||||||||||||||
|
White Paper Modifier la géographie d’une base Vous avez une base qui est mal distribuée, des disques se sont intervertis, etc, la panoplie des questions relatives à ‘pourquoi réorganiser physiquement une base’ est infinie(. Le fichier de configuration . . . ########################################### # Diagnostics and Statistics ########################################### background_dump_dest=M:\admin\lib9\bdump core_dump_dest=M:\admin\lib9\cdump timed_statistics=TRUE user_dump_dest=M:\admin\lib9\udump Copier les répertoires orahome\bdump,cdump,udump à l’emplacement souhaité (répertorié dans init.ora). Pour être sur, recréer le service.
Les tablespaces temporaires A partir de la version 8i, un tablespace temporaire peut reposer sur un tempfile. Lors d’un déplacement d’un tel fichier, nous ne pouvons pas le renommer. Dans ce cas, nous allons dropper le tablespace temporaire et le recréer au bon endroit. Un problème qui peut intervenir est l’impossibilité de dropper le tablespace temporaire par défaut (9i+). Nous allons mettre un autre tablespace temporaire comme défaut pendant la recréation du vrai : drop tablespace TEMPO_00; create temporary tablespace TEMPO_00 blocksize 8192 tempfile 'l:\db\lib9\temp\FTEMPO_00' size 104857600 autoextend on next 52428800 maxsize 32767M extent management local uniform size 10485760; drop tablespace CCTEMP; create temporary tablespace CCTEMP blocksize 8192 tempfile 'l:\db\lib9\temp\CCTEMP.DBF' size 629145600 autoextend on next 52428800 maxsize 32767M extent management local uniform size 163840; TAFORA SQL> select name from v$tempfile; NAME -------------------------------------------------------------------------------- M:\ORAHOME90\ORADATA\LIB9\TEMP01.DBF L:\DB\LIB9\TEMP\FTEMPO_00 L:\DB\LIB9\TEMP\CCTEMP.DBF L:\DB\LIB9\TEMP\FTEMPO_02.DBF TAFORA SQL> alter database default temporary tablespace tempo_00; Base de donnÚes modifiÚe. TAFORA SQL> drop tablespace TEMP; Tablespace supprimÚ. TAFORA SQL> create temporary tablespace TEMP blocksize 8192 2 tempfile 'M:\db\lib9\temp\TEMP01.DBF' size 220200960 3 autoextend on next 655360 maxsize 32767M 4 extent management local uniform size 1048576; Tablespace crÚÚ. TAFORA SQL> alter database default temporary tablespace temp; Base de donnÚes modifiÚe. Les redo logs Nous sommes en mode ARCHIVELOG. Base ouverte, nous faisons un peu d’exercice :
/* || Modifier la disposition des fichiers redo || Ici nous sommes en mode ARCHIVELOG || Il faut parfois switcher :-) alter system switch logfile (base ouverte !) || Radu Caulea, TAFORA, 2002 */ select * from v$logfile; select * from v$log; alter system switch logfile; -- pour ne pas dropper le membre actif alter database drop logfile group 1; alter database add logfile group 1 'm:\db\lib9\redo\redo_lib9_1A.log' size 15M; -- alter database drop logfile group 2; alter database add logfile group 2 'm:\db\lib9\redo\redo_lib9_2A.log' size 15M; -- alter database drop logfile group 3; alter database add logfile group 3 'm:\db\lib9\redo\redo_lib9_3A.log' size 15M; -- alter database drop logfile group 4; alter database add logfile group 4 'm:\db\lib9\redo\redo_lib9_4A.log' size 15M; -- alter database drop logfile group 5; alter database add logfile group 5 'm:\db\lib9\redo\redo_lib9_5A.log' size 15M; -- alter database add logfile member 'i:\db\lib9\redo\redo_lib9_1B.log' to group 1; alter database add logfile member 'i:\db\lib9\redo\redo_lib9_2B.log' to group 2; alter database add logfile member 'i:\db\lib9\redo\redo_lib9_3B.log' to group 3; alter database add logfile member 'i:\db\lib9\redo\redo_lib9_4B.log' to group 4; alter database add logfile member 'i:\db\lib9\redo\redo_lib9_5B.log' to group 5; Immédiatement après la création des miroirs, ils sont invalides. Switcher un tour pour les valider. MEMBER STATUS --------------------------------------------- ------- M:\DB\LIB9\REDO\REDO_LIB9_1A.LOG M:\DB\LIB9\REDO\REDO_LIB9_2A.LOG M:\DB\LIB9\REDO\REDO_LIB9_3A.LOG M:\DB\LIB9\REDO\REDO_LIB9_4A.LOG M:\DB\LIB9\REDO\REDO_LIB9_5A.LOG I:\DB\LIB9\REDO\REDO_LIB9_1B.LOG INVALID I:\DB\LIB9\REDO\REDO_LIB9_2B.LOG INVALID I:\DB\LIB9\REDO\REDO_LIB9_3B.LOG INVALID I:\DB\LIB9\REDO\REDO_LIB9_4B.LOG INVALID I:\DB\LIB9\REDO\REDO_LIB9_5B.LOG INVALID Les fichiers de contrôle select name, status from v$controlfile;donne: NAME STATUS --------------------------------------------- ------- M:\ORAHOME90\ORADATA\LIB9\CONTROL01.CTL M:\ORAHOME90\ORADATA\LIB9\CONTROL02.CTL M:\ORAHOME90\ORADATA\LIB9\CONTROL03.CTLApres l’arrêt de l’instance, copier les fichiers de contrôle dans les répertoires choisis. Modifier le paramètre control_files dans init.ora et redémarrer l’instance.
control_files=("M:\orahome90\oradata\lib9\control01.ctl",
"M:\orahome90\oradata\lib9\control02.ctl",
"M:\orahome90\oradata\lib9\control03.ctl")
devient
control_files=("i:\db\lib9\ctrl\control01.ctl", "m:\db\lib9\ctrl\control02.ctl",
"z:\db\lib9\ctrl\control03.ctl")
Après startup,select name, status from v$controlfile;donne NAME STATUS --------------------------------------------- ------- I:\DB\LIB9\CTRL\CONTROL01.CTL M:\DB\LIB9\CTRL\CONTROL02.CTL Z:\DB\LIB9\CTRL\CONTROL03.CTL |
||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||