oracle 归档设置
oracle 归档设置
可以用超级用户(INTERNAL)在SQLPLUS中使用命令ARCHIVE LOG LIST查看 ITPUB个人空间5s2n9}3H8^
SQL> archive log list ITPUB个人空间7Z0e'I,D n^G9I
Database log mode No Archive Mode
]-J4kDvn,d~0Automaticarchival Disabled ITPUB个人空间q:LQ,@7rz)~K2C
Archive destination /export/home/oracle/product/8.1.7/dbs/arch
i,\"]e_0Oldest online log sequence 28613 ITPUB个人空间A&B RtxoP\y
Current log sequence 28615
`!Yl,S8i1F0或者用: ITPUB个人空间7I2wb @S0k8fw"d2|
SQL> SELECT NAME,LOG_MODE FROM V$DATABASE; ITPUB个人空间#Qx*b{ D-q
ITPUB个人空间1D9F#O}b$V-es
NAME LOG_MODE
O$X3^emKP0-------- ------------ ITPUB个人空间f#u9B[Vg(q,l,Z*D
BIGSUN NOARCHIVELOG ITPUB个人空间/nXj1cHcZ4Mb
如看到如上情况,则证明是非归档(NOARCHIVELOG)模式。 ITPUB个人空间*uN"i*Wl j(V
4BcO;aYr-Qb2X0二、关闭数据库 ITPUB个人空间7cn$B AW(A Bs
通知相关人员后,发布如下命令关闭数据库:
T7{J)Bli)UOkP0SQL> shutdown immediate ITPUB个人空间Lm] tA N
2BS9~[5o*ala0三、设置相应的初始化参数
4w%jLae*F/R0参数文件一般存放在$ORACLE_HOME/dbs目录下,格式为:initSID.ora,其中SID为数据库名。可以使用VI命令进行编辑。 ITPUB个人空间;@ p;LWRbh
1、设置归档路径
deXt,ez0a)LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST参数
nl(]/Viex!z0这两个参数指明了归档日志存放的两个路径,如果只设置第一个,则归档日志只存放到一个路径。
3IH:q0s3O0例: ITPUB个人空间.pLR!S}
log_archive_dest=/disk1/archive
g*@2x7D7k"UeBM0log_archive_duplex_dest=/disk2/archive ITPUB个人空间 ?WSA4V]W%mV
ITPUB个人空间eZ w/S PQ2` H
b)LOG_ARCHIVE_DEST_n参数 ITPUB个人空间"[0Ck tM\b/iz
其中n为1-5的整数,必需从低到高设置,下面举例说明:
,Au9pD{3V"{E Rb'`0log_archive_dest_1="LOCATION=/archive MANDATORY REOPEN"
-M3N.]P:R0log_archive_dest_2="SERVICE=standby_db1 MANDATORY REOPEN=600" ITPUB个人空间y/sB,]K0ZKFo
log_archive_dest_3="LOCATION=/archive2 OPTIONAL"
NczI0S5\B(h0
'vR)tfn#T"|0LOCATION关键字说明是本机的一个目录,而SERVICE关键字说明是已经在Net8中进行了配置的其他数据库主机的别名。
!S"`:s*o%Na\:E r0 ITPUB个人空间c&yZ5j'Rv8U^@(j
MANDATORY关键字说明联机日志文件必须要成功归档到这个目录后才能被覆写(联机日志文件是重复使用的文件)。缺省为可选(OPTIONAL),即即使归档不成功也可以覆写。在设置时应该至少有一个本地(LOCATION)强制(MANDATORY)归档目录。
P.DA*V:Bq.r0
9Ciq3W ?0REOPEN关键字说明如果归档不成功时系统要重新尝试归档,缺省每300秒尝试一次直到成功。可以通过=n来指定尝试的时间间隔,如log_archive_dest_2中的时间间隔为600秒,而log_archive_dest_1中的时间间隔为300秒。
9o'|.U`C8XS%KO)S0
2v3s-Ecz5NI0a)和b)两种方式是排斥的,即只能设置其中的一种,a)和b)的不同之处在于: ITPUB个人空间:n h.v_7[o&S4V
a)最多只能设置2个归档路径,而b)最多可设置5个。
#e^.AVp Fz$K7so5Ng"{0a)中只能指定本地目录,b)中可指定远程服务目录。
_;g ti%f!?0如果使用a)方式,则log_archive_dest是强制(MANDATORY)归档目录,而log_archive_duplex_dest为可选(OPTIONAL)目录。 ITPUB个人空间d @@3cx4q+]
a)中不能使用REOPEN关键字。 ITPUB个人空间Qy!?M~8d&X G{;r[
所以推荐使用b)方式。
2Th1JM5H-Ci0 ITPUB个人空间3V"{1G|;Su
2、设置归档日志文件名格式 ITPUB个人空间;el7h*Q4nO1o T
例: ITPUB个人空间4Jn)E x'q/] aNj
log_archive_format=arch%S.arc
*TlHd@-CQ0其中%S为日志序列号,则生成的归档日志文件名为arch001.arc、arch002.arc等。
9|^EIi b_ g0
6bd!z ~-z03、设置最小归档成功数
'Ku [&T"A0例: ITPUB个人空间%a b l6f E-U m/F
log_archive_min_succeed_dest=2 ITPUB个人空间 xR!v&M f L
此参数说明至少有2个归档路径归档成功后才能覆写联机日志文件,此参数和归档路径参数联用。
:@U&K4l$M(Tpt0如归档路径参数设置为:
Y|S L m|tb^/d0log_archive_dest_1="LOCATION=/archive MANDATORY REOPEN"
&YR)NbK+J0log_archive_dest_2="SERVICE=standby_db1 OPTIONAL" ITPUB个人空间!|4G,kao0JCpen~
log_archive_dest_3="LOCATION=/archive2 OPTIONAL" ITPUB个人空间sZ8@T%iJ'GRV
则log_archive_dest_1必须归档成功(MANDATORY),log_archive_dest_2、 log_archive_dest_3中必须有一个归档成功(log_archive_min_succeed_dest=2)后才能覆写联机日志文件。同样,如果log_archive_dest_n中的MANDATORY关键字个数大于log_archive_min_succeed_dest,则 log_archive_min_succeed_dest的设置不起作用。 ITPUB个人空间mXg&Mh%T'y6o
*?7?F ^7A04、控制归档路径是否可用 ITPUB个人空间kKHt(}yi
例: ITPUB个人空间lv b)[!t
log_archive_dest_state_1=DEFER ITPUB个人空间y9R*FJ c;M
log_archive_dest_state_2=ENABLE ITPUB个人空间b$aTe jA4m+o
此参数和log_archive_dest_n参数配对使用,缺省值为ENABLE,如果想停止使用一个归档目录,只需将其对应的log_archive_dest_state_n参数值设置为DEFER。 ITPUB个人空间$HrKjXU
qH&vZNnbN9I05、实现自动归档(可选)
#P8A2|C Y5M.t0log_archive_start=true
f/^H&_ S)V2j0log_archive_max_processes=2 ITPUB个人空间"\$M6ZC o&xo#p,y
在ORACLE中,自动归档的进程名为ARC0、ARC1等,log_archive_start参数说明是否采用自动归档,值为true表示采用,为 false时必须采用命令来手工备份。log_archive_max_processes表示在log_archive_start为true时运行几个归档进程来完成归档工作,取值范围为1-10。
<手工设置自动归档
x0{7a r)G Ak n0 1.archive log start.
6G M] a+a]U0 临时把自动归档打开,如果要永久自动归档,需要设置参数 log_archive_start
altersystemsetlog_archive_start=true.
*lBBowXt-NM&\X D0 无法修改指定的初始化参数,因为log_archive_start是个静态参数.ITPUB个人空间} z|n/w4r
正确的方法
)\l*d-P3QL+x0 altersystemsetlog_archive_start=true scope=spfile;ITPUB个人空间3i"OFH.|/[)@Y
先在实例参数文件中改,然后当实例重新加载参数文件的时候生效。>
多归档进程ITPUB个人空间"sl#^IRjq
增加或者减少归档进程,修改参数:log_archive_max_processesITPUB个人空间3u)| ]O @+t%^6xY
Altersystemsetlog_archive_max_processes=2
实例启动后激活自动归档
!\;e4_uYtZ,N0 Altersystemarchive log start.这是个sql命令,遵循oracle sql标准的命令,可以在oracle的一切环境下使用,如JDBC。
;?hXP OK$T0 在sqlplus中直接使用 archive log start. 叫做sqlplus命令,在sqlplus工具下使用的。
手动归档:
l5WE5t.Va%D S R3B0 Altersystemarchive log current.ITPUB个人空间rTvs o/z
)
G9^l8n `QS/R0四、更改数据库运行模式
FI6_s!^0在SQLPLUS中执行命令: ITPUB个人空间 }7[r P;zNc
SQL> startup mount ITPUB个人空间(U rN#P-m9B|#x
SQL>alterdatabase archivelog; ITPUB个人空间yF;RL[7d1nv-]
SQL>alterdatabase open;
1x`Aw^ S9vyR0
$Wd![?-p2_&FY0至此,模式转化工作已经大功告成。但需要注意的是,由于更改了数据库结构,如有数据库安全方面的需要,必须关闭数据库并完全备份。
\ eg;_)]u(g0*.log_archive_dest_2="LOCATION=D:\oracle\product\10.1.0\arc2" ITPUB个人空间 D1iw+R1u"VJm"_
*.log_archive_max_processes=2
但是如果在10g中也更改这些参数,数据库重启时会有如下提示:
Z3Do;D,N0ORA-32004: obsolete and/or deprecated parameter(s) specified
但是如果在10g中也更改这些参数,数据库会不能启动,如下提示:ITPUB个人空间P8^jD6u+M\"WA
ORA-32004: obsolete and/or deprecated parameter(s) specified
5@.FdZj5}0ORA-19905: log_archive_format must contain %s, %t and %r
浙公网安备 33010602011771号