- 浏览: 659412 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
HkEndless:
不好意思,请问这确定是回调机制吗。你的例子中只是将接口的实现类 ...
Spring CallBack回调机制介绍 -
hanmiao:
写的真乱啊,完全不知所云...
Java如何调用可执行文件和批处理命令 -
junia_1:
junia_1 写道 shock: ...
为什么要使用EJB -
junia_1:
shock:
为什么要使用EJB -
coollifer:
不错
SQL Server数据导入到Oracle中的方法
运行Data Guard的条件
1、 在主库和从库的所有机器上必须安装同一个版本的Oracle企业版。
2、 主库必须运行在归档模式下。
3、 主库和从库的操作系统必须一样(允许版本不同),从库可以使用与主库不同的目录结构。
4、 主从库硬件系统的体系结构必须相同。比如:主库运行在64位的Sun Sparc系统上,如果从库是32位的Linux Intel系统就不允许。主从库硬件的配置可以不同,比如:CPU数量、内存大小、存储配置等。
5、 主从库可以是单实例的数据库,也可以是多实例的RAC数据库。
6、 每个主从库必须有它自己的控制文件。
7、 如果把主从库放在了一个系统里,则必须调整初始化参数。
8、 只要使用Data Guard就要保持主库是FORCE LOGGING模式,如果在主库上使用了no logging操作不生成日志,因此数据也不会传递到从库。 9、 管理主从库的用户必须具有SYSDBA权限。
主库:win2003 server ora9i(9.2.0.1.0) 192.168.3.135主机名:data580 SID:PRIMARY
从库:win2003 server ora9i(9.2.0.1.0) 192.168.3.136 主机名:data380 SID:STANDBY
1、主库和从库的Oracle 安装的时候都选择相同的安装路径 E:/oracle/ora92 ;并且先不要安装数据库,即在安装过程中“数据库配置”一项下面选择“只安装软件”;
2、在主库上使用DBCA(Database Configuration Assistant)建一个数据库,SID设为PRIMARY;
3、
设置主库归档路径为e:/oracle/ora92/database/Archive : Sql>alter system set
log_archive_dest_1='LOCATION=e:/oracle/ora92/database/Archive MANDATORY'
scope=both;
4、将主库实例、数据库关闭,然后启动实例,但不打开数据库,只启动到数据库挂载模式: Sql>shutdown immediate; Sql>startup mount;
5、将主库设置成归档状态和自动归档模式: Sql>alter database archivelog; Sql>alter system set log_archive_start=true scope=spfile;
6、在主库上面创建从库的控制文件standby.ctl : Sql>alter database create standby controlfile as 'e:/oracle/oradata/standby.ctl';
7、在主库上面创建从库的初始化参数文件standby.ora(将其拷贝回从库后转换成从库的 spfile): Sql>create pfile='e:/oracle/oradata/standby.ora' from spfile;
8、查看主库的数据文件及其的位置: Sql>select name from v$datafile; 记下查询结果中的数据文件的位置。
9、关闭实例: Sql>shutdown immediate;
10、
将第6步中的standby.ctl、第7步中的standby.ora和第8步骤中的数据文件、还有E:/oracle/oradata
/PRIMARY路径下面的联机日志文件(REDO.LOG)、E:/oracle/ora92/database里面的口令文件
PWDPRIMARY.ora备份出来,拷贝到从库中;在从库中创建路径E:/oracle/oradata/PRIMARY
,存放standby.ctl、数据文件、联机日志文件;创建路径E:/oracle/admin/PRIMARY
,在里面创建空文件夹bdump、cdump、udump、create、pfile ;将standby.ora
放到E盘根目录下面;将口令文件PWDPRIMARY.ora更名为PWDSTANDBY.ora
,放到从库的E:/oracle/ora92/database下面。
11、回到主库,启动主库实例和数据库: Sql>startup
12、
转回到从库,手动创建服务OracleServiceSTANDBY: oradim -new -sid STANDBY -startmode
manual 设置环境变量:在环境变量的“Administrator的用户变量”一栏里面新建一个值,变量名为ORACLE_SID
,变量值为STANDBY(服务名)。
13、创建从库监听器OracleOraHome92TNSListener:进入Net
Configuration Assistant
,使用“监听程序配置”来创建从库的监听器,同时会在E:/oracle/ora92/network/admin下面生成listener.ora文
件;
14、配置本地NET服务名:进入Net Configuration Assistant ,使用“本地NET服务名配置”来配置,同时会在E:/oracle/ora92/network/admin下面生成tnsnames.ora文件;
15、
配置主从库的tnsnames.ora ,都将里面的内容设置成如下内容: STANDBY = (DESCRIPTION =
(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.136)(PORT =
1521)) ) (CONNECT_DATA = (SERVICE_NAME = PRIMARY) ) ) PRIMARY =
(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =
192.168.3.135)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = PRIMARY) )
)
16、修改E根目录下面的初始化参数文件standby.ora ,里面的全部内容如下(删除了原来的control_files参数,将instance_name改成了STANDBY,最后面的7行粗体部分是新添加的内容):
*.aq_tm_processes=1
*.background_dump_dest='e:/oracle/admin/PRIMARY/bdump'
*.compatible='9.2.0.0.0'
*.core_dump_dest='e:/oracle/admin/PRIMARY/cdump'
*.db_block_size=8192
*.db_cache_size=728760320
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='PRIMARY'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=PRIMARYXDB)','(PROTOCOL=TCP)'
*.fast_start_mttr_target=300
*.hash_join_enabled=TRUE
*.instance_name='STANDBY'
*.java_pool_size=20971520
*.job_queue_processes=10
*.large_pool_size=143654912
*.log_archive_dest_1='LOCATION=e:/oracle/ora92/database/Archive MANDATORY'
*.log_archive_start=TRUE
*.open_cursors=300
*.pga_aggregate_target=324009984
*.processes=150
*.query_rewrite_enabled='FALSE'
*.remote_login_passwordfile='EXCLUSIVE'
*.shared_pool_size=242221056
*.sort_area_size=52428800
*.star_transformation_enabled='FALSE'
*.timed_statistics=TRUE
*.undo_management='AUTO'
*.undo_retention=10800
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='e:/oracle/admin/PRIMARY/udump'
*.standby_file_management=AUTO
*.remote_archive_enable=TRUE
*.lock_name_space='standby'
*.fal_server='primary'
*.fal_client='standby'
*.standby_archive_dest='e:/oracle/ora92/database/Archive'
*.control_files='e:/oracle/oradata/primary/STANDBY.CTL'
17、进入sqlplus将standby.ora创建成从库的spfile : Sql>create spfile from pfile='e:/standby.ora';
18、启动从库的实例,并且将从库设置成standby模式: Sql>startup nomount; Sql>alter database mount standby database;
19、在从库启动日志应用服务: Sql>alter database recover managed standby database disconnect from session;
20、
转到主库,启动到物理从库的归档: Sql>ALTER SYSTEM SET
LOG_ARCHIVE_DEST_2='SERVICE=PRIMARY' SCOPE=BOTH; Sql>ALTER SYSTEM SET
LOG_ARCHIVE_DEST_STATE_2=ENABLE SCOPE=BOTH;
21、校验Data Guard的运转:
主库,归档当前日志: SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;
从库,校验归档日志是否正常接收: SQL> SELECT SEQUENCE#, FIRST_TIME, NEXT_TIME FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
从库,查看新的归档日志是否正常用于恢复:
SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
SEQUENCE# APP --------- ---
8 YES
9 YES
10 YES
11 YES
如果都是像以上那样的内容,都是YES的话,那就成功了。也可以分别查看主从库的E:/oracle/ora92/database/archive文件夹里面的内容,如果从库的和主库的内容一致,就算data guard配置成功了。
22、
这个时候从库只是将日志文件拿过来存放起来,但并没有执行日志文件,所以在主库上所做的操作无法在从库上得到结果,即无法在从库上查询数据。要在从库上查
询数据,要执行以下语句:在从库上用sysdba 用户连接 Sql>alter database recover managed
standby database disconnect from session ; Sql>alter database recover
managed standby database cancel ; Sql>alter database open read only ;
查询数据即可。查询完成以后,需要恢复从库为恢复模式 Sql>alter database recover managed
standby database disconnect from session ;
这个功能的可以用来查询前一天(或者前若干时间)以前的数据,比如报表之类的,因为今天只能查询昨天以前的报表,对数据的同步性的要求不是那么严格。查询
完后一定要将从库设回恢复模式。
发表评论
-
ORA-14551: 无法在查询中执行 DML 操作
2013-11-30 13:45 1364最近在调试一个带DML操作的函数时,一直不成功,在PL/SQ ... -
Oracle Recursive Calls 说明
2013-04-09 23:11 1492一. Recursive Calls 说明 在执行计划 ... -
consistent gets db block gets
2013-04-09 19:58 1440consistent gets :consistent_ge ... -
SQL Server数据导入到Oracle中的方法
2012-07-17 17:09 1597在我们使用SQL Server数据库的过程中,有时需要将SQL ... -
更改ORACLE归档路径及归档模式
2012-07-16 18:23 1868在ORACLE10g和11g版本,ORAC ... -
disable/enable validate/novalidate 的区别
2012-01-08 11:41 1235启用约束: enable( validate) :启用约束,创 ... -
linux用dd测试磁盘速度
2012-01-07 21:58 1013首先要了解两个特殊的设备: /dev/null:回收站、 ... -
在数据分布严重不均的列上使用绑定变量容易错过更好的执行计划
2012-01-07 20:49 1034在数据分布严重不均的列上使用绑定变量容易错过更好的执行计划,原 ... -
Oracle hash join
2012-01-07 17:00 953hash join是oracle里面一个非常强悍的功能 ... -
恢复被rm意外删除数据文件
2012-01-05 12:30 1268一.模拟数据文件删除 [oracle ... -
oracle 块延迟清除(delayed block cleanout)
2012-01-04 22:47 1361为了保证事务的回退和满足多用户的 CR , orac ... -
Oracle数据库SCN号详解
2012-01-04 19:25 1542Oracle数据库SCN号详解: 系统检查点scn(v$da ... -
oracle常见问题与解答
2012-01-03 20:22 16911.对于sql,有几种方法查看执行计划,每种方法有什么区别,对 ... -
Oracle虚拟私有数据库(VPD)概述及简单举例
2011-12-23 12:35 1567Oracle虚拟私有数据库(VPD)概述及简单举例 1、Ora ... -
alter table move跟shrink space的区别
2011-12-17 15:02 1297都知道alter table move 或shrink spa ... -
How to dump Oracle Data Block?
2011-12-16 15:22 999Often while doing instance tuni ... -
oracle索引的5种使用模式
2011-12-14 21:19 1080索引的使用对数据库的性能有巨大的影响。 共有五类不同的使用模式 ... -
HP Unix中的dba MLOCK
2011-12-14 19:14 2236最近在HP平台上遇到两次跟dba MLOCK权限相关的错误: ... -
NESTED LOOP、HASH JOIN、SORT MERGE JOIN
2011-12-13 23:18 1379表连接方式及使用场合 ... -
Oracle用户权限
2011-12-12 19:48 1514系统权限: 1、使用GRANT语句向用户赋予系统权限: ...
相关推荐
DBA需要掌握RAC的配置和维护,以及Data Guard的同步和切换策略。 6. 日常监控与维护:通过Enterprise Manager、OS Watcher和AWR(Automatic Workload Repository)报告,DBA可以监控数据库的运行状态,识别性能瓶颈...
在《Oracle DBA手记》中,eygle Yangtingkun等人分享了他们的实战经验和技巧,涵盖了从基础到高级的各种主题,如数据库安装、性能优化、高可用性架构(如RAC和Data Guard)等,对于想要深入学习Oracle DBA的读者来说...
在提供的文件中,"Oracle Data Guard Linux 平台 Physical Standby 搭建实例 - tianlesoftware 学习 Oracle - CSDN博客.htm"和"Oracle 10g for linux data guard安装手记 - prefectliu的日志 - 网易博客.htm"详细...
5. **高可用性架构**:Oracle提供多种高可用性解决方案,如RAC(实时应用集群)、Data Guard和GoldenGate。这些技术可以帮助企业实现零停机时间,书中会对这些技术的配置和管理进行详细阐述。 6. **数据库安全管理*...
根据提供的标题“Oracle DBA手记3”及描述“Oracle DBA手记3,完整的,内容不错,大家可以下了”,我们可以推断出这份资料是关于Oracle数据库管理(DBA)的一系列经验分享和技术指南。虽然具体的内容没有给出,但是...
本书还涵盖了Oracle的高可用性解决方案,如Data Guard和RAC(Real Application Clusters),这些技术可以提高数据库的容错能力和性能。Data Guard提供了主备数据库间的实时同步,确保在主库出现故障时能够无缝切换到...
2. **Data Guard**:讲解Oracle Data Guard的配置,如何建立物理备用库和逻辑备用库,实现灾难恢复和高可用性。 3. **ASM**:讨论Oracle Automatic Storage Management(ASM)的使用,如何管理磁盘组和存储资源。 ...
8. **高可用性技术**:讲解RAC(Real Application Clusters)、Data Guard、Flashback等技术,以实现高可用性和灾难恢复。 9. **数据库设计与管理**:介绍如何进行规范化设计,如何创建和管理表、索引、视图、存储...
- Data Guard:提供灾难恢复解决方案,创建物理或逻辑备用数据库。 10. 其他主题 - PL/SQL:Oracle的编程语言,用于编写存储过程、函数、触发器等数据库对象。 - 数据库连接池:理解如何使用连接池管理数据库...
《Oracle DBA手记:数据库诊断案例与性能优化实践》是一本专为Oracle数据库管理员(DBA)编写的实战指南,旨在帮助读者深入理解和掌握Oracle数据库的诊断技巧以及性能优化方法。书中涵盖了一系列真实的数据库问题...
7. 高可用性与灾难恢复:涵盖了RAC(Real Application Clusters)、Data Guard、闪回数据库等高可用解决方案,帮助DBA构建健壮的数据库环境。 8. 实例管理与维护:涉及数据库启动、关闭、迁移、升级等日常运维工作...
《Oracle DBA手记2:数据库诊断案例与内部恢复实践》是一本专注于Oracle数据库管理和故障排除的专业书籍。作为DBA(数据库管理员),掌握数据库的诊断和恢复技术是至关重要的,因为这直接影响到系统的稳定性和数据的...
- **高可用架构**:结合RAC与DG(Data Guard)实现更高级别的数据保护和灾难恢复。 #### RAC监控与优化 - **监控思路**:关注关键指标,如等待事件、CPU使用率、I/O统计等,及时发现并解决问题。 - **性能诊断**:...
5. **高可用性与容错技术**:Oracle提供了多种高可用性解决方案,如RAC(Real Application Clusters)、Data Guard等,这些可能会在第3部中涉及,讲解如何构建和维护高可用的数据库环境。 6. **性能监控与优化**:...
杨廷琨拥有十六年一线DBA经验,并在个人博客中积累了大量原创技术文章,还参与了多本Oracle相关书籍的编写工作,如《Oracle数据库性能优化》、《Oracle DBA手记》系列等。此外,他还担任过ITPUB数据库管理区版主和...