Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

70

积分

0

好友

22

主题
1#
发表于 2012-4-27 13:46:42 | 查看: 9200| 回复: 1
数据库环境描述:

操作系统版本: Oracle Enterprise Linux 5.5 64bit
数据库版本     : Oracle 11.2.0.1
数据库类型     : RAC

节   点    数     :   4个



1、客户端连接数据库 现象如下:

2012 12:59:32

Copyright (c) 1997, 2010, Oracle.  All rights reserved.

已使用的参数文件:
c:\app\swgsw\product\11.2.0\client_1\network\admin\sqlnet.ora


已使用 TNSNAMES 适配器来解析别名
尝试连接 (DESCRIPTION = (LOAD_BALANCE = on)(FAILOVER = on) (ADDRESS = (PROTOCOL
= TCP)(HOST = 10.65.99.14)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 10.6
5.99.15)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 10.65.99.16)(PORT = 15
21)) (ADDRESS = (PROTOCOL = TCP)(HOST = 10.65.99.17)(PORT = 1521)) (CONNECT_DATA
= (SERVER = DEDICATED) (SERVICE_NAME = bxrac) (FAILOVER_MODE = (TYPE = SELECT)(
METHOD = BASIC)(RETRIES = 180))))
OK (30 毫秒)

C:\Users\swgsw>sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on 星期五 4月 27 12:59:34 2012

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

SQL> conn business/xxxxxx@bxrac1
已连接。
SQL> show sga

Total System Global Area 1603411968 bytes
Fixed Size                  2213776 bytes
Variable Size            1040189552 bytes
Database Buffers          553648128 bytes
Redo Buffers                7360512 bytes
SQL> select * from fgrzrxx ; (为业务数据表)
select * from fgrzrxx
              *
第 1 行出现错误:
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-01115: 从文件  读取块时出现 IO 错误 (块 # )
ORA-01110: 数据文件 1: '+DG1/bxrac/datafile/system.259.771948277'
ORA-15081: 无法将 I/O 操作提交到磁盘
ORA-00604: 递归 SQL 级别 1 出现错误
ORA-01115: 从文件  读取块时出现 IO 错误 (块 # )
ORA-01110: 数据文件 1: '+DG1/bxrac/datafile/system.259.771948277'
ORA-15081: 无法将 I/O 操作提交到磁盘


2、ASM alert :详见附件 asm_alert.log

    DB alert   :   详见附件 db_alert.log


2.1 操作系统层面 :

ASM 使用的是 裸设备 /dev/raw/raw

各个节点 裸设备的 权限分配如下:

[root@bxrac02 ~]# ssh bxrac01 ls -al /dev/raw/*
crw-rw---- 1 grid dba      162, 1 Apr 27 13:20 /dev/raw/raw1
crw-rw---- 1 grid dba      162, 2 Apr 27 13:18 /dev/raw/raw2
crw-rw---- 1 grid dba      162, 3 Apr 27 13:14 /dev/raw/raw3
crw-rw---- 1 grid dba      162, 4 Apr 27 13:20 /dev/raw/raw4
crw-rw---- 1 grid dba      162, 5 Apr 27 13:20 /dev/raw/raw5
crw-rw---- 1 grid asmadmin 162, 6 Apr 27 13:20 /dev/raw/raw6
crw-rw---- 1 grid asmadmin 162, 7 Apr 27 12:03 /dev/raw/raw7
crw-rw---- 1 grid dba      162, 8 Apr 27 13:20 /dev/raw/raw8
crw-rw---- 1 grid dba      162, 9 Apr 27 12:02 /dev/raw/raw9
[root@bxrac02 ~]# ssh bxrac02 ls -al /dev/raw/*
crw-rw---- 1 grid dba      162, 1 Apr 27 13:20 /dev/raw/raw1
crw-rw---- 1 grid dba      162, 2 Apr 27 13:17 /dev/raw/raw2
crw-rw---- 1 grid dba      162, 3 Apr 27 13:00 /dev/raw/raw3
crw-rw---- 1 grid dba      162, 4 Apr 27 13:20 /dev/raw/raw4
crw-rw---- 1 grid dba      162, 5 Apr 27 13:00 /dev/raw/raw5
crw-rw---- 1 grid asmadmin 162, 6 Apr 27 13:20 /dev/raw/raw6
crw-rw---- 1 grid asmadmin 162, 7 Apr 27 12:03 /dev/raw/raw7
crw-rw---- 1 grid dba      162, 8 Apr 27 13:17 /dev/raw/raw8
crw-rw---- 1 grid dba      162, 9 Apr 27 12:02 /dev/raw/raw9
[root@bxrac02 ~]# ssh bxrac03 ls -al /dev/raw/*
crw-rw---- 1 grid dba      162, 1 Apr 27 13:20 /dev/raw/raw1
crw-rw---- 1 grid dba      162, 2 Apr 27 13:20 /dev/raw/raw2
crw-rw---- 1 grid dba      162, 3 Apr 27 12:36 /dev/raw/raw3
crw-rw---- 1 grid dba      162, 4 Apr 27 13:20 /dev/raw/raw4
crw-rw---- 1 grid dba      162, 5 Apr 27 13:20 /dev/raw/raw5
crw-rw---- 1 grid asmadmin 162, 6 Apr 27 13:20 /dev/raw/raw6
crw-rw---- 1 grid asmadmin 162, 7 Apr 27 12:35 /dev/raw/raw7
crw-rw---- 1 grid dba      162, 8 Apr 27 13:18 /dev/raw/raw8
crw-rw---- 1 grid dba      162, 9 Apr 27 12:02 /dev/raw/raw9
[root@bxrac02 ~]# ssh bxrac04 ls -al /dev/raw/*
crw-rw---- 1 grid dba      162, 1 Apr 27 13:20 /dev/raw/raw1
crw-rw---- 1 grid dba      162, 2 Apr 27 13:19 /dev/raw/raw2
crw-rw---- 1 grid dba      162, 3 Apr 27 13:20 /dev/raw/raw3
crw-rw---- 1 grid dba      162, 4 Apr 27 13:20 /dev/raw/raw4
crw-rw---- 1 grid dba      162, 5 Apr 27 13:00 /dev/raw/raw5
crw-rw---- 1 grid asmadmin 162, 6 Apr 27 13:20 /dev/raw/raw6
crw-rw---- 1 grid asmadmin 162, 7 Apr 27 12:35 /dev/raw/raw7
crw-rw---- 1 grid dba      162, 8 Apr 27 13:20 /dev/raw/raw8
crw-rw---- 1 grid dba      162, 9 Apr 27 12:02 /dev/raw/raw9


[grid@bxrac02 ~]$ srvctl status diskgroup -g DG1 -a
Disk Group DG1 is running on bxrac01,bxrac02,bxrac03,bxrac04
Disk Group DG1 is enabled





ASM 相关信息:
SQL> select GROUP_NUMBER,DISK_NUMBER,MOUNT_STATUS,HEADER_STATUS,NAME,PATH from v$asm_disk;

GROUP_NUMBER DISK_NUMBER MOUNT_S HEADER_STATU NAME PATH
------------ ----------- ------- ------------ ------------------------------ ------------------------------
0 1 CLOSED MEMBER /dev/raw/raw9
3 1 CACHED MEMBER OCRVDG_0001 /dev/raw/raw7
3 0 CACHED MEMBER OCRVDG_0000 /dev/raw/raw6
2 2 CACHED MEMBER DG2_0002 /dev/raw/raw5
2 1 CACHED MEMBER DG2_0001 /dev/raw/raw4
2 0 CACHED MEMBER DG2_0000 /dev/raw/raw3
1 1 CACHED MEMBER DG1_0001 /dev/raw/raw2
1 0 CACHED MEMBER DG1_0000 /dev/raw/raw1
1 2 CACHED MEMBER DG1_0002 /dev/raw/raw8

SQL> select group_number, name, state, type, total_mb, free_mb from v$asm_diskgroup;

GROUP_NUMBER NAME                           STATE       TYPE     TOTAL_MB    FREE_MB
------------ ------------------------------ ----------- ------ ---------- ----------
           1 DG1                            MOUNTED     EXTERN     102398          1
           2 DG2                            MOUNTED     EXTERN     153597      40303
           3 OCRVDG                      MOUNTED     EXTERN       2046       1564



请问还需要从那个方向去诊断问题呢?


[ 本帖最后由 swgsw 于 2012-4-27 13:47 编辑 ]

asm_alert.rar

1.15 KB, 下载次数: 1079

ASM Alert日志

DB_alert.rar

1.09 KB, 下载次数: 1060

数据库的alert日志

2#
发表于 2012-4-27 15:44:08
问题定位:

1、 /raw/raw1-9 的权限应该均为 grid:asmadmin

2、Database Will Not Mount: ORA-15025, ORA-27041, 'Permission denied', ORA-15081 [ID 1378747.1]


CauseHowever the problem is that the Database oracle executable is not assigned to the ASM OSASM group (instead is assigned to the 'oinstall' group):


-rwsr-s--x 1 oracle oinstall 210973186 May 31 21:25 /appl/oracle/OracleHomes/11.2.0/bin/oracle

It needs to be:


-rwsr-s--x 1 oracle asmadmin 210973186 May 31 21:25 /appl/oracle/OracleHomes/11.2.0/bin/oracle


SolutionTo correct the proper group for the Database oracle executable, do:


As the <asm_home sfw owner>:
$ cd <asm_home>/bin
$ ./setasmgidwrap o=<db_home>/bin/oracle


Now check that the primary group for the Database oracle executable is now asmadmin (not oinstall).

If done, restart the database.



仿照例子: 在四个节点上用 root 均运行:

[root@bxrac02 ~]# /u01/app/11.2.0/grid/bin/setasmgidwrap o=/u01/app/oracle/product/11.2.0/bxrac/bin/oracle


在每个节点检查一遍 否是 修改成为 asmadmin组,而不在是 oinstall。


故常排除。

在此  特别感谢   上海-苦逼男(187356365) 给我的技术支持。




[ 本帖最后由 swgsw 于 2012-4-27 15:46 编辑 ]

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-12-24 10:23 , Processed in 0.051970 second(s), 25 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569