ITPub博客

首页 > 应用开发 > IT综合 > STANDBY DATABASE平常维护处理操作脚本和说明

STANDBY DATABASE平常维护处理操作脚本和说明

原创 IT综合 作者:davies 时间:2007-01-30 19:30:39 0 删除 编辑
STANDBY DATABASE平常维护处理操作脚本和说明[@more@]

平时检查:
1.从操作系统查看日志文件是否从主数据库传到备用数据库上

2.查看数据库告警文件(入E:oracleadminorclbdumpalert_orcl)有无告警

正常归档的日志有如下:
Sun Jan 14 12:00:05 2007
ARC2: Evaluating archive log 3 thread 1 sequence 10
ARC2: Beginning to archive log 3 thread 1 sequence 10
Creating archive destination LOG_ARCHIVE_DEST_2: 'orcl_aux'(日志文件传到TNSNAME为orcl_aux的服务器上)
Creating archive destination LOG_ARCHIVE_DEST_1: 'D:ORACLEARCH1ARCH01ARC00010.001'(日志文件本地归档)
ARC2: Completed archiving log 3 thread 1 sequence 10
如果出现日志文件没有传到备用数据库在主数据库上重新启动日志传输服务:
SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=standby' SCOPE=BOTH;
(其中standby是在主数据库上为备用数据库配置的tnsname)
SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE SCOPE=BOTH;
3.查看日志文件是否在备用数据库上应用:

备用数据库上执行
SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

SEQUENCE# APP
---------- ---
219 YES
220 YES(yes表示已经应用)

用只读模式打开备用数据库(备用数据库操作):
方法一:
1.关闭数据库
SQL> STARTUP IMMEDIATE;
2.到nomount状态
SQL> STARTUP NOMOUNT;
3.数据库置为备用数据库状态(此时不会自动进行日志恢复)
SQL> ALTER DATABASE MOUNT STANDBY DATABASE;
4.只读模式打开数据库
SQL> ALTER DATABASE OPEN READ ONLY;
此时所有用户可以正常连接进行数据库的读操作,如果用到大的排序,需要使用临时表空间
需要手工给它创建一个

方法2:
1.取消数据库的自动恢复
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
4.只读模式打开数据库
SQL> ALTER DATABASE OPEN READ ONLY;
此时所有用户可以正常连接进行数据库的读操作,如果用到大的排序,需要使用临时表空间
需要手工给它创建一个

再次使备用数据库到恢复状态:

SQL> conn / as sysdba;(用sysdba连接)
SQL> STARTUP IMMEDIATE;
SQL> STARTUP NOMOUNT; (启动到nomount状态)
ORACLE 例程已经启动。

Total System Global Area 370221140 bytes
Fixed Size 454740 bytes
Variable Size 343932928 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
SQL> ALTER DATABASE MOUNT STANDBY DATABASE;(以备用数据库方式启动到mount状态)
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;(设置数据库为后台恢复)

是备用数据库在正常数据库状态(可读可写):
1.取消自动恢复
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
2.激活物理备用数据库
SQL> ALTER DATABASE ACTIVATE PHYSICAL STANDBY DATABASE SKIP STANDBY LOGFILE;
3.关闭数据库
SQL> SHUTDOWN IMMEDIATE;
4.打开数据库
SQL> STARTUP
注意这时数据库在正常状态,可以正常使用,但是不可以在恢复为备用数据库,
平时测试时,先在执行(1.取消自动恢复)前用shutdown immediate关闭数据库
备用数据库所用文件在进行操作,操作完后用备用的就可以再到备用数据库状态。

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

请登录后发表评论 登录
全部评论
  • 博文量
    81
  • 访问量
    507774