oracle 18c dg搭建手册(rman duplicate方式)
其他文档:
oracle18cdg搭建手册完整版(dbca方式)
在安装Oracle18cRAC全网最详细手册
oracle18c单实例安装文档
环境说明本文档仅用于测试搭建Oracle18cDG,没有任何性能参数方面的调整。而且故意将主备库的数据文件存放目录设置不同,为了之后一些问题的测试。
主库
备库
IP地址
192.168.1.166
192.168.1.167
数据库SID
leidb
leidb
DB_UNIQUE_NAME
leidb_p
leidb_s
数据文件路径
/u01/app/oracle/oradata
/u01/app/oracle/oradata_s
归档路径
/u01/archivelog
/u01/archivelog_s
主备库的数据库安装主库安装数据库软件和创建数据库
备库只需要安装数据库软件和创建相关目录即可
操作系统环境配置如果没有特殊说明,下面每一步都需要在主备库上执行。
配置hostcat/etc/添加用户和组
/usr/sbin/groupadd-g54321oinstall/usr/sbin/groupadd-g54322dba/usr/sbin/groupadd-g54323oper/usr/sbin/useradd-u54321-goinstall-Gdba,operoracle
设置密码
:BADPASSWORD:Thepasswordisshorterthan8charactersRetypenewpassword:passwd:allauthenticationtokensupdatedsuccessfully.关闭防火墙和selinux
防火墙:
'/etc/systemd/system//'rm'/etc/systemd/system/'
SELINUX:
cat/etc/selinux/configSELINUX=cantakeoneofthesethreevalues:=cantakeoneofthesetwovalues:=targeted创建目录
mkdir-p/u01/app/oracle/product/18.3.0/db_1chown-Roracle:oinstall/u01/chmod-R775/u01/配置用户环境变量·ORACLE用户
在/home/oracle/.bash_profile中添加以下内容
ORACLE_SID=leidb;exportORACLE_SIDORACLE_BASE=/u01/app/oracle;exportORACLE_BASEORACLE_HOME=$ORACLE_BASE/product/18.3.0/db_1;exportORACLE_HOMEPATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin:$ORA_CRS_HOME/binPATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/binexportPATHLD_LIBRARY_PATH=$ORACLE_HOME/libLD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/libLD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/libexportLD_LIBRARY_PATHCLASSPATH=$ORACLE_HOME/JRECLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlibCLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlibCLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlibexportCLASSPATHexportTEMP=/tmpexportTMPDIR=/tmpumask022修改资源限制修改/etc/security/cat/etc/security/024oraclehardnofile65536oraclesoftstack10240oraclehardstack32768oraclesoftmemlock3145728oraclehardmemlock3145728EOF修改内核参数
vi/etc/=6815744=25032000100128=4096=1073741824=4398046511104_on_oops=1_default=262144_max=4194304_default=262144_max=1048576_filter=2_filter=2=1048576_local_port_range=900065500
生效
sysctl-p安装必要的包
在Redhat7.*镜像文件中没有了compat-libstdc++-33包,需要单独下载。
yuminstallbinutilscompat-libstdc++-33gccgcc-c++++-安装数据库软件
由于从12.2开始,Oracle将采用ZIP格式直接将Oracle_HOME下的内容直接压缩到一个ZIP格式文件中,所以直接解压到ORACLE_HOME下即可。例如:
[oracle@lei-psoftware]$unzip-d/u01/app/oracle/product/18.3.0/db_1/_180000_db_[oracle@lei-psoftware]$cd/u01/app/oracle/product/18.3.0/db_1/[oracle@lei-pdb_1]$./runInstaller
如果是单实例则选择第一个
选择企业版
修改为新的ORACLE_BASE目录
默认
安装前检查,内存不符合要求。18c建议的内存为8G
正在安装
执行脚本
DBCA创建数据库仅在主库执行即可。
启用归档并设置归档目录
主库启动FORCELOGGING在CDBroot中执行以下命令
SQLalterdatabaseforcelogging;_loggingfromv$database;FORCE_LOGGING--------------------------------------------------------------------------------YES主库启动归档模式
SQLshutdownimmediateSQLstartupmountSQLalterdatabasearchivelog;Databasealtered.
修改归档目录(建议修改),备库为:/u01/archive_s
SQLaltersystemsetlog_archive_dest_1='location=/u01/archivelog'scope=both;--直接生效bledArchivedestination/u01/archivelogOldestonlinelogsequence2Nextlogsequencetoarchive4Currentlogsequence4SQLalterdatabaseopen;Databasealtered.在主库添加standbyredolog
在CDBroot中添加standbyredolog,实际上在主库上是用不到standbyredolog的。但是为了方便以后的switchover等操作就直接添加了,而且后面搭建备库时备库也会被创建。
SQLshowcon_nameCON_NAME------------------------------CDB$ROOTSQLselectgroupMEMBERSBYTES------------------------------11209715200--可以看到默认大小以及是200M了,一起是50M。21209715200SQLSQLselectmemberfromv$logfile;MEMBER-------------------------------------------------------------------------------------------------------/u01/app/oracle/oradata/LEIDB//u01/app/oracle/oradata/LEIDB//u01/app/oracle/oradata/LEIDB/
--要比onlineredolog多一组
alterdatabaseaddstandbylogfile'/u01/app/oracle/oradata/LEIDB/'size200M;alterdatabaseaddstandbylogfile'/u01/app/oracle/oradata/LEIDB/'size200M;alterdatabaseaddstandbylogfile'/u01/app/oracle/oradata/LEIDB/'size200M;alterdatabaseaddstandbylogfile'/u01/app/oracle/oradata/LEIDB/'size200M;SQLselectmemberfromv$logfile;MEMBER--------------------------------------------------------------------------------/u01/app/oracle/oradata/LEIDB//u01/app/oracle/oradata/LEIDB//u01/app/oracle/oradata/LEIDB//u01/app/oracle/oradata/LEIDB//u01/app/oracle/oradata/LEIDB//u01/app/oracle/oradata/LEIDB//u01/app/oracle/oradata/LEIDB/在主库创建pfile文件并修改pfile内容
SQLcreatepfile='/tmp/'fromspfile;Filecreated.在pfile中添加如下内容:[oracle@host1dbs]$vi/u01/app/oracle/product/18.1.0/dbhome_1/dbs/*.db_unique_name='leidb_p'*.log_archive_config='dg_config=(leidb_p,leidb_s)'*.log_archive_dest_1='location=/u01/archivelogvalid_for=(all_logfiles,all_roles)db_unique_name=leidb_p'*.log_archive_dest_2='service=leidb_saffirmsyncvalid_for=(online_logfiles,primary_role)db_unique_name=leidb_s'*.log_archive_dest_state_1=enable*.log_archive_dest_state_2=enable*.standby_file_management='auto'*.fal_server='leidb_s'*.log_file_name_convert='/u01/app/oracle/oradata_s/LEIDB','/u01/app/oracle/oradata/LEIDB'--如果你的环境主备库数据文件目录相同,可以不需要这两个参数。*.db_file_name_convert='/u01/app/oracle/oradata_s/LEIDB','/u01/app/oracle/oradata/LEIDB'
注意:db_file_name_convert和log_file_name_convert指定的目录先后顺序,前面一个是目标库的数据文件(日志)存放目录,后面一个是源库(本地库)的数据文件(日志)存放目录。
用新参数重启数据库:
SQLshutdownimmediateSQLcreatespfilefrompfile='/tmp/';SQLstartup主备库配置静态监听并启动
这里最好通过netmgr来配置,因为监听文件对格式要求比较高。
[oracle@lei-padmin]$_LIST_LISTENER=(SID_LIST=(SID_DESC=(GLOBAL_DBNAME=leidb)(ORACLE_HOME=/u01/app/oracle/product/18.3.0/db_1)(SID_NAME=leidb)))LISTENER=(DESCRIPTION_LIST=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=lei-p)(PORT=1521)))(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521))))ADR_BASE_LISTENER=/u01/app/oracle
重启监听或直接reload
[oracle@host1admin]$lsnrctlreloadLSNRCTLforLinux::41:07Copyright(c)1991,2017,(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=host1)(PORT=1521)))Thecommandcompletedsuccessfully主备库配置
[oracle@host1admin]$cat/u01/app/oracle/product/18.1.0/dbhome_1/network/admin/主备库添加以下内容:LEIDB_S=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=lei-s)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=leidb)))LEIDB_P=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=lei-p)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=leidb)))
配置完成后,使用tnsping命令检查是否能ping通
[oracle@host1admin]$tnspingpdbcndba_pTNSPingUtilityforLinux::45:32Copyright(c)1997,2017,:UsedTNSNAMESadaptertoresolvethealiasAttemptingtocontact(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.88)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=cndba)))OK(30msec)[oracle@lei-padmin]$tnspingleidb_sTNSPingUtilityforLinux::23:33Copyright(c)1997,2018,:/u01/app/oracle/product/18.3.0/db_1/network/admin/(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=lei-s)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=leidb)))OK(10msec)将主库的口令文件copy到备库
这里主备库的CDB实例相同,如果不同,可以使用orapwd命令重建。
[oracle@lei-pdbs]$scporapwleidblei-s:/u01/app/oracle/product/18.3.0/db_1/dbs/将主库的参数文件copy到备库并修改
--主库操作
scp/tmp/:/tmp/
--备库修改参数文件需要修改的内容:
*.control_files='/u01/app/oracle/oradata_s/LEIDB/','/u01/app/oracle/fast_recovery_area/LEIDB/'*.db_unique_name='leidb_s'*.log_archive_config='dg_config=(leidb_p,leidb_s)'*.log_archive_dest_1='location=/u01/archivelog_svalid_for=(all_logfiles,all_roles)db_unique_name=leidb_s'*.log_archive_dest_2='service=leidb_paffirmsyncvalid_for=(online_logfiles,primary_role)db_unique_name=leidb_p'*.log_archive_dest_state_1=enable*.log_archive_dest_state_2=enable*.standby_file_management='auto'*.fal_server='leidb_p'*.log_file_name_convert='/u01/app/oracle/oradata_s/LEIDB','/u01/app/oracle/oradata/LEIDB'*.db_file_name_convert='/u01/app/oracle/oradata_s/LEIDB','/u01/app/oracle/oradata/LEIDB'pfile参数文件的全部内容
[oracle@lei-sadmin]$cat/tmp/__data_transfer_cache_size=0leidb.__db_cache_size=1006632960leidb.__inmemory_ext_roarea=0leidb.__inmemory_ext_rwarea=0leidb.__java_pool_size=16777216leidb.__large_pool_size=33554432leidb.__oracle_base='/u01/app/oracle'fromV$DATAGUARD_PROCESS;NAMETYPROLEACTIONGROUP------------------------------------------------------MRP0KSBmanagedrecoveryAPPLYING_LOG012rowsselected.
注:v$managed_standby视图已被V$DATAGUARD_PROCESS取代。
推荐阅读
-
以少胜多!进攻江山县城,追歼南逃之敌
百年大党,风华正茂!今年是中国共产党成立100周年!值此之际,解放军报微信“熄灯号”特别推出“四史微讲堂”栏目,讲述红色经典,弘扬先辈精神。四史知识问答20世纪60年代,为创新发展符合我军特点的练兵路子,部队迫切需要探索有效练兵方法来提高训练水平。时任某部副连长郭兴福结合打仗中积累下来的经验,创造出...
-
退伍军人误打误撞,16款帕萨特1.8T御尊版釉金,科技感超赞
我以前是当兵的,开过各种类型的车、工程机械!在某X炮当兵,不吹牛,真的什么类型的车都开过!退伍之后,到事业单位上班,同事都买了车,我也感觉必须买个车!其实15年的时候,我就想买别克的昂科威2.0T四驱精英版,车子大气,配置高,是一款安全性能好的SUV!结果后面别克居然出事了!断轴,我当时真的傻眼,看...
-
2014款 Porsche 保时捷 Panamera 4 3.0T 一年使用作业
作者:lewislm14年12月底拿的驾照,以前没想学车,因为上学时期骑电瓶车都睡着老妈也强烈拒绝我学车。后来自己做生意感觉太麻烦了,所以没办法,硬着头皮学了。还好4科一遍过奖励下自己,把存款都买了车子提车全款优惠了8个点,还是挺实惠的。当时在看吉博力和帕拉梅拉,但是吉博力的内饰做工和后排太差了,就...
-
26万买辆奔驰CLS300,卖家紧盯验车师的一举一动,这下全靠演技了
哈喽大家好,检车家老司机又和大家见面了,我是检车家铁头,因为当年修车在举升机下总被磕头,时间久了大家就都叫我铁头。经过各种努力,终于成为了检车家一枚二手车检测师。欢迎大家收看本期的二手车检测趣事。顺手给客户拨过去电话,约了上午9点看车,不过地点是在三百公里外的扬州,意味着我凌晨就要出发,好在这种模式...