设为首页 加入收藏

TOP

Oracle数据库迁移及问题处理两例(一)
2016-12-12 08:15:11 】 浏览:472
Tags:Oracle 数据库 迁移 问题 处理

一.问题描述:
由于需要将一个生产库停机冷备份copy到本机的新存储上,新存储在链路聚合操作时重启solairs 10后,无法识别所有光纤卡,尝试各种办法都无法找到光纤卡,且原OS系统在经过多种操作后,OS都无法启动。杯具发生,由于生产环境停机时间有限,所以决定将原存储分配到备机上,开启数据库。
启动数据库时,报redo log找不到:
SQL> conn /as sysdba
Connected to an idle instance.
SQL> startup
Oracle instance started.


Total System Global Area 4.2771E+10 bytes
Fixed Size 2118064 bytes
Variable Size 1.0522E+10 bytes
Database Buffers 3.2212E+10 bytes
Redo Buffers 34709504 bytes
Database mounted.
ORA-00313: open failed for members of log group 15 of thread 1
ORA-00312: online log 15 thread 1: '/apps/redolog/redo15.log'



二.问题分析:


1.查看控制文件中redo log有哪些在本地文件系统中:


SQL> select open_mode from v$database; ---查看数据库现在处于mounted状态


OPEN_MODE
----------
MOUNTED


SQL> alter database backup controlfile to trace; ---产生控制文件trace


Database altered.


SQL> oradebug setmypid; ---定位trace路径
Statement processed.
SQL> oradebug tracefile_name;
/rdcpc/oracpc/diag/rdbms/rdcpc/rdcpc/trace/rdcpc_ora_3655.trc
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options


-bash-3.00$ more /rdcpc/oracpc/diag/rdbms/rdcpc/rdcpc/trace/rdcpc_ora_3655.trc
.................................................................
-- ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "RDCPC" NORESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 200
MAXINSTANCES 8
MAXLOGHISTORY 11680
LOGFILE
GROUP 1 (
'/cpcdata4/redologa/redo01a.log',
'/cpcdata5/redologb/redo01b.log'
) SIZE 200M,
GROUP 2 (
'/cpcdata4/redologa/redo02a.log',
'/cpcdata5/redologb/redo02b.log'
) SIZE 200M,
GROUP 3 (
'/cpcdata4/redologa/redo03a.log',
'/cpcdata5/redologb/redo03b.log'
) SIZE 200M,
GROUP 4 (
'/cpcdata4/redologa/redo04a.log',
'/cpcdata5/redologb/redo04b.log'
) SIZE 200M,
GROUP 5 (
'/cpcdata4/redologa/redo05a.log',
'/cpcdata5/redologb/redo05b.log'
) SIZE 200M,
GROUP 15 '/apps/redolog/redo15.log' SIZE 200M
-- STANDBY LOGFILE
DATAFILE
'/cpcdata1/data1/system01.dbf',
'/cpcdata1/data1/sysaux01.dbf',
'/cpcdata4/undo/undotbs01.dbf',
'/cpcdata1/data1/users01.dbf',
'/cpcdata2/data2/cpcbase01.dbf',
'/cpcdata2/data2/cpcbase_idx01.dbf',
'/cpcdata2/data2/cpcbase02.dbf',
........................................................................................
确认只有group 15的redo log是放在本地文件系统/apps下。


2.检查group 15的redo log 状态
SQL> desc v$log;
Name Null Type
----------------------------------------- -------- ----------------------------
GROUP# NUMBER
THREAD# NUMBER
SEQUENCE# NUMBER
BYTES NUMBER
MEMBERS NUMBER
ARCHIVED VARCHAR2(3)
STATUS VARCHAR2(16)
FIRST_CHANGE# NUMBER
FIRST_TIME DATE


SQL> select group#,members,archived,status from v$log;


GROUP# MEMBERS ARC STATUS
---------- ---------- --- ----------------
1 2 YES INACTIVE
2 2 YES INACTIVE
15 1 YES INACTIVE
4 2 YES INACTIVE
5 2 NO CURRENT
3 2 YES INACTIVE


6 rows selected.
确认group 15已有归档,且是inactive状态。
当在open DB时,数据库会检测控制文件中各文件是否存在,所以报找不到redo15.log文件的错误。


三.解决方法:
inactive状态且已归档的redo log可以在线drop,数据库不需要用到这些redo。


SQL> alter database drop logfile group 15;


Database altered.


SQL> alter database open;


Database altered.



数据库迁移问题二:
一.问题描述:
原数据库存储划分迁移到备机后,重新建立oracle用户,并对oracle程序目录统一执行了chown oracpc:dba /rdcpc,启动

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇MySQL 5.7多源复制(Multi-Source .. 下一篇Oracle 12C数据库PSU补丁安装方式..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目