双机热备实战完全手册.docx
- 文档编号:27911437
- 上传时间:2023-07-06
- 格式:DOCX
- 页数:13
- 大小:19.07KB
双机热备实战完全手册.docx
《双机热备实战完全手册.docx》由会员分享,可在线阅读,更多相关《双机热备实战完全手册.docx(13页珍藏版)》请在冰豆网上搜索。
双机热备实战完全手册
双机热备实战完全手册
10.0.0.11是我主服务器的ip,10.0.0.111是我从服务器的ip,testdbase是数据库的sid号,
操作系统的版本是RedHatLinux8.0数据库版本是Oracle9.2.0.1
1.建立oracle用户
[root@test2etc]#groupaddoinstall
[root@test2etc]#groupadddba
[root@test2etc]#useradd–goinstall–Gdbaoracle
2.设置oracle用户环境变量#主从服务器的环境变量最好一致
以下是一个oracle用户环境变量范本
[oracle@test2oracle]$more.bash_profile
exportLD_ASSUME_KERNEL=2.4.1#RedHatAS3.0必须加此参数
exportORACLE_BASE=/opt/oracle#根据实际情况设定ORACLE_BASE
exportORACLE_HOME=/opt/oracle/product/9.2.0#根据实际情况设定ORACLE_HOME
exportORACLE_SID=testdbase
exportORACLE_TERM=xterm
exportNLS_LANG=american_america.ZHS16GBK;#繁体中文字符集是ZHT16BIG5
exportORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:
/lib:
/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:
/usr/local/lib
exportLD_LIBRARY_PATH
exportPATH=$PATH:
$ORACLE_HOME/bin
CLASSPATH=$ORACLE_HOME/JRE:
$ORACLE_HOME/jlib:
$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:
$ORACLE_HOME/network/jlib:
$ORACLE_HOME/jdbc/lib/classes12.jar
exportCLASSPATH
JAVA_HOME=/usr/java/j2sdk1.4.1_02#根据实际情况设定JAVA_HOME的路径
exportJAVA_HOME
PATH=$PATH:
$JAVA_HOME:
$JAVA_HOME/bin:
$JAVA_HOME/jre:
$ORACLE_HOME/bin
exportPATH
umask022
3.安装java
4.建立.bash_profile相关文件夹
[root@test2etc]#chownoracle.oinstall–Rf/opt#将/opt目录的属主改为oracle.oinstall
[root@test2etc]#su–oracle
[oracle@test2oracle]$mkdir-p/opt/oracle/product/9.2.0/ocommon/nls/admin/data
[oracle@test2oracle]$mkdir-p/opt/oracle/product/9.2.0/lib
[oracle@test2oracle]$mkdir-p/opt/oracle/product/9.2.0/network/jlib
[oracle@test2oracle]$mkdir-p/opt/oracle/product/9.2.0/jdbc/lib/
5.在备用服务器上安装oracle
备用服务器在安装的时候不需要建库,只需安装Software
如果安装的是oracle9201版本,在安装到84%的时候,会有一个编译错误"Errorininvokingtargetinstallofmakefile/opt/oracle/product/9.2.0/ctx/lib/ins_ctx.mk",此时打开这个文
件:
$ORACLE_HOME/ctx/lib/env_ctx.mk,把"$(LDLIBFLAG)dl"加到如下位置:
INSO_LINK=-L$(CTXLIB)$(LDLIBFLAG)m$(LDLIBFLAG)dl$(LDLIBFLAG)sc_ca
$(LDLIBFLAG)sc_fa$(LDLIBFLAG)sc_ex$(LDLIBFLAG)sc_da$(LDLIBFLAG)sc_ut
$(LDLIBFLAG)sc_ch$(LDLIBFLAG)sc_fi$(LLIBCTXHX)$(LDLIBFLAG)c
-Wl,-rpath,$(CTXHOME)lib$(CORELIBS)然后按重试,就可以继续安装下去了。
。
。
如果主服务器的操作系统版本和目录结构和备用服务器一模一样,并且主服务器的ORACLE没有建库,可以直接将主服务器的$ORACLE_BASE、$ORACLE_HOME拷贝到备用服务器
6.查看主服务器数据库是否使用spfile#这一步可有可无
[oracle@cqcncdboracle]$sqlplus/nolog
SQL*Plus:
Release9.2.0.1.0-ProductiononWedJul2111:
54:
422004
Copyright(c)1982,2002,OracleCorporation.Allrightsreserved.
SQL>conn/assysdba;
Connected.
SQL>showparameterspfile
NAMETYPEVALUE
-----------------------------------------------------------------------------
spfilestring?
/dbs/spfile@.ora
7.在主服务器上将主数据库的数据文件、redolog、temp文件拷贝到备用服务器上(冷备份方式)
[oracle@cqcncdboracle]$sqlplus/nolog
SQL*Plus:
Release9.2.0.1.0-ProductiononWedJul2112:
03:
582004
Copyright(c)1982,2002,OracleCorporation.Allrightsreserved.
SQL>conn/assysdba;
Connected.
SQL>select*fromv$dbfile;
FILE#----------NAME--------------------------------------------------------------------------------
10
/opt/oracle/oradata/testdbase/xdb01.dbf
9
/opt/oracle/oradata/testdbase/users01.dbf
2
/opt/oracle/oradata/testdbase/undotbs01.dbf
FILE#----------NAME--------------------------------------------------------------------------------
8
/opt/oracle/oradata/testdbase/tools01.dbf
1
/opt/oracle/oradata/testdbase/system01.dbf
7
/opt/oracle/oradata/testdbase/odm01.dbf
FILE#----------NAME--------------------------------------------------------------------------------
6
/opt/oracle/oradata/testdbase/indx01.dbf
5
/opt/oracle/oradata/testdbase/example01.dbf
4
/opt/oracle/oradata/testdbase/drsys01.dbf
FILE#----------NAME--------------------------------------------------------------------------------
3
/opt/oracle/oradata/testdbase/cwmlite01.dbf
11
/opt/oracle/oradata/testdbase/TONG.dbf
12
/opt/oracle/oradata/testdbase/SPAPP.dbf
FILE#----------NAME--------------------------------------------------------------------------------
13
/opt/oracle/oradata/testdbase/WTSPALL.dbf
14
/opt/oracle/oradata/testdbase/SZJLT.dbf
15
/opt/oracle/oradata/testdbase/JLTGAME.dbf
15rowsselected.
SQL>select*fromv$logfile;
GROUP#STATUSTYPE------------------------MEMBER
--------------------------------------------------------------------------------
3ONLINE
/opt/oracle/oradata/testdbase/redo03.log
2ONLINE
/opt/oracle/oradata/testdbase/redo02.log
1ONLINE
/opt/oracle/oradata/testdbase/redo01.log
SQL>select*fromv$tempfile;
FILE#CREATION_CHANGE#CREATION_TS#RFILE#STATUSENABLED
------------------------------------------------------------------------
BYTESBLOCKSCREATE_BYTESBLOCK_SIZE
------------------------------------------
NAME
--------------------------------------------------------------------------------
1021ONLINEREADWRITE
22544384027520419430408192
/opt/oracle/oradata/testdbase/temp01.dbf
SQL>shutdownimmediate;
Databaseclosed.
Databasedismounted.
ORACLEinstanceshutdown.
SQL>exit
DisconnectedfromOracle9iEnterpriseEditionRelease9.2.0.1.0-Production
WiththePartitioning,OLAPandOracleDataMiningoptions
JServerRelease9.2.0.1.0-Production
将以上列出的文件拷贝到备用服务器相应的目录下,或者直接将/opt/oracle/oradata/testdbase/目录下所有的文件直接拷贝到备用服务器的/opt/oracle/oradata/testdbase/目录下
8.在主服务器打开主库数据库,修改为归档方式(如果主数据库已经是归档方式,则不用修改了)
手工在主服务器创建归档目录
$cd$ORACLE_BASE#$ORACLE_BASE所指向的目录是/opt/oracle/,可参看第4步的ORACLE用户环境变量的具体设置
$mkdir-poradata/testdbase/archive
[oracle@cqcncdbtestdbase]$sqlplus/nolog
SQL>conn/assysdba;
Connected.
SQL>startupmount;
SQL>alterdatabasearchivelog;
SQL>archivelogstart;
SQL>archiveloglist;
SQL>alterdatabaseopen;
SQL>altersystemsetLOG_ARCHIVE_DEST_1='LOCATION=/opt/oracle/oradata/testdbase/archive';
SQL>altersystemsetlog_archive_format='%t_%s.dbf'scope=spfile;
SQL>altersystemsetlog_archive_start=truescope=spfile;
重新启动数据库,使修改结果生效
SQL>shutdownimmediate;
察看归档模式
SQL>startup
SQL>archiveloglist;
DatabaselogmodeArchiveMode
AutomaticarchivalEnabled
Archivedestination/opt/oracle/oradata/testdbase/archive
Oldestonlinelogsequence565
Nextlogsequencetoarchive567
Currentlogsequence567
9.在主库上制作从库controlfile
SQL>ALTERDATABASECREATESTANDBYCONTROLFILEAS'/opt/oracle/product/9.2.0/dbs/control01.ctl';
Databasealtered.
将/opt/oracle/product/9.2.0/dbs/control01.ctl拷贝到备用服务器的/opt/oracle/oradata/testdbase/目录下,
10.配置主库和从库的tnsnames.ora
将主库的tnsnames.ora拷贝到从库相应的目录下
[oracle@test2admin]$vitnsnames.ora#编辑从库tnsnames.ora
我的主库和从库的tnsnames.ora如下:
#TNSNAMES.ORANetworkConfigurationFile:
/opt/oracle/product/9.2.0/network/admin/tnsnames.ora
#GeneratedbyOracleconfigurationtools.
DBSTANDBY=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=10.0.0.111)(PORT=1521))
)
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=testdbase)
)
)
DBPRIMARY=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=10.0.0.11)(PORT=1521))
)
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=testdbase)
)
)
TESTDBASE=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=10.0.0.11)(PORT=1521))
)
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=testdbase)
)
)
10.0.0.11是我主服务器的ip,10.0.0.111是我从服务器的ip,testdbase是数据库的sid号,
11.配置从库的listener.ora
将主库的listener.ora拷贝到从库相应的目录下
我的从库的listener.ora文件如下:
#LISTENER.ORANetworkConfigurationFile:
/opt/oracle/product/9.2.0/network/admin/listener.ora
#GeneratedbyOracleconfigurationtools.
LISTENER=
(DESCRIPTION_LIST=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC))
)
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=10.0.0.111)(PORT=1521))
)
)
)
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(SID_NAME=PLSExtProc)
(ORACLE_HOME=/opt/oracle/product/9.2.0)
(PROGRAM=extproc)
)
(SID_DESC=
(GLOBAL_DBNAME=testdbase)
(ORACLE_HOME=/opt/oracle/product/9.2.0)
(SID_NAME=testdbase)
)
)
主库和从库的listener.ora内容除了ip不同以外,别的都是一模一样的
12.启动从库的监听
[oracle@test2admin]$lsnrctlstart
LSNRCTLforLinux:
Version9.2.0.1.0-Productionon21-JUL-200414:
30:
46
Copyright(c)1991,2002,OracleCorporation.Allrightsreserved.
Starting/opt/oracle/product/9.2.0/bin/tnslsnr:
pleasewait...
TNSLSNRforLinux:
Version9.2.0.1.0-Production
Systemparameterfileis/opt/oracle/product/9.2.0/network/admin/listener.ora
Logmessageswrittento/opt/oracle/product/9.2.0/network/log/listener.log
Listeningon:
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
Listeningon:
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.0.0.111)(PORT=1521)))
Connectingto(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
STATUSoftheLISTENER
------------------------
AliasLISTENER
VersionTNSLSNRforLinux:
Version9.2.0.1.0-Production
StartDate21-JUL-200414:
30:
46
Uptime0days0hr.0min.0sec
TraceLeveloff
SecurityOFF
SNMPOFF
ListenerParameterFile/opt/oracle/product/9.2.0/network/admin/listener.ora
ListenerLogFile/opt/oracle/product/9.2.0/network/log/listener.log
ListeningEndpointsSummary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.0.0.111)(PORT=1521)))
ServicesSummary...
Service"PLSExtProc"has1instance(s).
Instance"PLSExtProc",statusUNKNOWN,has1handler(s)forthisservice...
Service"testdbase"has1instance(s).
Instance"testdbase",statusUNKNOWN,has1handler(s)forthisservice...
Thecommandcompletedsuccessfully
13.在主库上创建pfile,因为9i缺省使用spfile
sqlplus/nolog
SQL>conn/assysdba;
Connected.
SQL>createpfile='/op
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 双机 实战 完全 手册