欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Oracle控制文件操作

系統 2072 0


控制文件是連接instance和 database的紐帶。記錄了database的結構信息。
控制文件是1個2進制文件。記錄的是當前database的狀態。
控制文件可以有多個,在參數文件中通過control_files參數指定位置,在需要向控制文件寫入時,會同步的向多個控制文件寫入。讀取控制文件時,只會讀取第一個控制文件。如果任意一個控制文件損壞,則實例會abort。
控制文件只能和1個database相關聯。
控制文件是在創建database的時候創建的。也可以在啟動到nomount狀態時重建。
與control file相關的視圖
v$controlfile:當前instance中所有的控制文件的信息。
v$controlfile_record_section: 控制文件中所有的section信息。


查看當前控制文件信息:
?select * from v$controlfile;
?select * from v$parameter where name like '%control%';
?show parameter control;
?select * from v$controlfile_record_section;

?

用命令修改控制文件的路徑

alter system set control_files='/u01/app/oracle/oradata/saigon/control01.ctl',
?????????????????????????????? '/u01/app/oracle/oradata/saigon/control02.ctl',
?????????????????????????????? '/u01/app/oracle/oradata/saigon/control03.ctl' scope=spfile;

?

?

使用spfile增加控制文件個數或修改控制文件路徑
(1)利用v$controlfile 來獲取現有控制文件名字和位置.
(2)修改spfile,使用
alter system set control_files=
'D:\DISK3\CONTROL01.CTL',
'D:\DISK6\CONTROL02.CTL',
'D:\DISK9\CONTROL03.CTL' SCOPE=SPFIL;
(3)正常關閉數據庫,(shutdown,shutdown immediate).
(4)使用操作系統的復制命令將現有控制文件復制到指定位置.
(5)重新啟動oracle數據庫(startup)
(6)利用數據字段v$controlfile來驗證新的控制文件名字是否正確.
(7)如有錯誤,重復上述操作:如果無誤,刪除原有的控制文件.

?

使用pfile增加控制文件個數或修改控制文件路徑
?1.干凈的關閉數據庫。
?2.在操作系統上復制1個新的控制文件并改名。
?3.在initSID.ora中的control_files參數中添加之前的參數文件。
?4.啟動數據庫。

在oracle運行過程中備份控制文件
?1.alter database backup controlfile to 'D:\aaa.bak';
?2.alter database backup controlfile to trace;? 把控制文件翻譯成創建控制文件的腳本,路徑在用戶警告文件的目錄下(可以通過show parameter user_dump;查看),后綴名為trc。

或根據下面方式找到:

SELECT d.VALUE
|| '/'
|| LOWER (RTRIM (i.INSTANCE, CHR (0)))
|| '_ora_'
|| p.spid
|| '.trc' trace_file_name
FROM (SELECT p.spid
FROM v$mystat m, v$session s, v$process p
WHERE m.statistic# = 1 AND s.SID = m.SID AND p.addr = s.paddr) p,
(SELECT t.INSTANCE
FROM v$thread t, v$parameter v
WHERE v.NAME = 'thread'
AND (v.VALUE = 0 OR t.thread# = TO_NUMBER (v.VALUE))) i,
(SELECT VALUE
FROM v$parameter
WHERE NAME = 'user_dump_dest') d
/

3.

run{
backup current controlfile format'/backup1/controlfile_%d_%s.ctl';
}

?

控制文件的的恢復

resetlog方式打開數據只要擁有當前的日志文件是可以實現完全恢復的。?
是否需要使用resetlogs方式打開,則取決于是否使用的是備份的控制文件。
如果使用的是備份的控制文件則需要使用resetlogs方式打開數據庫;
如果擁有當前的控制文件或者通過重建控制文件來恢復,就不需要通過resetlogs方式打開。

RMAN>restore controlfile to '/tmp/control01.ctl' from 'c-3152029224-20051221-00'

-------恢復控制文件用戶resetlogs方式打開

run{
startup force nomount;

set dbid=
restore controlfile from autobackup;
alter database mount;
recover database;
alter database open resetlogs;
}

-------恢復控制文件用正常方式打開
1.startup nomount;
2.RMAN>restore controlfile from autobackup;
3.alter database mount;
4.SQL>alter database backup controlfile to trace;
5.找到trace文件
SELECT d.VALUE
|| '/'
|| LOWER (RTRIM (i.INSTANCE, CHR (0)))
|| '_ora_'
|| p.spid
|| '.trc' trace_file_name
FROM (SELECT p.spid
FROM v$mystat m, v$session s, v$process p
WHERE m.statistic# = 1 AND s.SID = m.SID AND p.addr = s.paddr) p,
(SELECT t.INSTANCE
FROM v$thread t, v$parameter v
WHERE v.NAME = 'thread'
AND (v.VALUE = 0 OR t.thread# = TO_NUMBER (v.VALUE))) i,
(SELECT VALUE
FROM v$parameter
WHERE NAME = 'user_dump_dest') d
/
6.重建控制文件打開數據庫

?

重建控制文件方法如下:

A,確定控制文件,重做日志文件,數據文件位置(A某些情況下需要);

select * from v$controlfile;

select * from v$logfile;

select file#,name from v$datafile;

B,生成可以重建控制文件的腳本

alter database backup controlfile to trace;

C,獲取trc文件位置的腳本

SELECT??? d.VALUE
?????? || '/'
?????? || LOWER (RTRIM (i.INSTANCE, CHR (0)))
?????? || '_ora_'
?????? || p.spid
?????? || '.trc' trace_file_name
? FROM (SELECT p.spid
????????? FROM v$mystat m, v$session s, v$process p
???????? WHERE m.statistic# = 1 AND s.SID = m.SID AND p.addr = s.paddr) p,
?????? (SELECT t.INSTANCE
????????? FROM v$thread t, v$parameter v
???????? WHERE v.NAME = 'thread'
?????????? AND (v.VALUE = 0 OR t.thread# = TO_NUMBER (v.VALUE))) i,
?????? (SELECT VALUE
????????? FROM v$parameter
???????? WHERE NAME = 'user_dump_dest') d
/

D,查看trc文件內容

?

[oracle@orcl admin]$ cat /home/oracle/admin/orcl/udump/orcl_ora_10202.trc

/home/oracle/admin/orcl/udump/orcl_ora_10202.trc

Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

With the Partitioning, OLAP and Data Mining options

ORACLE_HOME = /home/oracle/oracle

System name:?? Linux

Node name:???? orcl

Release:?????? 2.6.18-164.el5

Version:?????? #1 SMP Tue Aug 18 15:51:54 EDT 2009

Machine:?????? i686

Instance name: orcl

Redo thread mounted by this instance: 1

Oracle process number: 15

Unix process pid: 10202, image: oracle@orcl (TNS V1-V3)

?

*** SERVICE NAME:(SYS$USERS) 2012-05-27 12:14:16.466

*** SESSION ID:(159.3) 2012-05-27 12:14:16.466

*** 2012-05-27 12:14:16.466

-- The following are current System-scope REDO Log Archival related

-- parameters and can be included in the database initialization file.

--

-- LOG_ARCHIVE_DEST=''

-- LOG_ARCHIVE_DUPLEX_DEST=''

--

-- LOG_ARCHIVE_FORMAT=%t_%s_%r.dbf

--

-- DB_UNIQUE_NAME="orcl"

--

-- LOG_ARCHIVE_CONFIG='SEND, RECEIVE, NODG_CONFIG'

-- LOG_ARCHIVE_MAX_PROCESSES=2

-- STANDBY_FILE_MANAGEMENT=MANUAL

-- STANDBY_ARCHIVE_DEST=?/dbs/arch

-- FAL_CLIENT=''

-- FAL_SERVER=''

--

-- LOG_ARCHIVE_DEST_10='LOCATION=USE_DB_RECOVERY_FILE_DEST'

-- LOG_ARCHIVE_DEST_10='OPTIONAL REOPEN=300 NODELAY'

-- LOG_ARCHIVE_DEST_10='ARCH NOAFFIRM NOEXPEDITE NOVERIFY SYNC'

-- LOG_ARCHIVE_DEST_10='REGISTER NOALTERNATE NODEPENDENCY'

-- LOG_ARCHIVE_DEST_10='NOMAX_FAILURE NOQUOTA_SIZE NOQUOTA_USED NODB_UNIQUE_NAME'

-- LOG_ARCHIVE_DEST_10='VALID_FOR=(PRIMARY_ROLE,ONLINE_LOGFILES)'

-- LOG_ARCHIVE_DEST_STATE_10=ENABLE

--

-- Below are two sets of SQL statements, each of which creates a new

-- control file and uses it to open the database. The first set opens

-- the database with the NORESETLOGS option and should be used only if

-- the current versions of all online logs are available. The second

-- set opens the database with the RESETLOGS option and should be used

-- if online logs are unavailable.

-- The appropriate set of statements can be copied from the trace into

-- a script file, edited as necessary, and executed when there is a

-- need to re-create the control file.

--

--??? Set #1. NORESETLOGS case

--

-- The following commands will create a new control file and use it

-- to open the database.

-- Data used by Recovery Manager will be lost.

-- Additional logs may be required for media recovery of offline

-- Use this only if the current versions of all online logs are

-- available.

-- After mounting the created controlfile, the following SQL

-- statement will place the database in the appropriate

-- protection mode:

-- ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS NOARCHIVELOG

?? MAXLOGFILES 16

?? MAXLOGMEMBERS 3

?? MAXDATAFILES 100

?? MAXINSTANCES 8

?? MAXLOGHISTORY 292

LOGFILE

?GROUP 1 '/home/oracle/oradata/orcl/redo01.log' SIZE 50M,

?GROUP 2 '/home/oracle/oradata/orcl/redo02.log' SIZE 50M,

?GROUP 3 '/home/oracle/oradata/orcl/redo03.log' SIZE 50M

-- STANDBY LOGFILE

DATAFILE

?'/home/oracle/oradata/orcl/system01.dbf',

?'/home/oracle/oradata/orcl/undotbs01.dbf',

?'/home/oracle/oradata/orcl/sysaux01.dbf',

?'/home/oracle/oradata/orcl/users01.dbf',

?'/home/oracle/oradata/orcl/example01.dbf'

CHARACTER SET WE8ISO8859P1

;

-- Commands to re-create incarnation table

-- Below log names MUST be changed to existing filenames on

-- disk. Any one log file from each branch can be used to

-- re-create incarnation records.

-- ALTER DATABASE REGISTER LOGFILE '/home/oracle/flash_recovery_area/ORCL/archivelog/2012_05_27/o1_mf_1_1_%u_.arc';

-- ALTER DATABASE REGISTER LOGFILE '/home/oracle/flash_recovery_area/ORCL/archivelog/2012_05_27/o1_mf_1_1_%u_.arc';

-- Recovery is required if any of the datafiles are restored backups,

-- or if the last shutdown was not normal or immediate.

RECOVER DATABASE

-- Database can now be opened normally.

ALTER DATABASE OPEN;

-- Commands to add tempfiles to temporary tablespaces.

-- Online tempfiles have complete space information.

-- Other tempfiles may require adjustment.

ALTER TABLESPACE TEMP ADD TEMPFILE '/home/oracle/oradata/orcl/temp01.dbf'

??? SIZE 22020096 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M;

-- End of tempfile additions.

--

--??? Set #2. RESETLOGS case

--

-- The following commands will create a new control file and use it

-- to open the database.

-- Data used by Recovery Manager will be lost.

-- The contents of online logs will be lost and all backups will

-- be invalidated. Use this only if online logs are damaged.

-- After mounting the created controlfile, the following SQL

-- statement will place the database in the appropriate

-- protection mode:

-- ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS NOARCHIVELOG

?? MAXLOGFILES 16

?? MAXLOGMEMBERS 3

?? MAXDATAFILES 100

?? MAXINSTANCES 8

?? MAXLOGHISTORY 292

LOGFILE

?GROUP 1 '/home/oracle/oradata/orcl/redo01.log' SIZE 50M,

?GROUP 2 '/home/oracle/oradata/orcl/redo02.log' SIZE 50M,

?GROUP 3 '/home/oracle/oradata/orcl/redo03.log' SIZE 50M

-- STANDBY LOGFILE

DATAFILE

?'/home/oracle/oradata/orcl/system01.dbf',

?'/home/oracle/oradata/orcl/undotbs01.dbf',

?'/home/oracle/oradata/orcl/sysaux01.dbf',

?'/home/oracle/oradata/orcl/users01.dbf',

?'/home/oracle/oradata/orcl/example01.dbf'

CHARACTER SET WE8ISO8859P1

;

-- Commands to re-create incarnation table

-- Below log names MUST be changed to existing filenames on

-- disk. Any one log file from each branch can be used to

-- re-create incarnation records.

-- ALTER DATABASE REGISTER LOGFILE '/home/oracle/flash_recovery_area/ORCL/archivelog/2012_05_27/o1_mf_1_1_%u_.arc';

-- ALTER DATABASE REGISTER LOGFILE '/home/oracle/flash_recovery_area/ORCL/archivelog/2012_05_27/o1_mf_1_1_%u_.arc';

-- Recovery is required if any of the datafiles are restored backups,

-- or if the last shutdown was not normal or immediate.

RECOVER DATABASE USING BACKUP CONTROLFILE

-- Database can now be opened zeroing the online logs.

ALTER DATABASE OPEN RESETLOGS;

-- Commands to add tempfiles to temporary tablespaces.

-- Online tempfiles have complete space information.

-- Other tempfiles may require adjustment.

ALTER TABLESPACE TEMP ADD TEMPFILE '/home/oracle/oradata/orcl/temp01.dbf'

??? SIZE 22020096 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M;

-- End of tempfile additions.

E,獲取創建控制文件的腳本,根據數據庫不同狀況,可以選擇是使用RESETLOGS(沒有重做日志的情況)/NORESETLOGS(有重做日志的情況)來重建控制文件,下面為NORESETLOGS.

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS NOARCHIVELOG

?? MAXLOGFILES 16

?? MAXLOGMEMBERS 3

?? MAXDATAFILES 100

?? MAXINSTANCES 8

?? MAXLOGHISTORY 292

LOGFILE

?GROUP 1 '/home/oracle/oradata/orcl/redo01.log' SIZE 50M,

?GROUP 2 '/home/oracle/oradata/orcl/redo02.log' SIZE 50M,

?GROUP 3 '/home/oracle/oradata/orcl/redo03.log' SIZE 50M

-- STANDBY LOGFILE

DATAFILE

?'/home/oracle/oradata/orcl/system01.dbf',

?'/home/oracle/oradata/orcl/undotbs01.dbf',

?'/home/oracle/oradata/orcl/sysaux01.dbf',

?'/home/oracle/oradata/orcl/users01.dbf',

?'/home/oracle/oradata/orcl/example01.dbf'

CHARACTER SET WE8ISO8859P1;

RECOVER DATABASE

ALTER DATABASE OPEN;

ALTER TABLESPACE TEMP ADD TEMPFILE '/home/oracle/oradata/orcl/temp01.dbf'

??? SIZE 22020096 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M;

F,運行腳本重建控制文件

SQL> set echo on

SQL> STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS NOARCHIVELOG

?? MAXLOGFILES 16

?? MAXLOGMEMBERS 3

?? MAXDATAFILES 100

?? MAXINSTANCES 8

?? MAXLOGHISTORY 292

LOGFILE

?GROUP 1 '/home/oracle/oradata/orcl/redo01.log' SIZE 50M,

?GROUP 2 '/home/oracle/oradata/orcl/redo02.log' SIZE 50M,

?GROUP 3 '/home/oracle/oradata/orcl/redo03.log' SIZE 50M

-- STANDBY LOGFILE

DATAFILE

?'/home/oracle/oradata/orcl/system01.dbf',

?'/home/oracle/oradata/orcl/undotbs01.dbf',

?'/home/oracle/oradata/orcl/sysaux01.dbf',

?'/home/oracle/oradata/orcl/users01.dbf',

?'/home/oracle/oradata/orcl/example01.dbf'

CHARACTER SET WE8ISO8859P1;

RECOVER DATABASE

ALTER DATABASE OPEN;

ALTER TABLESPACE TEMP ADD TEMPFILE '/home/oracle/oradata/orcl/temp01.dbf'

??? SIZE 22020096 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M;

ORACLE instance started.

Total System Global Area 167772160 bytes

Fixed Size???????????????? 1218316 bytes

Variable Size???????????? 71305460 bytes

Database Buffers????????? 92274688 bytes

Redo Buffers?????????????? 2973696 bytes

SQL>? 2?? 3?? 4?? 5?? 6?? 7?? 8?? 9? 10? 11? 12? 13? 14? 15? 16? 17? 18

Control file created.

SQL> Media recovery complete.

SQL>

Database altered.

SQL>? 2

Tablespace altered.

?

?

Oracle控制文件操作


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 免费福利在线观看 | 日本高清香蕉色视频在线观看 | 99久久久久久久 | 妞干网av | 日本免费成人 | 久久成人一区 | 欧美在线另类 | 日韩三级伦理在线 | 欧美福利视频在线观看 | 精品久久久久久蜜臂a∨ | 99中文在线 | 欧美日韩亚洲精品国产色 | 久久九九99热这里只有精品 | 欧美日韩亚洲一区 | 中文字幕 国产 | 手机看片高清日韩精品 | 人人爱天天做夜夜爽88 | 黄片一级毛片 | 精品久久久久久久久久久 | 手机看片国产免费现在观看 | k8久久久一区二区三区 | 国产三级网址 | 黄色在线观看 | 五月婷婷亚洲 | 亚洲伊人成色综合网 | 日本黄色免费片 | 精品欧美一区二区三区久久久 | 国产AV亚洲精品久久久久 | 黄色短视频在线免费观看 | 99精品国产一区二区青青牛奶 | 国产成人综合欧美精品久久 | 日韩精品视频在线 | 香蕉久久网| 九一免费版在线观看 | a级欧美片免费观看 | 亚洲资源在线 | 色哟哟哟在线精品观看视频 | 伊人狠狠 | 婷婷在线网站 | 免费看淫片 | 亚洲视频在线视频 |