同时运行两个版本oracle数据库
oracle集群

数据库双机可以有两种不同的方式:双机热备份、双机集群。
双机热备份方式的集群完全通过操作系统的cluster软件来实现,在同一个时刻,只有一台机器对数据库作操作,当这台机器发生故障以后,由操作系统cluster将所有资源切换到两外一个节点,防止单节点数据库故障。
双机集群方式(RAC),在10g以后,通过ORACLE自身提供的CRS来实现集群的功能。
在同一个时刻,所有的机器都对数据库作操作,当某台机器发生故障后,其他机器接管该机器的工作。
这种方式不但能够防止单节点数据库故障,还能够实现负载均衡。
因为两个机器对同一个数据库操作,因此数据库文件一般无法使用传统的文件系统方式存储。
下表列出了两种方式的区别:注一:对于rac方式,在10G以下的版本必须要操作系统cluster的支持+oracle rac选件才能够实现,在10G以后,oracle提供了自身的cluster软件——crs,因此可以在没有操作系统cluster的情况实现RAC方式,但对于文件的存储方式有所限制,下表列出了在rac方式下可以选择的存储方式数据库双机热备方案的原理及实现以下简单说明了双机热备的原理及实现。
⏹双机热备系统又称为Cold Failover,它是oracle 数据库高可用方式的一种。
主要工作方式为主机节点运行,备用节点处于等待状态,当主机节点发生失败的时候,数据库以及虚拟IP 自动漂移到备用节点,完成用户应用透明切换。
切换操作基于操作系统Cluster 控制软件,操作系统负责监控系统的运行状况。
操作系统实现数据库的关闭、切换和启动。
⏹ 方案评价双机热备系统是单实例数据库系统,它的工作方式是一种Shared Nothing 方式,也就是同一时间段,只有一台节点对共享盘阵有操作权。
在发生节点失败时,完成切换。
应用切换对前端用户透明,主机节点失败后用户自动转接入预先定以的备用节点。
此种方式概念以及平台搭建相对简单,易于管理。
但是其主机工作,备机等待的工作方式,造成了此种工作方式对系统资源的一定浪费。
ORACLE并行技术使用

ORACLE 并行技术应用探讨前言ORACLE8i数据库及OPS选件是目前许多客户的首选,充分利用ORACLE8的新特性进行应用设计是客户的要求。
本文简单介绍了ORACLE的并行技术,并对ORACLE并行服务器(OPS)技术、并行DML(PDML)技术以及分区(Partition)等技术在应用系统中的使用进行了简单的描述。
(有关并行结构、OPS应用划分等请参见《宏智通讯》第一期)1.OPS1.1 什么是OPSOPS (Oracle Parallel Server)――ORACLE并行服务器是为了满足人们对系统的高可靠性、高速性以及VLDB(大规模数据库)的需求而开发设计的一项并行处理技术。
对DLM的管理是影响OPS性能的重要指标,应用系统的设计是否合乎OPS的要求直接关系到应用系统的成败。
Oracle Parallel Server支持cluster结构、NUMA结构和MPP结构。
OPS的设计目标是:●提高系统性能●提高系统吞吐量●高可靠性●有效支持更多用户●均衡负载不是OPS的设计目的2.2 OPS的结构整个系统中只有一套数据库,在这套数据库上可以运行多个实例(instance),所有节点的实例共享一套数据文件(datafiles)和控制文件(controlfiles),同时每个实例均有自己的重做日志文件(redolog files),且任何一个节点上的重做日志文件均能够为其他节点访问,这样保证在某个节点上实例宕掉后,其他节点上的实例能够利用宕掉节点上的重做日志文件进行数据库的恢复。
2.3 OPS中的基本概念1.iDLM (Integrated Distributed lock manager) 是由ORACLE提供的一种对共享资源进行管理的机制。
OPS使用两种类型的锁进行多个实例之间的同步,即PCM锁和非PCM锁(PCM lock and non-PCM lock)2.PCM 锁和非PCM锁PCM lock是实例级的锁,用来管理数据文件中的数据块之间的锁。
Oracle数据库技术(格局篇)

Oracle数据库技术(格局篇)Oracle 18c是Oracle新一代数据库,可以部署在本地或 Oracle 云中,运行在专用于 Oracle Exadata和Oracle 数据库机等数据库工作负载的通用硬件或工程系统上。
它为各种规模的企业提供了访问世界上最快,最具可扩展性和可靠性的数据库技术,以便在云,本地和混合云配置中安全,经济地部署事务和分析工作负载。
Oracle Database 18c是在以前Oracle Database 12c中引入的功能添加了新功能和增强功能,包括:1)多租户架构可大幅节省成本和灵活性。
2)内存列存储,可实现实时分析的性能提升。
3)本机数据库分片,可实现大规模 Web 应用程序的高可用性。
4)增强数据库性能,可用性,安全性,分析和应用程序开发的更多关键功能。
Oracle Database 18c 提供了一个高性能、高可靠和高安全的平台,可以在云,本地或混合云进行部署。
它提供了在本地和云中运行的相同熟悉的数据库软件,使客户能够使用其内部开发的 Oracle 应用程序和 ISV应用程序,并在 Oracle 云上运行它们,而不会导致任何应用程序更改。
Oracle Multitenant 是面向下一代数据库云的架构。
它提供了隔离、敏捷性和规模经济。
在这个架构中,一个多租户容器数据库可容纳多个可插拔数据库。
现有数据库可以直接采用,无需更改应用。
Oracle Multitenant 是对 Oracle Real Application Clusters 和Oracle Active Data Guard 等选件的全面补充。
内存优化,支持实时分析。
Oracle Database In-Memory 优化了分析和混合负载 OLTP,不仅提供出色的事务处理性能,还支持实时分析、商务智能和报告。
Oracle Database In-Memory 提供了一个独特的双格式架构,可以同时使用传统的行格式和新的内存中列格式在内存中表示表。
oracle ha简介

Oracle主机HA(Server HA)属于我们开始说的狭义意义上的HA,它是基于OS的技术,采用OS支持的Cluster Soft来保证主机的冗余保护,当主机或者网络发生故障时来实现自动保护切换,它和RAC一样使用共享存储来保证数据的一致性。
主机HA技术出现的比较早,技术也比较成熟,现在市场上也有很多优秀的支持各种OS 的Cluster Soft,所以主机HA技术应用非常广泛,而且主机HA的集群技术与数据库的版本、特性无关,在不同的数据库版本甚至不同的数据库上都可以实现主机的HA,它与RAC的工作模式有所不同,RAC主要工作在双机双工的末实现,而主机HA则工作在双机热备或者双机互备的模式下,同时RAC是居于数据库而完成的高可用性,而主机HA是基于OS完成的主机高可用性来保证数据库的高可用性。
Oracle数据库HA架构方案介绍主机HA技术是一个或者多个主机共享一台备用主机的集群技术,所以它能解决主机故障包括OS故障、主机网卡故障、单个主机的网络故障等,通过Cluster软件将两台或者多台数据库主机绑定一个服务IP,所有的Data file、Contr File、Redo log等都存放于共享的存储上,主机HA集群通过一个服务IP对外提供服务,通过HA Soft 软件的管理集群中的各个主机运行在Active/Standby方式下,当其中一台主机发送故障时,HA Soft软件会自动的检测到故障并且将提供服务的IP切换到正常的主机上提供服务,从而保证了数据库服务的连续性和故障的自动切换。
现在支持主机HA的Cluster软件有很多种,只要的有:Veritas的VCS,IBM的HACMP,HP的ServiceGuard,SUN的Sun Cluster等。
主机HA特点1)主机HA的最大优点就是可以解决服务器的单点故障,Database所有的文件都建立在共享存储上,存储的冗余需要依赖其他技术(RAID、LVS等)来实现2)主机HA的技术简单成熟,所以在实际的应用中被广使用,但对主机资源的浪费比较严重,基本上要保证对等的资源处于等待状态。
oracle 数据库实例的配置方式

oracle 数据库实例的配置方式Oracle数据库是目前全球应用最广泛的关系型数据库之一,其强大的性能和可靠性使得它成为许多企业和组织首选的数据库管理系统。
在使用Oracle数据库之前,需要进行实例的配置,本文将详细介绍Oracle数据库实例的配置方式。
首先,我们需要理解什么是Oracle数据库实例。
Oracle数据库实例是由Oracle数据库软件创建和管理的一个独立运行环境,它包含了操作数据库所需的所有进程和内存结构。
每个Oracle数据库可以同时运行多个实例,每个实例和一个特定的数据库相关联。
接下来,我们将一步一步回答如何配置Oracle数据库实例。
第一步:安装Oracle数据库软件在配置Oracle数据库实例之前,我们需要先安装Oracle数据库软件。
Oracle提供了开发者和企业版两种版本的数据库软件,可以根据实际需求选择合适的版本。
安装过程中需要指定安装目录、数据库实例名称以及数据库系统标识符(SID) 等信息。
第二步:创建初始化参数文件在安装完成后,我们需要创建一个初始化参数文件,它用于描述数据库实例的初始配置参数。
参数文件通常以文本形式存在,并包含了一系列参数和值,用于控制数据库的各个方面。
参数文件通常命名为initSID.ora,其中SID为数据库实例名称。
参数文件中的参数可以分为两类:静态参数和动态参数。
静态参数在启动数据库实例之前必须使用参数文件进行配置,并且只能通过重新启动数据库实例来改变。
而动态参数可以在数据库实例运行过程中通过SQL语句来修改,无需重新启动数据库实例。
第三步:启动数据库实例配置完成参数文件后,我们可以使用Oracle提供的实用程序来启动数据库实例。
在Windows操作系统中,可以使用“OracleServiceSID”服务来启动数据库实例,其中SID为数据库实例名称。
在Linux和UNIX操作系统中,可以使用“sqlplus”命令来连接到数据库实例,并通过“startup”命令来启动数据库实例。
ORACLE_BASE、ORACLE_HOME有什么区别

ORACLE_BASE、ORACLE_HOME有什么区别比如oracle 有两款产品,数据库以及其他的。
在装的过程中都会装载ORACLE_BASE目录下。
ORACLE_HOME 目录就是数据库的家目录。
例如:如果装了2个版本的oracle,那么ORACLE_BASE可以是一个,但ORACLE_HOME是2个。
ORACLE_BASE下是admin和productORACLE_HOME下则是ORACLE的命令、连接库、安装助手、listener等等一系列的东东。
这只是ORACLE自己的定义习惯。
ORACLE_HOME比ORACLE_BASE目录要更深一些。
也就是说:ORACLE_HOME=$ORACLE_BASE/product/versionORACLE_BASE是oracle的根目录,ORACLE_HOME是oracle产品的目录。
简单说,你如果装了2个版本的oracle,那么ORACLE_BASE可以是一个,但ORACLE_HOME是2个全局数据库名用于区别分布式数据库各个不同机器上的实例。
SID用于区别同一台机器上的不同实例,即一个用于外部区分。
一个用于内部区分。
关于数据库名(db_name)、实例名(instance_name)、ORACLE_SID--------------------------------------------------------------------------------发布日期:2004-9-16 浏览次数:作者:jrlee关于数据库名(db_name)、实例名(instance_name)、ORACLE_SID最近因看到论坛有人问起这方面的东西,将自己的理解加上查阅相关资料整理如下,如果不全或不当的地方,望指正并补全它。
数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID)在ORACLE7、8数据库中只有数据库名(db_name)和数据库实例名(instance_name)。
Oracle数据库双活Extended RAC实现技术对比(EMC VPLEX Metro,Oracle IOE,一体机)

网络心跳和磁盘心跳都走IB网络,带宽达40-56Gbps, 可实现端到端延迟<200ns。
★
IB网络比传统以太网的延时 低很多
理论值:<100km公里 ★ 实际案例:<80KM。超过10KM要借助波分复用设备来延 依托IB设备的扩展RAC能支 伸距离。经实测,80KM网络RTT值在0.45-0.5ms
每个站点均配备统一存储。整个双活中心仅有一套数据库(一个 磁盘组内须创建2个及以上故障组,故障组分别在不同的站点)
双份,数据在所有VPLEX存储上做条带化。由vplex实现数据冗 余,一般不再设置ASM磁盘组冗余级别。 不同站点之间的副本利用vplex metro存储复制技术实现双向复 制,任何站点的写操作将同时发给另一个站点的副本执行,属于 同步模式的复制。(双活解决方案不提供异步模式,该模式用于 传统容灾) (参考实际案例数据:经过VPLEX设备,会比第一种方案的延时 还增加1MS) ORACLE RAC: 1、网络心跳走以太网,要求带宽至少1G,延时在毫秒级; 2、磁盘心跳走裸纤,要求带宽至少10G; VPLEX: 3、存储网络至少需8G链路; 在本方案中RAC的磁盘心跳走VPLEX存储网络,带宽至少要满足 10G 理论值:<100km,网络延迟不超过5ms; 实际案例:oracle官方建议不超过10KM,网络延迟不能超过 1ms;超过该距离性能会随着距离增加呈线性衰减。超过10KM要 借助波分复用设备来延伸距离。
相关技术资料
ORACLE原厂白皮书 \\10.194.50.44\平台运维科\8-其它\平台组台帐\双活技术 \oracle
基于VPLEX Metro的Extended RAC (EMC公司)
读/写---读/写 硬件平台最少配备: 2台EMC VPLEX设备 2台独立存储设备 光纤网络交换设备2台(用于连接VPLEX设备、服务器、存储设 备) 4台Oracle数据库服务器 1台VPLEX Witness仲裁服务器 1台位于第三站点的仲裁服务器(挂载仲裁盘) 网络:以太网路由及交换设备则包括广域网互联设备(10KM以上 使用波分复用设备)、每个站点的核心、汇聚、接入层设备
oracle不同版本间数据的导入导出

Oracle的imp/exp组件是我们常用的工具,它的一个操作原则就是向下兼容。
下面是据此总结的几个使用规则和相关测试:规则1:低版本的exp/imp可以连接到高版本(或同版本)的数据库服务器,但高版本的exp/imp不能连接到低版本的数据库服务器--1.1 使用9i客户端通过imp连接到10g数据库C:\Documents and Settings\yuechaotian>exp userid=hdtest/test@s67tables=(ab01) rows=n file=d:\x.dmpExport: Release 9.2.0.1.0 - Production on 星期三 2月 20 10:09:55 2008Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining options已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集注: 将不会导出表数据(行)即将导出指定的表通过常规路径 .... . 正在导出表 AB01在没有警告的情况下成功终止导出。
--1.2 使用10g客户端通过imp连接9i数据库:连接失败(而不是导出失败)C:\Documents and Settings\yuechaotian>exp userid=hbjb_kf_hd/test@s46 owner=hdtest file=d:\x.dmpExport: Release 10.2.0.1.0 - Production on 星期三 2月 20 09:57:22 2008Copyright (c) 1982, 2005, Oracle. All rights reserved.EXP-00056: 遇到 ORACLE 错误 6550ORA-06550: 第 1 行, 第 41 列:PLS-00302: 必须说明 'SET_NO_OUTLINES' 组件ORA-06550: 第 1 行, 第 15 列:PL/SQL: Statement ignoredEXP-00000: 导出终止失败规则2:高版本exp出的dmp文件,低版本无法imp(无法识别dmp文件)--2.1 使用10g客户端exp出10g的数据C:\Documents and Settings\yuechaotian>exp userid=test/test@orclowner=test file=d:\10g.dmpExport: Release 10.2.0.1.0 - Production on 星期三 2月 20 11:16:39 2008Copyright (c) 1982, 2005, Oracle. All rights reserved.连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining options已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集服务器使用 AL32UTF8 字符集 (可能的字符集转换)即将导出指定的用户...……导出成功终止, 但出现警告。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在同一台电脑上安装两个不同版本的数据库
实验背景
在我们日常的学习和工作中,可能需要在同一台电脑上面同时使用两个不同版本的数据库服务器,很多人会觉得这是一件不可能的事情,但事实上是完全能够实现的,下面我们就一起走进我们的实验。
环境介绍
操作系统:winxp
数据库版本:oracle 10g、oracle 11g
实验目标
最终能够在同一台机器上同时正常运行oracle 10g和oracle 11g数据库服务器实验思路
首先检查已经存在的数据库是否能够正常运行;然后停止原有数据库,安装完成第二个数据库后,检查新安装的数据库能否正常使用;然后再停掉新安装数据库,检查原有数据库能否正常运行;如果两个版本的数据库能够分别正常运行后,我们再同时启用两个数据库服务器,看两个数据库服务器能否同时正常运行,如果能行,那么实验成功。
实现步骤
检查已有数据库能否正常运行
现在我的电脑上已经存在一个可运行的oracle11g。
注册表信息、服务情况和运行情况如下
从上面我们可以看出,当前我电脑上面的oracle 11g服务器是可以正常运行的。
并且该数据库的实例名称为orcl。
安装oracle 10g数据库服务器
现在我打算在该机器上在安装一个oracle10g的数据库
首先停掉原有数据库的实例服务和监听程序
然后安装oracle10g
安装的时候注意全局数据库名一定不能和已经存在的名字相同,这里我们新建数据库的实例名为orcl10g。
然后其他步骤和常规安装同。
安装完成后,我们来看下此时的注册表信息和相关服务信息。
然后我们再看下新安装的数据库是否能够正常使用
从上面我们可以看出新安装的数据库是可以使用的。
检查原有数据库能否正常运行
我们先把新安装数据库监听和服务停掉
然后启动原来数据库的监听程序和服务
然后检测
从上面我们可以知道,能够正常运行。
同时运行两个数据库
两个数据库分别能够正常运行,那如果两个数据库同时使用行不行呢?同时启用两个监听程序,由于我们两个监听的名字是一样的,所以,我们在启动第二个监听的时候,提示:
所以我们对oracle10g版本的数据库重新配置一个监听
我们新配置了一个监听程序,名字为listener10g,端口号为1522,然后启动该监听,现在我们来看看我们的服务情况。
从上面我们能够看出,我们把两个版本数据库的监听和实例服务都启动,那么我们能否同时正常使用两个版本的数据库呢?
为了能够更好的查看不同数据库的运行效果,特意把orcl10g中scott.dept表drop掉了,所以上面提示表或试图不存咋。
从上面我们可以看出,两个版本的数据库时可以同时使用的。
不过需要注意,在使用sqlplus的时候,需要进入到其数据库所在的安装目录下。
这点在上面的截图中有体现。
实现总结
同一台机器上面,不仅能够同时运行两个不同版本的数据库,更多应该也不是问题,有兴趣的同事可以继续实验;在使用命令行启动服务的时候,需要进入到其相应的目录下。