在单机上创建物理的Oracle9i standby数据库

2016-02-19 17:25 5 1 收藏

今天图老师小编要跟大家分享在单机上创建物理的Oracle9i standby数据库,精心挑选的过程简单易学,喜欢的朋友一起来学习吧!

【 tulaoshi.com - 编程语言 】

  说明;Oracle9i数据库的Data Guard 特性确保对数据进行完整的保护,是Oracle 9i的一个关键特性之一.Data Guard可以创建物理的Standby数据库,也可以创建逻辑的Standby数据库,还可以混合使用,灵活性比较强.这个文档是Fenng练习时候记下来的东西,谈不上是什么心得.*这不过是一份安装过程中的笔记而已* 如果对这个有更高的期望,或者想得到关于Oracle数据库的data guard 和Standby的更多信息,请参考官方的文档.

  系统环境:Windows 2000 专业版 SP3 512M 内存

  现有的数据库实例(Primary)名字:Demo

  预创建的Standby 数据库实例名字:Pstandby

  数据库版本信息:

  SQL select * from v$version;

  BANNER

  ----------------------------------------------------------------

  Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

  PL/SQL Release 9.2.0.1.0 - Production

  CORE 9.2.0.1.0 Production

  TNS for 32-bit Windows: Version 9.2.0.1.0 - Production

  NLSRTL Version 9.2.0.1.0 - Production

  准备工作

  首先确认Primary数据库是否在归档模式下

  SQL show user

  USER is "SYS"

  SQL

  SQL archive log list

  Database log mode Archive Mode

  Automatic archival Enabled

  Archive destination d:oracleoradatademoarchive

  Oldest online log sequence 42

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  Next log sequence to archive 44

  Current log sequence 44

  如果不在归档模式下,调整数据库。

  首先提交命令修改SPfile:

  SQLalter system set LOG_ARCHIVE_START=TRUE scope=spfile;

  然后关闭数据库实例

  SQLSHUTDOWN

  备份数据库

  SQLSTARTUP MOUNT

  SQLALTER DATABASE ARCHIVELOG;

  SQLALTER DATABASE OPEN;

  SQLSHUTDOWN IMMEDIATE

  备份

  1. Primary Database 需要做的准备工作:

  1.1 激活 Forced Logging

  SQL ALTER DATABASE FORCE LOGGING;

  1.2 设置本地归档目标

  SQL ALTER SYSTEM SET LOG_ARCHIVE_DEST_1='LOCATION=D:oracleoradataDEMOArchive' SCOPE=BOTH;

  此操作直接生效

  2.创建物理的Standby数据库

  2.1 标记出Primary数据库的数据文件

  SQL select name from v$datafile;

  NAME

  -----------------------------------------------------

  D:ORACLEORADATADEMOSYSTEM01.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

  11 rows selected.

  SQL

  2.2 关闭Instance 拷贝数据文件到既定目的地

  SQL SHUTDOWN IMMEDIATE;

  2.3 为Standby 数据库创建控制文件

  SQL ALTER DATABASE CREATE STANDBY CONTROLFILE

  AS 'C:DataGuardPstandbyDEMODEMOSTANDBY.CTL';

  要注意这个控制文件的名字不要和Primary的控制文件名字重复

  2.4 为Standby数据库准备初始化参数文件名字:

  SQL CREATE PFILE='C:DataGuardPstandbyDEMOinitpstandby' FROM SPFILE;

  2.5 设定初始化Physical Standby Database参数

  *.aq_tm_processes=1

  *.background_dump_dest='D:oracleadminDEMObdump'

  *.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 -SID Pstandby -STARTMODE manual

  2.7 Create a Server Parameter File for the Standby Database

  可参考执行如下操作:

  C:set oracle_sid=pstandby

  C:sqlplus /nolog

  SQL connect / as sysdba

  SQL CREATE SPFILE FROM PFILE='C:DataGuardPstandbyDEMOinitPstandby.ora';

  2.8 启动物理Standby数据库

  C:set oracle_sid=pstandby

  C:sqlplus /nolog

  SQL connect / as sysdba

  SQL STARTUP NOMOUNT;

  SQL ALTER DATABASE MOUNT STANDBY DATABASE;

  2.9 在Standby数据库上,初始化Log Apply 服务:

  SQL ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  2.10 激活到物理Standby数据库的归档

  SQL ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=Pstandby' SCOPE=BOTH;

  SQL ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE SCOPE=BOTH;

  2.11 启动远程归档

  SQL ALTER SYSTEM ARCHIVE LOG CURRENT;

  3.安装完的的验证:

  3.1在database, 查询V$ARCHIVED_LOG

  (其实也可以直接到相关目录下查看Log是否创建):

  SQL SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME

  2 FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

  SEQUENCE# FIRST_TIME NEXT_TIME

  ---------- ---------- ----------

  38 23-7? -02 23-7? -02

  39 23-7? -02 23-7? -02

  40 23-7? -02 23-7? -02

  41 23-7? -02 23-7? -02

  42 23-7? -02 23-7? -02

  3.2 在Primary数据库上,归档当前的Log

  SQL ALTER SYSTEM ARCHIVE LOG CURRENT;

  3.3 验证是否收到:

  SQL SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME

  2 FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

  SEQUENCE# FIRST_TIME NEXT_TIME

  ---------- ---------- ----------

  38 23-7? -02 23-7? -02

  39 23-7? -02 23-7? -02

  40 23-7? -02 23-7? -02

  41 23-7? -02 23-7? -02

  42 23-7? -02 23-7? -02

  43 23-7? -02 23-7? -02

  3.4 验证是否新的归档Redo日志已经被应用:

  SQL select sequence#,applied from v$archived_log

  2 order by sequence#;

  SEQUENCE# APP

  ---------- ---

  38 YES

  39 YES

  40 YES

  41 YES

  42 YES

  43 YES

  OK.表明我们还是成功的。暂时告一段落。

  参考文档

  Oracle Data Guard Concepts and Administration

  Release 2 (9.2)

  Part Number A96653-02

  附加内容:

  primary数据库的Pfile内容:

  *.aq_tm_processes=1

  *.background_dump_dest='D:oracleadminDEMObdump'

  *.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

来源:http://www.tulaoshi.com/n/20160219/1615154.html

延伸阅读
Oracle9i为Oracle数据库引擎带来了一些令人吃惊的复杂性。它推出了许多新的内部特性,包括bitmap free lists,基于redo log的复制,动态SGA,还有一个可能是最重要的特性,可以支持多种块大小(Block Size)。 当你忽略全部的高级特性时,Oracle的工作就是传送数据,磁盘的I/O管理和调整对于任何的Oracle数据库都是一个重要...
本章介绍Oracle 9i网络中两种主要的成分数据库服务器和管理客户机的安装和配置过程。本章目的在于帮助读者掌握如何安装Oracle 9i以及如何配置Oracle 9i网络环境。 本书采用Windows 2000 Server作为安装的网络操作系统平台,数据库服务器采用Oracle 9i Database for Windows 2000的企业版。 2.1.1 安装的硬件环境需求 下列从...
1.3.1 Oracle 9i数据库 1. 企业版(Enterprise Edition) 2. 标准版(Standard Edition) 3. 个人版(Personal Edition) 1.3.2 Oracle 9i应用服务器 Oracle 9i应用服务器有两种版本。 1. 企业版(Enterprise Edition) 企业版主要用于构建互联网应用,面向企业级应用。 2. 标准版(Standard Edit...
(1)启动,一直到出现如图6.34所示的界面。 (2)出现如图6.35所示的界面。 (3)出现如图6.36所示的数据库选项的选项卡。 (4)出现如图6.37所示的界面。 (5)出现如图6.38所示的共享服务器模式的选项卡。 (6)切换到如图6.39所示的共享服务器模式的选项卡。 (7)返回图6.37所示界面。 (8...

经验教程

76

收藏

25
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部