2、制御ファイルとログファイル
一、制御ファイル
1.制御ファイル情報の表示
多重レプリケーションの使用:
2.制御ファイルの作成
制御ファイルには、データファイル、ログファイルのパス、ファイル名が含まれている必要があります.だから
二、ログファイル
1.チェックポイント
CKPT(ckeckpoint background process)は、インスタンスのリカバリに要する時間を制御し、チェックポイントを実行すると、前のシステム変更番号(system change number SCN)を記録して前の成功したことを反映するために、データファイルのヘッダと制御ファイルを更新する.
SCNはoracleがデータベース内の各事物に順番に割り当てた番号です.
2.操作ログファイル
1.制御ファイル情報の表示
SQL> select * from v$controlfile;
STATUS NAME
------- --------------------------------------------------
D:\ORACLE\ORADATA\C_DB\CONTROL01.CTL
D:\ORACLE\ORADATA\C_DB\CONTROL02.CTL
D:\ORACLE\ORADATA\C_DB\CONTROL03.CTL
SQL> select name ,value from v$parameter where name ='control_files';
NAME VALUE
control_files D:\ORACLE\oradata\C_DB\CONTROL01.CTL,D:\ORACLE\oradata\C_DB\CONTROL02.CTL,D:\ORACLE\oradata\C_DB\CONTROL03.CTL
多重レプリケーションの使用:
<!-- init.ora -->
control_files=("D:\ORACLE\oradata\C_DB\CONTROL01.CTL", "D:\ORACLE\oradata\C_DB\CONTROL02.CTL", "D:\ORACLE\oradata\C_DB\CONTROL03.CTL")
<!-- SQL -->
<!--1. SPFILE-->
SQL> ALERT SYSTEM SET CONTROL_FILES='D:\ORACLE\oradata\C_DB\CONTROL01.CTL','D:\ORACLE\oradata\C_DB\CONTROL02.CTL','D:\ORACLE\oradata\C_DB\CONTROL03.CTL','D:\ORACLE\oradata\C_DB\CONTROL04.CTL' SCOPE=SPFILE;
<!-- : ,SPFILE , -->
<!--2. -->
SQL> SHUTDOWN IMMEDIATE;
<!--3. -->
$cp D:\ORACLE\oradata\C_DB\CONTROL03.CTL D:\ORACLE\oradata\C_DB\CONTROL04.CTL
<!--4. -->
SQL> STARTUP;
2.制御ファイルの作成
制御ファイルには、データファイル、ログファイルのパス、ファイル名が含まれている必要があります.だから
1.
SQL> select member from v$logfile;
SQL> select name from v$datafile;
SQL> select value from v$parameter where name='control_files';
2.
SQL> connect as sysdba;
SQL> shutdown immediate;
。
。
ORACLE 。
3. ( )
4. NOMOUNT
SQL> startup nomount;
ORACLE 。
Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
, nomount ,oracle , 。
5.create controlfile
create control file
reuse database "mydb_name" --
noresetlogs noarchivelog -- ,
maxlogfiles 32 -- 32
maxlogmembers 2 -- 2
maxdatafiles 32 -- 32
maxinstance 1 -- 1
maxloghistory 499 -- 499
logfile
group 1 '/OS_path/oracle/c_db/t_log1.f' size 500k,
group 2 '/OS_path/oracle/c_db/t_log2.f' size 500k
# STANDBY LOGFILE DATAFILE
'/OS_path/oracle/c_db/t_db1.f',
'/OS_path/oracle/dbu9i.dbf'
....................
[color=red] , , resetlog , , , resetlogs , noresetlogs 。 [/color]
6. , control_files 。
SQL> ALERT SYSTEM SET CONTROL_FILES='D:\ORACLE\oradata\C_DB\CONTROL01.CTL','D:\ORACLE\oradata\C_DB\CONTROL02.CTL','D:\ORACLE\oradata\C_DB\CONTROL03.CTL','D:\ORACLE\oradata\C_DB\CONTROL04.CTL' SCOPE=SPFILE;
7.
SQL> alter database open
resetlogs
SQL> alter database open resetlogs;
二、ログファイル
1.チェックポイント
CKPT(ckeckpoint background process)は、インスタンスのリカバリに要する時間を制御し、チェックポイントを実行すると、前のシステム変更番号(system change number SCN)を記録して前の成功したことを反映するために、データファイルのヘッダと制御ファイルを更新する.
SCNはoracleがデータベース内の各事物に順番に割り当てた番号です.
2.操作ログファイル
SQL> set linesize 180;
SQL> col member for a50;
SQL> col is_recovery_dest_file for a20;
SQL> select * from v$logfile;
GROUP# STATUS TYPE MEMBER
3 ONLINE D:\ORACLE\ORADATA\C_DB\REDO03.LOG
2 STALE ONLINE D:\ORACLE\ORADATA\C_DB\REDO02.LOG
1 STALE ONLINE D:\ORACLE\ORADATA\C_DB\REDO01.LOG
, ,
SQL> select group#,bytes/1024/1024 as M ,status,members from v$log;
GROUP# M STATUS MEMBERS
---------- ---------- ---------------- ----------
1 100 INACTIVE 1
2 100 INACTIVE 1
3 100 CURRENT 1
:
SQL> alter database add logfile group 4 ('D:\ORACLE\ORADATA\C_DB\REDO04a.LOg','D
:\ORACLE\ORADATA\C_DB\REDO04b.LOg') size 10m;
SQL> alter database add logfile member 'D:\ORACLE\ORADATA\C_DB\REDO04c.LOg' to group 2;
:
SQL> alter database drop logfile group 4;
。