Bo's Oracle Station

查看: 2120|回复: 0

课程第20次(2018-07-24星期二)

[复制链接]

1005

主题

1469

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
12012
发表于 2018-7-24 19:18:40 | 显示全部楼层 |阅读模式
制造逻辑坏块的办法:
  1. SQL> conn / as sysdba
  2. Connected.
  3. SQL> create tablespace tbslogical  datafile size 5M  nologging;

  4. Tablespace created.

  5. SQL> conn hr/oracle_4U
  6. Connected.
  7. SQL> create table tlogical (  a number , b varchar2(20))   tablespace tbslogical;

  8. Table created.

  9. SQL> insert into tlogical values (123456,'ABCDEF') ;

  10. 1 row created.

  11. SQL> commit;

  12. Commit complete.

  13. SQL> select  a, b , rowid, dbms_rowid.rowid_block_number(rowid) from tlogical;

  14.          A B                        ROWID
  15. ---------- -------------------- ------------------
  16. DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID)
  17. ------------------------------------
  18.     123456 ABCDEF                AAATyeAAGAAAACEAAA
  19.                                  132

  20. SQL> insert into  tlogical  select  * from tlogical;

  21. 1 row created.

  22. SQL> commit;

  23. Commit complete.

  24. SQL> select  a, b , rowid, dbms_rowid.rowid_block_number(rowid) from tlogical;

  25.          A B                        ROWID
  26. ---------- -------------------- ------------------
  27. DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID)
  28. ------------------------------------
  29.     123456 ABCDEF                AAATyeAAGAAAACEAAA
  30.                                  132

  31.     123456 ABCDEF                AAATyeAAGAAAACEAAB
  32.                                  132


  33. SQL> insert /*+ append */ into  tlogical  select  * from tlogical;

  34. 2 rows created.

  35. SQL> commit;

  36. Commit complete.

  37. SQL>  select  a, b , rowid, dbms_rowid.rowid_block_number(rowid) from tlogical;

  38.          A B                        ROWID
  39. ---------- -------------------- ------------------
  40. DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID)
  41. ------------------------------------
  42.     123456 ABCDEF                AAATyeAAGAAAACEAAA
  43.                                  132

  44.     123456 ABCDEF                AAATyeAAGAAAACEAAB
  45.                                  132

  46.     123456 ABCDEF                AAATyeAAGAAAACIAAA
  47.                                  136


  48.          A B                        ROWID
  49. ---------- -------------------- ------------------
  50. DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID)
  51. ------------------------------------
  52.     123456 ABCDEF                AAATyeAAGAAAACIAAB
  53.                                  136


  54. SQL>
复制代码
以上说明,直接路径加载在高水位线之后:
  1. select  * from dba_extents e where e.owner='HR'
  2. and e.segment_name='TLOGICAL';
复制代码
   OWNERSEGMENT_NAMEPARTITION_NAMESEGMENT_TYPETABLESPACE_NAMEEXTENT_IDFILE_IDBLOCK_IDBYTESBLOCKSRELATIVE_FNO
1HRTLOGICAL TABLETBSLOGICAL061286553686
2HRTLOGICAL TABLETBSLOGICAL161366553686

  1. SQL> conn / as sysdba
  2. Connected.
  3. SQL> alter tablespace tbslogical offline immediate;

  4. Tablespace altered.

  5. SQL> alter tablespace tbslogical online;
  6. alter tablespace tbslogical online
  7. *
  8. ERROR at line 1:
  9. ORA-01113: file 6 needs media recovery
  10. ORA-01110: data file 6: '+DATA/orcl/datafile/tbslogical.267.982351183'


  11. SQL> alter database create datafile '+DATA/orcl/datafile/tbslogical.267.982351183' as new;

  12. Database altered.

  13. SQL> recover datafile 6;
  14. Media recovery complete.
  15. SQL>  alter tablespace tbslogical online;

  16. Tablespace altered.

  17. SQL> conn hr/oracle_4U
  18. Connected.
  19. SQL> select  * from tlogical ;
  20. ERROR:
  21. ORA-01578: ORACLE data block corrupted (file # 6, block # 136)
  22. ORA-01110: data file 6: '+DATA/orcl/datafile/tbslogical.268.982352119'
  23. ORA-26040: Data block was loaded using the NOLOGGING option



  24. no rows selected

复制代码

Support Workbench打包(IPS),打出了ADR的一部分:
b.png


进一步检查逻辑坏块:
  1. RMAN> backup  validate  check logical  datafile 6;

  2. Starting backup at 24-JUL-18
  3. allocated channel: ORA_SBT_TAPE_1
  4. channel ORA_SBT_TAPE_1: SID=207 device type=SBT_TAPE
  5. channel ORA_SBT_TAPE_1: Oracle Secure Backup
  6. allocated channel: ORA_SBT_TAPE_2
  7. channel ORA_SBT_TAPE_2: SID=77 device type=SBT_TAPE
  8. channel ORA_SBT_TAPE_2: Oracle Secure Backup
  9. channel ORA_SBT_TAPE_1: starting full datafile backup set
  10. channel ORA_SBT_TAPE_1: specifying datafile(s) in backup set
  11. input datafile file number=00006 name=+DATA/orcl/datafile/tbslogical.268.982352119
  12. channel ORA_SBT_TAPE_1: backup set complete, elapsed time: 00:00:01
  13. List of Datafiles
  14. =================
  15. File Status Marked Corrupt Empty Blocks Blocks Examined High SCN
  16. ---- ------ -------------- ------------ --------------- ----------
  17. 6    OK     1              504          640             4085368   
  18.   File Name: +DATA/orcl/datafile/tbslogical.268.982352119
  19.   Block Type Blocks Failing Blocks Processed
  20.   ---------- -------------- ----------------
  21.   Data       0              5               
  22.   Index      0              0               
  23.   Other      0              131            

  24. Finished backup at 24-JUL-18

  25. RMAN>
复制代码
  1. select  * from v$database_block_corruption;
复制代码
   FILE#BLOCK#BLOCKSCORRUPTION_CHANGE#CORRUPTION_TYPE
1613614077248NOLOGGING

MOS视频和补丁的下载:
https://www.botangdb.com/forum.php?mod=viewthread&tid=1070&highlight=MOS

  1. [oracle@station90 online]$ /u01/app/oracle/product/11.2.0/dbhome_1/OPatch/opatch apply -connectString orcl::: -connectString rcat:::

  2. Oracle 中间补丁程序安装程序版本 11.2.0.3.6
  3. 版权所有 (c) 2013, Oracle Corporation。保留所有权利。


  4. Oracle Home       : /u01/app/oracle/product/11.2.0/dbhome_1
  5. Central Inventory : /u01/app/oraInventory
  6.    from           : /u01/app/oracle/product/11.2.0/dbhome_1/oraInst.loc
  7. OPatch version    : 11.2.0.3.6
  8. OUI version       : 11.2.0.3.0
  9. Log file location : /u01/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/13906496_Jul_24_2018_21_29_29/apply2018-07-24_21-29-29下午_1.log


  10. 补丁程序只应在 '-all_nodes' 模式下应用/回退。
  11. 将 RAC 模式转换为 '-all_nodes' 模式。
  12. Applying interim patch '13906496' to OH '/u01/app/oracle/product/11.2.0/dbhome_1'
  13. Verifying environment and performing prerequisite checks...
  14. All checks passed.
  15. 提供电子邮件地址以用于接收有关安全问题的通知, 安装 Oracle Configuration Manager 并启动它。如果您使用 My Oracle
  16. Support 电子邮件地址/用户名, 操作将更简单。
  17. 有关详细信息, 请访问 http://www.oracle.com/support/policies.html。
  18. 电子邮件地址/用户名:

  19. 尚未提供电子邮件地址以接收有关安全问题的通知。
  20. 是否不希望收到有关安全问题 (是 [Y], 否 [N]) [N] 的通知:  Y


  21. Backing up files...

  22. 正在为组件 oracle.rdbms, 11.2.0.3.0 打补丁...
  23. 正在数据库 'rcat' 上安装和启用联机补丁程序 'bug13906496.pch'。


  24. Verifying the update...
  25. Patch 13906496 successfully applied
  26. Log file location: /u01/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/13906496_Jul_24_2018_21_29_29/apply2018-07-24_21-29-29下午_1.log

  27. OPatch succeeded.
  28. [oracle@station90 online]$
复制代码
  1. [oracle@station90 online]$ /u01/app/oracle/product/11.2.0/dbhome_1/OPatch/opatch  rollback  -id  13906496  -connectString orcl::: -connectString rcat:::

  2. Oracle 中间补丁程序安装程序版本 11.2.0.3.6
  3. 版权所有 (c) 2013, Oracle Corporation。保留所有权利。


  4. Oracle Home       : /u01/app/oracle/product/11.2.0/dbhome_1
  5. Central Inventory : /u01/app/oraInventory
  6.    from           : /u01/app/oracle/product/11.2.0/dbhome_1/oraInst.loc
  7. OPatch version    : 11.2.0.3.6
  8. OUI version       : 11.2.0.3.0
  9. Log file location : /u01/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/13906496_Jul_24_2018_21_31_21/rollback2018-07-24_21-31-21下午_1.log

  10. RollbackSession 从 OH '/u01/app/oracle/product/11.2.0/dbhome_1' 回退中间补丁程序 '13906496'

  11. 补丁程序只应在 '-all_nodes' 模式下应用/回退。
  12. 将 RAC 模式转换为 '-all_nodes' 模式。

  13. 正在为组件 oracle.rdbms, 11.2.0.3.0 打补丁...
  14. The patch will be removed from database instances.
  15. 正在数据库 'rcat' 上禁用和删除联机补丁程序 'bug13906496.pch'

  16. RollbackSession 从产品清单中删除中间补丁程序 '13906496'
  17. Log file location: /u01/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/13906496_Jul_24_2018_21_31_21/rollback2018-07-24_21-31-21下午_1.log

  18. OPatch succeeded.
  19. [oracle@station90 online]$ /u01/app/oracle/product/11.2.0/dbhome_1/OPatch/opatch lsinventory

  20. Oracle 中间补丁程序安装程序版本 11.2.0.3.6
  21. 版权所有 (c) 2013, Oracle Corporation。保留所有权利。


  22. Oracle Home       : /u01/app/oracle/product/11.2.0/dbhome_1
  23. Central Inventory : /u01/app/oraInventory
  24.    from           : /u01/app/oracle/product/11.2.0/dbhome_1/oraInst.loc
  25. OPatch version    : 11.2.0.3.6
  26. OUI version       : 11.2.0.3.0
  27. Log file location : /u01/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2018-07-24_21-31-32下午_1.log

  28. Lsinventory Output file location : /u01/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs/opatch/lsinv/lsinventory2018-07-24_21-31-32下午.txt

  29. --------------------------------------------------------------------------------
  30. 已安装的顶级产品 (1):

  31. Oracle Database 11g                                                  11.2.0.3.0
  32. 此 Oracle 主目录中已安装 1 个产品。


  33. 此 Oracle 主目录中未安装任何中间补丁程序。


  34. --------------------------------------------------------------------------------

  35. OPatch succeeded.
  36. [oracle@station90 online]$
复制代码


回复

使用道具 举报

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

本版积分规则

QQ|手机版|Bo's Oracle Station   

GMT+8, 2024-11-24 18:23 , Processed in 0.044640 second(s), 28 queries .

快速回复 返回顶部 返回列表