eygle.com   eygle.com
eygle.com  
 
留言簿 - Powered by eYgLe.Com
eygle.com 我要留言
《深入浅出Oracle》内容简介
昵称
内容 页: 1 - << < 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 > >> - 313
# 42791
qi




To: eygle
  谢谢eygle,问题已解决,增加了参数:_allow_resetlogs_corruption=true
然后recover database using backup controlfile until cancel;
alter database open resetlogs;
数据库终于启动成功!
不过原理不很明白 ,呵呵。
From: qi
2007.04.12 14:51
To: qi
  
强制数据库跳过一系列的一致性检查,这些参数我的网站上就有文章介绍。

现在越来越懒得提这些隐含参数了,要学习怎样使数据库免于面临这样的境地。

From: eygle
2007.04.12 15:53

版主选项: 回复 编辑
# 42790
qi




To: eygle
   你resetlogs过了,日志被你清空了。

那再怎么办?开机开不了了?开机就是数据文件需要恢复。
From: qi
2007.04.12 08:02

版主选项: 回复 编辑
# 42789
Chi


来自: Mexico


To: Eygle
  I saw your blog about the Oracle process priority in AIX machine. Because I have a AIX p550 with OS 5.3L and Oracle 10g R2 on it, the article is very interesting.While I went back to original IBM document, I was little confused with the PID number used for the setpri().My question how to find the PID for Oracle in AIX? I means which one.Becuase using "ps -ef | grep oracle", it will return at least a dozen numbers about Oracle.Besides it's a number constantly changed.
From: Chi
2007.04.12 07:40
To: Chi
  
招后台进程啊,只要数据库不重新启动,其进程号是不会改变的:
[oracle@danaly dbs]$ ps -ef|grep ora_
oracle 25021 10 Jan28 ?00:01:48 ora_pmon_danaly
oracle 25023 10 Jan28 ?00:01:48 ora_psp0_danaly
oracle 25025 10 Jan28 ?00:00:16 ora_mman_danaly
oracle 25027 10 Jan28 ?00:47:47 ora_dbw0_danaly
oracle 25029 10 Jan28 ?00:15:55 ora_lgwr_danaly
oracle 25031 10 Jan28 ?00:05:12 ora_ckpt_danaly
oracle 25033 10 Jan28 ?00:13:38 ora_smon_danaly
oracle 25035 10 Jan28 ?00:00:11 ora_reco_danaly
oracle 25037 10 Jan28 ?00:03:41 ora_cjq0_danaly
oracle 25039 10 Jan28 ?00:15:40 ora_mmon_danaly
oracle 25041 10 Jan28 ?00:02:09 ora_mmnl_danaly
oracle 25043 10 Jan28 ?00:00:00 ora_d000_danaly
oracle 25045 10 Jan28 ?00:00:00 ora_s000_danaly
oracle 25048 10 Jan28 ?00:00:06 ora_asmb_danaly
oracle 25052 10 Jan28 ?00:00:01 ora_rbal_danaly
oracle 25065 10 Jan28 ?00:00:00 ora_qmnc_danaly
oracle 25087 10 Jan28 ?00:03:54 ora_q000_danaly
oracle 25089 10 Jan28 ?00:00:00 ora_q001_danaly
oracle 28653 10 Apr10 ?00:00:00 ora_o000_danaly
oracle963873540 15:41 pts/000:00:00 grep ora_

From: eygle
2007.04.12 15:52

版主选项: 回复 编辑
# 42788
qi




To: eygle
  其实我之前做了每一个redo文件都试过了,不行.
SQL> recover database using backup controlfile until cancel;
ORA-00279: 更改 396933 (在 04/04/2007 15:07:28 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ARCHIVE\ARC0012.ARC
ORA-00280: 更改 396933 对于线程 1 是按序列 # 2 进行的
指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
F:\ORACLE\ORADATA\DWYC\REDO03.LOG
ORA-00339: 归档日志未包含任何重做
ORA-00334: 归档日志: 'F:\ORACLE\ORADATA\DWYC\REDO03.LOG'
ORA-01547: 警告: RECOVER 成功但 OPEN RESETLOGS 将出现如下错误
ORA-01194: 文件1需要更多的恢复来保持一致性
ORA-01110: 数据文件 1: 'F:\ORACLE\ORADATA\DWYC\SYSTEM01.DBF'
查询redo文件如下:SQL> select * from v$log;
GROUP#THREAD#SEQUENCE#BYTESMEMBERS ARC STATUS
---------- ---------- ---------- ---------- ---------- --- -------------
FIRST_CHANGE# FIRST_TIME
------------- ----------
 1101048576001 YES UNUSED
0
  2101048576001 YES UNUSED
0
 3101048576001 YES INVALIDATED
0
查询数据文件的SCN为:396933

From: qi
2007.04.11 16:01
To: qi
  你resetlogs过了,日志被你清空了。
From: eygle
2007.04.11 16:24

版主选项: 回复 编辑
# 42787
alwyn




To: TO:EYGLE
  尊敬的EYGL:日志文件出现下面的错误是为什么啊,期待回答,辛苦了,谢谢。
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-00607: 当更改数据块时出现内部错误
ORA-00600: 内部错误代码, 参数: [4194], [34], [33], [], [], [], [], []
From: alwyn
2007.04.11 15:22

版主选项: 回复 编辑
# 42786
qi




To: eygle
  我先看了看物理文件发现redo.log文件的日期(4-4)和数据文件(4-11)及控制文件(4-11)的日期是不一致的.对数据库操作如下:
SQL> shutdown immediate
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
.......
数据库装载完毕。
ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项
SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR 位于第 1 行:
ORA-01194: 文件1需要更多的恢复来保持一致性
ORA-01110: 数据文件 1: 'F:\ORACLE\ORADATA\DWYC\SYSTEM01.DBF'
SQL> recover database using backup controlfile until cancel;
ORA-00279: 更改 396933 (在 04/04/2007 15:07:28 生成) 对于线程 1
ORA-00289: 建议: E:\ARCHIVE\ARC0012.ARC
ORA-00280: 更改 396933 对于线程 1 是按序列 # 2 进行的
指定日志: {<RET>=suggested | filename | AUTO | CANCEL}
auto
ORA-00308: 无法打开存档日志 'E:\ARCHIVE\ARC0012.ARC'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。
ORA-01547: 警告: RECOVER 成功但 OPEN RESETLOGS 将出现如下错误
ORA-01194: 文件1需要更多的恢复来保持一致性
ORA-01110: 数据文件 1: 'F:\ORACLE\ORADATA\DWYC\SYSTEM01.DBF'


From: qi
2007.04.11 13:52
To: qi
  最后输入当前Redo Log File的名字去执行恢复。
From: eygle
2007.04.11 13:53

版主选项: 回复 编辑
# 42785
qi




To: eygle
  
  你这个信息不全啊,为什么要重建控制文件啊?

想根据冷备份和归档日志作不完全恢复,结果恢复时如果把三种文件全恢复,则只能恢复到冷备份的状态,后来就只恢复了数据文件,又用了resetlogs参数,数据库打不开,所以就重建控制文件。重建控制文件能成功,但是再往下进行就不行了,我看了下物理文件,还有redo.log文件的日期是不一致的。但是用resetlogs还是打不开数据库,报出错。

From: qi
2007.04.11 10:15

版主选项: 回复 编辑
# 42784
yang




To:
  你好,请问ZHS16CGB231280跟ZHS16GBK两者有什么关系?

此致
敬礼!

From: yang
2007.04.11 03:21
To: yang
  没什么关系,来自不同的国家标准而已。两者并没有包含关系,zhs16gbk容纳的汉字更多
From: eygle
2007.04.11 08:46

版主选项: 回复 编辑
# 42783
cgb




To: eygle
  一表TAB_ADDR两字段,一字段ADDR记录地址如:中国广东深圳市罗湖区建设路123号.想要通过建立索引等机制,实现对 where addr='中国广东深圳市罗湖区建设路123号'的快速匹配.请教有何建议?
表及需要匹配之数据都是过万级的记录.
  此致
敬礼!
From: cgb
2007.04.10 21:46
To: cgb
  对全地址字段进行索引效率恐怕不会高,你可以考虑先对地区字段索引,比如广东,再通过分区进行区间扫描。
From: eygle
2007.04.11 08:45

版主选项: 回复 编辑
# 42782
lost




To: eygle
  一表TAB_ADDR两字段,一字段ADDR记录地址如:中国广东深圳市罗湖区建设路123号.想要通过建立索引等机制,实现对 where addr='中国广东深圳市罗湖区建设路123号'的快速匹配.请教有何建议?

  此致
敬礼!
From: lost
2007.04.10 20:55

版主选项: 回复 编辑

页: 1 - << < 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 > >> - 313
我要留言
Copyright © 2003-2008 eygle.com All Rights Reserved.
Powered by: www.eYgLe.com