Získejte konzultaci v hodnotě 1 500 Kč k vaší databázi Oracle zcela zdarma. Ozvěte se mi ještě dnes.
Kontrolní soubor je základním souborem, bez kterého databáze nemůže existovat. Obsahuje
informace o fyzické struktuře databáze, archivních souborech, tabulkových prostorech, redo
souborech, obsahuje jméno databáze, ale i informace o RMAN a zálohách. Skládá se ze dvou
sekcí, permanentní a přepisující. Do té se zapisují například informace o zálohách. Měli byste
mít nastavenou automatickou zálohu kontrolního souboru.
Poznámka: Informace o tom, jak dlouho budete uchovávat informace v přepisující části je závislá na
parametru control_fi le_record_keep_time. Standardně je nastaven na 7 dní, ale doporučuji tuto hodnotu
zvýšit aspoň na 21 dní.
Existují v podstatě 3 důvody, proč vytvářet nový kontrolní soubor ručně.
- Všechny kontrolní soubory byly zničeny a vy nemáte zálohu.
- Chcete změnit jméno databáze.
- Specifi cké případy pro změnu parametru compatibility.
Poznámka: Pro změnu jména databáze můžete využít utilitu dbnewid.
Kontrolní soubor vytváříte pomocí příkazu create controlfile. Samotný zápis se pak dá rozdělit
do více sekcí. Podívejte se tedy, co musíte znát, než nový kontrolní soubor vytvoříte. V první
sekci jsou informace o samotném kontrolním soboru.
CREATE CONTROLFILE SET DATABASE orcl11g <– jméno databáze
MAXLOGFILES 16 — max. počet log souborů
MAXLOGMEMBERS 3 — max. počet log členů ve skupině
MAXDATAFILES 100 — max. počet datových souborů
MAXINSTANCES 8 — max. počet instancí
MAXLOGHISTORY 292 — uchovají se informace o max. 292 log souborech zpětně
Druhá část popisuje počty, umístění, velikost a rozložení logovacích souborů do skupin. Sekci
logovacích souborů uvozuje klíčové slovo logfile.
LOGFILE
GROUP 1 (
‘+DATA/orcl11g/onlinelog/group_1.262.699978251‘,
‘+DATA/orcl11g/onlinelog/group_1.263.699978255‘
) SIZE 50M,
GROUP 2 (
‘+DATA/orcl11g/onlinelog/group_2.264.699978259‘,
‘+DATA/orcl11g/onlinelog/group_2.265.699978261‘
) SIZE 50M,
GROUP 3 (
‘+DATA/orcl11g/onlinelog/group_3.266.699978263‘,
‘+DATA/orcl11g/onlinelog/group_3.267.699978265‘
) SIZE 50M
Ze zápisu je patrno, že v databázi je 6 log souborů, rozdělených do 3 skupin. Každé skupině
jsou 2 členy. Velikost redo log souborů je 50 MB. Neznáte-li umístění redo log souborů můžete
nahlédnout do tabulky v$logfile.
SQL> select member from v$logfile;
MEMBER
—————————————————————-
+DATA/orcl11g/onlinelog/group_3.266.699978263
…
Třetí sekcí je oblast věnovaná datovým souborům. Uvozuje ji klíčové slovo datafile.
DATAFILE
‘+DATA/orcl11g/datafile/system.256.699977893‘,
‘+DATA/orcl11g/datafile/sysaux.257.699977895‘,
‘+DATA/orcl11g/datafile/undotbs1.258.699977895‘,
‘+DATA/orcl11g/datafile/users.259.699977897‘,
‘+DATA/orcl11g/datafile/example.269.699978401‘
Jelikož databáze využívá ASM instanci jako úložiště pro své soubory, vidíte, že jsou všechny
soubory uloženy v datové skupině +DATA a strukturované do adresářů podle účelu souboru.
Seznam datových souborů můžete zjistit z tabulky v$datafile.
SQL> select name from v$datafile;
NAME
—————————————————————–
+DATA/orcl11g/datafile/system.256.699977893
…
Seznam kontrolních souborů můžete zjistit dotazem do pohledu v$controlfile.
SQL> select name from v$controlfile;
NAME
—————————————————————–
+DATA/orcl11g/controlfile/current.261.699978243
+DATA/orcl11g/controlfile/current.260.699978245
Jak vidíte, vytvořit kontrolní soubor ručně není až tak složitá věc, znáte-li veškeré uložení
souborů, ale vždy je lepší mít zálohu a použít ji. Nejlepší volba je nastavit automatickou zálohu
v RMAN, ale máte možnost udělat zálohu přímo z sqlplus. Existují dvě možnosti. Uložit soubor
jako binární, a nebo textový.
Textový soubor vytvoříte pomocí příkazu alter database backup controlfile to trace. V alert.
logu pak naleznete informace o tom, kam byl soubor uložen.
Backup controlfile written to trace file /u01/app/oracle/diag/rdbms/orcl11g/orcl11g/trace/orcl11g_ora_5474.trc
Completed: alter database backup controlfile to trace
Binární soubor, který stačí jen překopírovat, se vytvoří pomocí příkazu alter database backup controlfile to ‘/zalohy/control.bkp’.
[oracle@centos53 zalohy]$ pwd
/zalohy
[oracle@centos53 zalohy]$ ls -la control*
-rw-r—– 1 oracle oinstall 9781248 Nov 2 12:36 control.bkp
Veškeré změny můžete samozřejmně udělat i v EM. V hlavní nabídce Server je podkapitola
věnovaná Storage a zde klepněte na odkaz Control Files.