MYSQL编程:在单机上创立物理的Oracle9i standby数...
有的时候,一些缺失的功能可以通过别的办法来实现,例如,在MySQL4.1以前,你可以通过使用join方法来替代子查询的功能。在MySQL5.0中,大多数关系型数据库所要求的功能已经都具备。oracle|创立|数据|数据库申明;Oracle9i数据库的DataGuard特征确保对数据举行完全的回护,是Oracle9i的一个关头特征之一.DataGuard能够创立物理的Standby数据库,也能够创立逻辑的Standby数据库,还能够夹杂利用,天真性对照强.这个文档是Fenng实习时分记上去的器材,谈不上是甚么心得.*这不外是一份安装过程当中的条记罢了* 假如对这个有更高的希冀,大概想失掉关于Oracle数据库的dataguard和Standby的更多信息,请参考官方的文档.
体系情况:Windows2000专业版 SP3 512M内存
现有的数据库实例(Primary)名字:Demo
预创立的Standby 数据库实例名字:Pstandby
数据库版本信息:
SQL>select*fromv$version;
BANNER
----------------------------------------------------------------
Oracle9iEnterpriseEditionRelease9.2.0.1.0-Production
PL/SQLRelease9.2.0.1.0-Production
CORE9.2.0.1.0Production
TNSfor32-bitWindows:Version9.2.0.1.0-Production
NLSRTLVersion9.2.0.1.0-Production
筹办事情
起首确认Primary数据库是不是在回档形式下
SQL>showuser
USERis"SYS"
SQL>
SQL>archiveloglist
DatabaselogmodeArchiveMode
AutomaticarchivalEnabled
Archivedestinationd:oracleoradatademoarchive
Oldestonlinelogsequence42
Nextlogsequencetoarchive44
Currentlogsequence44
假如不在回档形式下,调剂数据库。
起首提交命令修正SPfile:
SQL>altersystemsetLOG_ARCHIVE_START=TRUEscope=spfile;
然后封闭数据库实例
SQL>SHUTDOWN
备份数据库
SQL>STARTUPMOUNT
SQL>ALTERDATABASEARCHIVELOG;
SQL>ALTERDATABASEOPEN;
SQL>SHUTDOWNIMMEDIATE
备份
1.PrimaryDatabase必要做的筹办事情:
1.1激活ForcedLogging
SQL>ALTERDATABASEFORCELOGGING;
1.2设置当地回档方针
SQL>ALTERSYSTEMSETLOG_ARCHIVE_DEST_1=LOCATION=D:oracleoradataDEMOArchiveSCOPE=BOTH;
此操纵间接失效
2.创立物理的Standby数据库
2.1标志出Primary数据库的数据文件
SQL>selectnamefromv$datafile;
NAME
-----------------------------------------------------
D:ORACLEORADATADEMOYSTEM01.DBF
D:ORACLEORADATADEMOUNDOTBS01.DBF
D:ORACLEORADATADEMOCWMLITE01.DBF
D:ORACLEORADATADEMODRSYS01.DBF
D:ORACLEORADATADEMOEXAMPLE01.DBF
D:ORACLEORADATADEMOINDX01.DBF
D:ORACLEORADATADEMOODM01.DBF
D:ORACLEORADATADEMOTOOLS01.DBF
D:ORACLEORADATADEMOUSERS01.DBF
D:ORACLEORADATADEMOXDB01.DBF
D:ORACLEORADATADEMOOEM_REPOSITORY.DBF
11rowsselected.
SQL>
2.2封闭Instance拷贝数据文件到既定目标地
SQL>SHUTDOWNIMMEDIATE;
2.3为Standby数据库创立把持文件
SQL>ALTERDATABASECREATESTANDBYCONTROLFILE
ASC:DataGuardPstandbyDEMODEMOSTANDBY.CTL;
要注重这个把持文件的名字不要和Primary的把持文件名字反复
2.4为Standby数据库筹办初始化参数文件名字:
SQL>CREATEPFILE=C:DataGuardPstandbyDEMOinitpstandbyFROMSPFILE;
2.5设定初始化PhysicalStandbyDatabase参数
*.aq_tm_processes=1
*.background_dump_dest=D:oracleadminDEMOdump
*.compatible=9.2.0.0.0
*.control_files=C:DataGuardPstandbyDEMODEMOSTANDBY.CTL
*.core_dump_dest=D:oracleadminDEMOcdump
*.db_block_size=8192
*.db_cache_size=19922944
*.db_domain=
*.db_file_multiblock_read_count=32
*.db_name=DEMO
*.dispatchers=(PROTOCOL=TCP)(SERVICE=DEMOXDB)
*.fast_start_mttr_target=300
*.hash_area_size=1048576
*.hash_join_enabled=TRUE
*.instance_name=pstandby
*.java_pool_size=20971520
*.job_queue_processes=10
*.large_pool_size=7340032
*.log_archive_dest_1=location=d:oracleoradatademoarchive
*.log_archive_start=TRUE
*.open_cursors=300
*.optimizer_mode=FIRST_ROWS
*.pga_aggregate_target=17825792
*.processes=150
*.query_rewrite_enabled=TRUE
*.remote_login_passwordfile=EXCLUSIVE
*.shared_pool_size=33554432
*.sort_area_size=1048576
*.star_transformation_enabled=TRUE
*.timed_statistics=TRUE
*.undo_management=AUTO
*.undo_retention=10800
*.undo_tablespace=UNDOTBS1
*.user_dump_dest=D:oracleadminDEMOudump
lock_name_space=pstandby
standby_file_management=AUTO
remote_archive_enable=TRUE
standby_archive_dest=C:DataGuardPstandbyDEMOArchive
db_file_name_convert=(D:oracleoradataDEMO,C:DataGuardPstandbyDEMO)
log_file_name_convert=(D:oracleoradataDEMO,C:DataGuardPstandbyDEMO)
log_archive_dest_1=(LOCATION=C:DataGuardPstandbyDEMOArchive)
全部操纵的过程当中,简单呈现毛病的中央几近都会合在此处。必需仔细细心的看待这个文件。标志为玄色的中央是必要举行修正的。
2.6创立一个Windows服务
WINNT>oradim-NEW-SIDPstandby-STARTMODEmanual
2.7CreateaServerParameterFilefortheStandbyDatabase
可参考实行以下操纵:
C:>setoracle_sid=pstandby
C:>sqlplus/nolog
SQL>connect/assysdba
SQL>CREATESPFILEFROMPFILE=C:DataGuardPstandbyDEMOinitPstandby.ora;
2.8启植物理Standby数据库
C:>setoracle_sid=pstandby
C:>sqlplus/nolog
SQL>connect/assysdba
SQL>STARTUPNOMOUNT;
SQL>ALTERDATABASEMOUNTSTANDBYDATABASE;
2.9在Standby数据库上,初始化LogApply服务:
SQL>ALTERDATABASERECOVERMANAGEDSTANDBYDATABASEDISCONNECTFROMSESSION;
2.10激活到物理Standby数据库的回档
SQL>ALTERSYSTEMSETLOG_ARCHIVE_DEST_2=SERVICE=PstandbySCOPE=BOTH;
SQL>ALTERSYSTEMSETLOG_ARCHIVE_DEST_STATE_2=ENABLESCOPE=BOTH;
2.11启动远程回档
SQL>ALTERSYSTEMARCHIVELOGCURRENT;
3.安装完的的考证:
3.1在database, 查询V$ARCHIVED_LOG
(实在也能够间接到相干目次下检察Log是不是创立):
SQL>SELECTSEQUENCE#,FIRST_TIME,NEXT_TIME
2FROMV$ARCHIVED_LOGORDERBYSEQUENCE#;
SEQUENCE#FIRST_TIMENEXT_TIME
------------------------------
3823-7?-0223-7?-02
3923-7?-0223-7?-02
4023-7?-0223-7?-02
4123-7?-0223-7?-02
4223-7?-0223-7?-02
3.2在Primary数据库上,回档以后的Log
SQL>ALTERSYSTEMARCHIVELOGCURRENT;
3.3考证是不是收到:
SQL>SELECTSEQUENCE#,FIRST_TIME,NEXT_TIME
2>FROMV$ARCHIVED_LOGORDERBYSEQUENCE#;
SEQUENCE#FIRST_TIMENEXT_TIME
------------------------------
3823-7?-0223-7?-02
3923-7?-0223-7?-02
4023-7?-0223-7?-02
4123-7?-0223-7?-02
4223-7?-0223-7?-02
4323-7?-0223-7?-02
3.4考证是不是新的回档Redo日记已被使用:
SQL>selectsequence#,appliedfromv$archived_log
2orderbysequence#;
SEQUENCE#APP
-------------
38YES
39YES
40YES
41YES
42YES
43YES
OK.标明我们仍是乐成的。临时告一段落。
参考文档
OracleDataGuardConceptsandAdministration
Release2(9.2)
PartNumberA96653-02
附加内容:
primary数据库的Pfile内容:
*.aq_tm_processes=1
*.background_dump_dest=D:oracleadminDEMOdump
*.compatible=9.2.0.0.0
*.control_files=D:oracleoradataDEMOCONTROL01.CTL,
D:oracleoradataDEMOCONTROL02.CTL,D:oracleoradataDEMOCONTROL03.CTL
*.core_dump_dest=D:oracleadminDEMOcdump
*.db_block_size=8192
*.db_cache_size=19922944
*.db_domain=
*.db_file_multiblock_read_count=32
*.db_name=DEMO
*.dispatchers=(PROTOCOL=TCP)(SERVICE=DEMOXDB)
*.fast_start_mttr_target=300
*.hash_area_size=1048576
*.hash_join_enabled=TRUE
*.instance_name=DEMO
*.java_pool_size=20971520
*.job_queue_processes=10
*.large_pool_size=7340032
*.log_archive_dest_1=location=d:oracleoradatademoarchive
*.log_archive_dest_2=SERVICE=PSTANDBY
*.log_archive_dest_state_2=ENABLE
*.log_archive_start=TRUE
*.open_cursors=300
*.optimizer_mode=FIRST_ROWS
*.pga_aggregate_target=17825792
*.processes=150
*.query_rewrite_enabled=TRUE
*.remote_login_passwordfile=EXCLUSIVE
*.shared_pool_size=33554432
*.sort_area_size=1048576
*.star_transformation_enabled=TRUE
*.timed_statistics=TRUE
*.undo_management=AUTO
*.undo_retention=10800
*.undo_tablespace=UNDOTBS1
*.user_dump_dest=D:oracleadminDEMOudump
创立过程当中的大概的毛病:待续
如果互联网服务提供商,支撑数据的云服务,或它们之间任一点网络被堵塞或中断,他们就会遇到与数据延迟或应用程序故障有关的问题。如果问题发生在企业内部,解决方案提供商可以排除故障找出原因。 再开发调试阶段和OLAP环境中,外键是可以建立的。新版本中加入了SETNULL和SETDEFAULT属性,能够提供能好的级联设置。 可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。 对一张百万级别的表建游标,同时又没有什么过滤条件,取得游标效率是如果直接SQL查询百万条数据;如果再对每条记录做处理,耗时将更长。 语句级快照和事务级快照终于为SQLServer的并发性能带来了突破。个人感觉语句级快照大家应该应用。事务级快照,如果是高并发系统还要慎用。如果一个用户总是被提示修改不成功要求重试时,会杀人的! 一个是把SQL语句写到客户端,可以使用DataSet进行加工; 对于微软系列的东西除了一遍遍尝试还真没有太好的办法
页:
[1]