一 .減少控制文件,有一個控制文件損壞,我們要將損壞的控制文件剔除。步驟:
1.修改參數文件,並驗證
2.停止數據庫
3.啓動數據庫
4.驗證,查看v$controlfile
下面是實際操作過程。
1 . 用sysdba用戶登錄數據庫。
[oracle@oracle ~]$ sqlplus oracle/oracle as sysdba SQL*Plus: Release 10.2.0.1.0 - Production on Tue Jul 3 01:24:57 2012 Copyright (c) 1982, 2005, Oracle. All rights reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options SQL> show user USER is "SYS" SQL> |
2 . 先查看一下,控制文件.
SQL> select * from v$controlfile; STATUS NAME IS_ BLOCK_SIZE FILE_SIZE_BLKS ------- -------------------------------------------------- --- ---------- -------------- /fantlam/oradata/fantlam/control01.ctl NO 16384 430 /fantlam/oradata/fantlam/control02.ctl NO 16384 430 /fantlam/oradata/fantlam/control03.ctl NO 16384 430 |
3. 修改參數文件
SQL> alter system set control_files= 2 '/fantlam/oradata/fantlam/control01.ctl','/fantlam/oradata/fantlam/control02.ctl' scope=spfile; System altered. |
這個時候查看控制文件並沒有改變。
SQL> select * from v$controlfile; STATUS NAME IS_ BLOCK_SIZE FILE_SIZE_BLKS ------- -------------------------------------------------- --- ---------- -------------- /fantlam/oradata/fantlam/control01.ctl NO 16384 430 /fantlam/oradata/fantlam/control02.ctl NO 16384 430 /fantlam/oradata/fantlam/control03.ctl NO 16384 430 |
4. 關閉數據庫
SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. |
5. 啓動數據庫
SQL> startup ORACLE instance started. Total System Global Area 268435456 bytes Fixed Size 1218868 bytes Variable Size 79693516 bytes Database Buffers 180355072 bytes Redo Buffers 7168000 bytes Database mounted. Database opened. |
6. 查看控制文件是否改變
SQL> select * from v$controlfile; STATUS NAME IS_ BLOCK_SIZE FILE_SIZE_BLKS ------- -------------------------------------------------- --- ---------- -------------- /fantlam/oradata/fantlam/control01.ctl NO 16384 430 /fantlam/oradata/fantlam/control02.ctl NO 16384 430 |
已經由原來的三個變成了兩個。
二. 增加控制文件的個數
主要操作步驟:
1.修改參數文件
2.停止數據庫
3.複製控制文件
4.啓動數據庫
5.驗證,查看v$controlfile
下面是實際操作步驟:
1. 修改參數文件
SQL> alter system set control_files= 2 '/fantlam/oradata/fantlam/control01.ctl', 3 '/fantlam/oradata/fantlam/control02.ctl', 4 '/fantlam/oradata/fantlam/controlfile/control03.ctl' 5 scope=spfile; System altered. |
2. 關閉數據庫
SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. |
3. 複製控制文件到剛纔指定的位置
host cp /fantlam/oradata/fantlam/control02.ctl /fantlam/oradata/fantlam/controlfile/control03.ctl |
4. 啓動數據庫
SQL> startup ORACLE instance started. Total System Global Area 268435456 bytes Fixed Size 1218868 bytes Variable Size 79693516 bytes Database Buffers 180355072 bytes Redo Buffers 7168000 bytes Database mounted. Database opened. |
5. 查看v$controlfile視圖驗證
SQL> select * from v$controlfile; STATUS NAME IS_ BLOCK_SIZE FILE_SIZE_BLKS ------- -------------------------------------------------- --- ---------- -------------- /fantlam/oradata/fantlam/control01.ctl NO 16384 430 /fantlam/oradata/fantlam/control02.ctl NO 16384 430 /fantlam/oradata/fantlam/controlfile/control03.ctl NO 16384 430 |