Oracle 9i 配置备用数据库步骤

本文详细介绍了如何通过一系列步骤来搭建Oracle物理备库,包括设置归档模式、配置参数文件、生成控制文件等关键操作,并指导如何进行主备切换。

1.主库设置成归档模式

2.拷贝主库的表空间文件、Redo、拷贝到备库的对应目录

3.拷贝主库的参数文件到备库
/u02/app/oracle/admin/devdb1/script/init.ora

[@more@]

4.从库生成密码文件
/u01/app/oracle/ora920/bin/orapwd file=/u01/app/oracle/ora920/dbs/orapwdevdb1 password=change_on_install

5.主库生成备用数据库专用控制文件
alter database create standby controlfile as '/u02/oradata/devdb1/stdcotrl.ctl';

6. 将备用数据库专用控制文件拷贝到备用数据库(并复制3份)
cp stdcotrl.ctl stdcotrl01.ctl
cp stdcotrl.ctl stdcotrl02.ctl
cp stdcotrl.ctl stdcotrl03.ctl
rm stdcotrl.ctl

7.修改备用数据库参数文件
cp /u01/app/oracle/admin/devdb1/scripts/init.ora /u01/app/oracle/admin/devdb1/scripts/initstandby.ora
vi /u01/app/oracle/admin/devdb1/scripts/initstandby.ora

将 control_files=("/u02/oradata/devdb1/control01.ctl", "/u02/oradata/devdb1/control02.ctl", "/u02/oradata/devdb1/control03.ctl") 这行注释掉
增加下列行
utl_file_dir='/u01/app/oracle'
standby_archive_dest='/u02/oradata/devdb1/stdarch'
fal_server='PRIMARY'
fal_client='STANDBY'
standby_file_management='AUTO'
control_files=("/u02/oradata/devdb1/stdcotrl01.ctl", "/u02/oradata/devdb1/stdcotrl02.ctl", "/u02/oradata/devdb1/stdcotrl03.ctl")

7.修改主库及备用数据库的TNSNAMES.ora添加下列内容
PRIMARY =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.131)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = devdb1.freelynet.com)
)
)


STANDBY =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.132)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = devdb1.freelynet.com)
)
)

主库备库启动 lsnrctl start
主库测试 TNS
tnsping primary
tnsping standby
备库测试 TNS
tnsping primary
tnsping standby


8. 启动备用数据库
startup nomount pfile="/u01/app/oracle/admin/devdb1/scripts/initstandby.ora";
alter database mount standby database; //切换到备用数据库模式并mount
alter database recover managed standby database disconnect from session; //切换到管理模式,自动应用归档日志



9. 主库设置归档日志路径
alter system set log_archive_dest_2='service=standby mandatory reopen=60';


10. 主库进行日志切换测试

alter system switch logfile;


10. 主库的alter 文件中应有下列内容
Tue Mar 18 05:46:45 2008
ARC0: Evaluating archive log 3 thread 1 sequence 6
ARC0: Beginning to archive log 3 thread 1 sequence 6
Creating archive destination LOG_ARCHIVE_DEST_2: 'standby'
Tue Mar 18 05:46:45 2008
Thread 1 advanced to log sequence 7
Current log# 1 seq# 7 mem# 0: /u02/oradata/devdb1/redo01.log
Tue Mar 18 05:46:45 2008
Creating archive destination LOG_ARCHIVE_DEST_1: '/u02/oradata/devdb1/archive/1_6.dbf'
ARC0: Completed archiving log 3 thread 1 sequence 6

11.备库的alter 文件中应有下列内容
Media Recovery Waiting for thread 1 seq# 6
Media Recovery Log /u02/oradata/devdb1/stdarch/1_6.dbf


12.备库关闭
recover managed standby database cancel; 退出自动应用模式
shutdown immediate

13. 备库切换到只读模式
recover managed standby database cancel; 退出自动应用模式
shutdown immediate

14. 备库从只读回到自动应用
alter database close
alter database recover managed standby database disconnect from session;

15. 主库修改参数文件
cp init.ora initprimary.ora
vi initprimary.ora
添加下列行

utl_file_dir='/u01/app/oracle'
standby_archive_dest='/u02/oradata/devdb1/stdarch'
fal_server='STANDBY'
fal_client='PRIMARY'
standby_file_management='AUTO'


16. 主库切换到备用模式

alter database commit to switchover to physical standby with session shutdown;
shutdown immediate;
startup nomount pfile="/u01/app/oracle/admin/devdb1/scripts/initprimary.ora";
alter database mount standby database;
alter database recover managed standby database disconnect from session;

17. 备库切换到主模式
alter database commit to switchover to primary
shutdown immediate;
startup pfile="/u01/app/oracle/admin/devdb1/scripts/initstandby.ora";


18. 备库切换到主模式后设置归档日志发送路径
alter system set log_archive_dest_2='service=primary mandatory reopen=60'; //将日志发回 主库


19.检查主库、备库的alter 文件

主库
Tue Mar 18 05:58:14 2008
Media Recovery Log /u02/oradata/devdb1/stdarch/1_8.dbf
Media Recovery Waiting for thread 1 seq# 9

备库
Creating archive destination LOG_ARCHIVE_DEST_2: 'primary'
Creating archive destination LOG_ARCHIVE_DEST_1: '/u02/oradata/devdb1/archive/1_8.dbf'
ARC1: Completed archiving log 1 thread 1 sequence 8


20. 备库切换回备用模式
alter database commit to switchover to physical standby with session shutdown;
shutdown immediate;
startup nomount pfile="/u01/app/oracle/admin/devdb1/scripts/initstandby.ora";
alter database mount standby database;
alter database recover managed standby database disconnect from session;


21.主库切换到主模式
alter database commit to switchover to primary
shutdown immediate;
startup pfile="/u01/app/oracle/admin/devdb1/scripts/initprimary.ora";

22. 主库设置归档日志发送路径
alter system set log_archive_dest_2='service=standby mandatory reopen=60';

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-1005262/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/35489/viewspace-1005262/

下载前必看:https://pan.quark.cn/s/a4b39357ea24 在本资料中,将阐述如何运用JavaScript达成单击下拉列表框选定选项后即时转向对应页面的功能。 此种技术适用于网页布局中用户需迅速选取并转向不同页面的情形,诸如网站导航栏或内容目录等场景。 达成此功能,能够显著改善用户交互体验,精简用户的操作流程。 我们须熟悉HTML里的`<select>`组件,该组件用于构建一个选择列表。 用户可从中选定一项,并可引发一个事件来响应用户的这一选择动作。 在本次实例中,我们借助`onchange`事件监听器来实现当用户在下拉列表框中选定某个选项时,页面能自动转向该选项关联的链接地址。 JavaScript里的`window.location`属性旨在获取或设定浏览器当前载入页面的网址,通过变更该属性的值,能够实现页面的转向。 在本次实例的实现方案里,运用了`eval()`函数来动态执行字符串表达式,这在现代的JavaScript开发实践中通常不被推荐使用,因为它可能诱发安全问题及难以排错的错误。 然而,为了本例的简化展示,我们暂时搁置这一问题,因为在更复杂的实际应用中,可选用其他方法,例如ES6中的模板字符串或其他函数来安全地构建和执行字符串。 具体到本例的代码实现,`MM_jumpMenu`函数负责处理转向逻辑。 它接收三个参数:`targ`、`selObj`和`restore`。 其中`targ`代表要转向的页面,`selObj`是触发事件的下拉列表框对象,`restore`是标志位,用以指示是否需在转向后将下拉列表框的选项恢复至默认的提示项。 函数的实现通过获取`selObj`中当前选定的`selectedIndex`对应的`value`属性值,并将其赋予`...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值