RedHatAs5下Oracle双机热备(1)
最近一个项目的实施需要用到
RedHatAs5.0
操作系统下的
Oracle
双机热备配置,原以为有设备厂商以及公司系统网络部的技术支持,双机热备就是小意思,没想到实施过程中碰到了许多奇怪的问题。经过多天的攻关,终于配置成功了,感觉心情特别轻松。经过两周的实施,我以一个
Linux
菜鸟的身份,初步领略到了
Linux
操作系统的神奇与伟大,同时也感叹自己知识面的欠缺。痛定思痛,决定将实施过程及碰到的问题汇总一下,以示鞭策。
(一)项目概述
为避免涉及商业泄密,本文中不出现项目名字、设备供应商名字、价格等信息,但需要出现设备规格等信息。为了简单起见,姑且将项目命名为
A
项目吧。
A
项目是一个多年存在的项目,由于业务的发展,原服务器配置已经略显落后,跟不上时代的发展了。省公司决定进行系统的扩容与升级,任务落在了我的项目组,由我们负责方案的设计与实施。硬件方面决定新增一个服务器、一个磁盘阵列,同时利用原有的一台服务器,做成数据库的双机热备。
由于对硬件、
Linux
、双机热备知识的欠缺,方案设计时没有考虑到系统配置的复杂性,简单的认为有硬件提供商、公司系统网络部的配合,服务器的配置会一帆风顺。这一想法让我在之后的实施过程中吃了不少苦头。
(二)环境描述
操作系统:
Red Hat As5.0
内核版本
2.6.18-8.e15
数据库:
Oracle10g
版本
10.2
主数据库服务器:浪潮
NF5220
辅数据库服务器:浪潮
NF280G2
磁盘阵列:
H3C Neocean EX1500S
双机热备软件:
RoseHA8.0
交换机:未采购,使用机房已有交换机。
(三)网络拓扑
主、辅服务器分别有两块网卡,磁盘阵列有五个千兆网卡。主辅服务器分别用使用一块网卡通过六类网线直连磁盘阵列。主辅服务器使用另一块网卡连接机房交换机,供业务系统服务器访问。
相关文档:
导出和导入实用程序
q 导出和导入实用程序用于实施数据库的逻辑备份和恢复
q 导出实用程序将数据库中的对象定义和数据备份到一个操作系统二进制文件中
q 导入实用程序读取二进制导出文件并将对象和数据载入数据库中 ......
触发器
q 触发器是当特定事件出现时自动执行的存储过程
q 特定事件可以是执行更新的DML语句和DDL语句
q 触发器不能被显式调用
q 触发器的功能:
q ......
ORACLE数据库对象
——同义词、序列、视图
同义词:同义词是现有对象的别名
简化SQL语句
隐藏对象的名称和所有者
提供对对象的公共访问
同义词分为私有同义词和公有同义词
私有同义词只能在其模式内访问,且不能与当前模式的对象同名。
公有同义词可被所有的数据库用户访问。
以 SYS 用 ......
有表A(字段A1,A2)和表B(字段B1,B2).
字段A2,B2上都有索引.
A,B 表联查
sql1 这个sql 非常快 2秒的样子
select * from A,B where A.A1=B.B1(+) and A2='值1'
sql2 这个sql 慢到让人无法忍受
select * from A,B where A.A1=B.B1(+) and B2='值1'
外联以后 表B上的索引不起作用了.
如果换成内联 速度很快.
sel ......
我列出我全部的做法:
table a 有id1, str1, str2, str3
开始的pk是id1, str1, str2
希望改成id1, str1, str3
--问题
小弟先有如下问题:
一个表原来的PK是 id1+str1+str2 列
先修改成id1+str1+str3列
而这三列现在当前数据库的数据有重复的情况, 小弟现在用sql:
ALTER table a a ......