Extract Datafile From Oracle ASM corrupted diskgroup using PRM-DUL

Extract Datafile From Oracle ASM corrupted diskgroup

 

Amdu

 

Amdu是从oracle 11g开始加入到Oracle发布版本中的ASM转储工具。除了转储ASM元数据外,amdu的-extract选项还可以从ASM diskgroup中抽取文件。

 

实际amdu的功能,PRM都具备了,PRM会将ASM元数据分析- ASM Analyze并存入到其内置的数据库中,之后还可以从图形界面上选择哪些文件需要被抽取出来。

prm-asm-1 prm-asm-2 prm-asm-3

 

 

 

 

以上为PRM的ASM FILE CLONE功能,可以直接从受损的ASM DISKGROUP中克隆出数据文件和归档日志文件。

PRM也支持直接从ASM上的Oracle Database DB数据库中直接拯救表上的数据,对于PRM而言ASM是透明的。

对于ASM上的数据库,根据数据库受损的实际情况考虑使用字典Dictionary(ASM)模式或者非字典Non-Dictionary(ASM)模式。

具体恢复流程为: Tools=>Recovery Wizard=>选择ASM下的字典或非字典模式=>加入所有的ASM Disk后点击ASM analyze

 

prm-asm-4 prm-asm-5 prm-asm-6 prm-asm-7

 

 

 

一般ASM下不需要填选block size和offset信息,点击Next,出现Data File列表,勾选SELECT ALL代表所有的数据文件

prm-asm-8

 

 

prm-asm-9

 

 

 

如果是多个DiskGROUP上有多个Database的情况,需要用户自己去选择对应的数据库的数据文件,之后点选Load,会进入和普通的字典模式没有区别的Schema=>table界面:

 

prm-asm-10

 

ORACLE PRM的GUI图形化交互界面让数据恢复变得很简单!

Hadoop Input/Output

本文固定链接:https://www.askmac.cn/archives/hadoop-inputoutput.html

 

 

Hadoop Input/Output

  

前几章具体概述了编程模型MapReduce的概念,在第五章末我们开始进一步研究实施Hadoop的方式。本章内容在那一理念上进行延伸。首先,我们会解释压缩方案,接着会对Hadoop的I/O展开详尽的讨论。我们会讲述各种类型的文件,例如Sequence文件和Avro文件。在此过程中,你们会对MapReduce是如何在Hadoop引擎内部运行,有更进一步的理解。

压缩方案

目前为止,你已经了解了MapReduce的基本原理。

MapReduce是一种I/O密集化的过程。降低或优化I/O是提高MapReduce程序运行的关键。

Hadoop Framework提供了几种可行性来减少I/O。第六章我们通过使用Combiner来减少Mapper和Reducer之间的I/O。本章我们将探讨能够最大程度优化MapReduce的I/O运行的压缩方案。

首先我们先快速浏览一下涉及到I/O的各种MapReduce步骤:

  1. 读取HDFS中的文件时,输入到Mapper中。
  2. 从Mapper中输出的文件会放到本地磁盘。
  3. 由于Reducer从Mapper节点中接收文件,Reducer 和 Mapper之间会有网络I/O。
  4. 从Mapper节点接收分区然排序后,合并到本地磁盘存储到Reducer节点。
  5. 回读本地磁盘的文件作为记录,可供Reducer中的reduce方法使用。
  6. 从Reducer输出——这是写回HDFS。

 

在任何MapReduce程序中,I/O是最昂贵的操作,任何能减少磁盘或者网络I/O,都可以获取更佳的总体吞吐量。Hadoop架构让你可以压缩从Mapper和Reducer中输出的文件,但是却需要权衡一下:压缩会大量占用CPU资源,而且会消耗CPU的周期。任何用于压缩的CPU的周期都将损耗其他程序,比方说Mapper, Reducer, Partitioner, Combiner, Sort 和Shuffle等等。就像在Hadoop中的大多数决定一样,在设计的时候必须要认真地把资源权衡考虑在内(www.askmac.cn)。

 

[Read more…]

Oracle 11g OCM考试考点分析 配置EMGC

 本文永久链接地址:https://www.askmac.cn/archives/oracle-11g-ocm-setemgc.html

 

 

9.配置EMGC

 

 

9.1目标

 

在这个课程之后,你应该能够:

  • 配置EMGC来增加格外的管理员
  • 确定grid control中使用的权限类型
  • 使用角色来给管理员分配权限
  • 为简化访问管理目标设置首选项凭据

 

9.2 grid control 管理员

 

管理员是在grid control 的管理资料库中定义的用户,可以让你执行管理员任务。你可以设置管理员的角色和权限。grid control 可以让你创建2种类型的账号:

  • 超级管理员账户:grid control在安装的时候默认有一个超级用户sysman(注意:sys和system也被定义为超级管理员用户)。超级管理员用户不能被删除或重命名,因为其本身也是资料库的所有者。超级管理员可以管理所有其他的管理员用户,和设置所有的管理员凭据。超级管理员可以:

— 创建grid control权限和角色

–执行grid control 初始化配置(例如,定义邮件配置和定义通知方法)

— 增加grid control目标

— 在系统中对任何目标执行任何操作

  • 管理员用户:管理员帐户提供用户权限来执行管理任务和访问管理信息。你可以为每个创建的管理员用户设置:

–密码配置

–邮件地址

–系统权限和目标权限

–角色或者设置权限

 

[Read more…]

2015 ORCL-CON 演讲加冰与PPT下载

以下为本次2015 Orcl-Con技术大会的PPT 下载地址:

 

Francisco Munoz 新西兰Oracle用户组主席,Oracle ACE 总监, 就职于Pythian 公司 任VP

 

演讲主题《Oracle OVM最佳实践与技巧》

Francisco Munoz Alvarez – Pythian_OVM_Tips

Francisco Munoz Alvarez – Pythian_OVM_Tips – 中文

 

 

 

John King 演讲主题《 JSON Support in Oracle 12c》;就职于 King Training Resources; Oracle ACE 总监

 

 

John Jay King – Oracle_Database_12c_UsingJSONinOracle – Chinese

John Jay King – Oracle_Database_12c_UsingJSONinOracle – en

 

 

汪伟华 演讲主题《企业级MySQL备份恢复策略》;数据库技术资深讲师, 8年MySQL DBA, Oracle DBA, Oracle EBS相关维护及开发经验

 

汪伟华 – MySQL企业备份发展及实践.pdf

魏兴华演讲主题《ORACLE 12C IN-MEMORY OPTION.》 就职于沃趣科技,原阿里巴巴高级数据库工程师,Oracle internal达人,performance tunning高手,Oracle ACE-A

 

魏兴华 – 揭秘12c in-memory option.pdf

 

Yu Kai

 

 

Oracle 11g OCM考试考点分析 grid control 安装

 本文永久链接地址:https://www.askmac.cn/archives/oracle-11g-ocm-grid-control-install.html

 

 

8.1 目标

 

在完成这个课程后,你应该能够:

  • 安装grid control
  • 描述在安装过程中,组成grid control的各种各样的组件
  • 讨论在grid control 安装时使用的端口
  • 解释 grid control 使用的目录结构

 

 

8.2 安装grid control

 

安装 grid control 11g的过程,可以被划分为3个主要的部分:

  • 数据库安装
  • oracle weblogic服务安装
  • grid control 安装

 

安装grid control 的过程有3个主要部分。由于其需要一个预先存在的数据库,用作OMR(oracle 管理资料库),你必须访问现有的认证数据库进行安装,或者在grid control资料库的同一主机上安装一个认证数据库。OMR所认证的数据可以参考MOS上可用的文档Note 412431.1。在这个课程中,你使用oracle 11g 来作为资料库。更多安装数据11g的信息,在oralce数据库文档库中参考数据库安装指导

 

同样,在你安装grid control相同的主机上,需要运行oracle weblogic 服务器。对于安装grid control,因为安装weblog 服务是新的需求,下面将介绍一个典型的Oracle WebLogic服务器的安装 。

[Read more…]

Hadoop offline edits viewer 指导

本文固定链接:https://www.askmac.cn/archives/offline-edits-viewer.html

本文是官方文档的翻译,原文地址是:

http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsEditsViewer.html

 

1概述

 

离线Edits 视图是一个解析Edits日志文件的一个工具。当前的处理器可以很好的在不同格式之间进行转换,包括比二进制格式更易度的XML

 

这个工具可以解析-18(大致相当于hadoop0.19)和之后的edits格式。这个工具只在文件上操作,不需要Hadoop集群运行。

 

输入格式支持:

1.二进制:一般hadoop内部使用的二进制格式(www.askmac.cn)

2.XML:由XML处理器生成的XML格式,被后缀为.xml的文件所使用

离线edit viewer 提供了一系列输出处理器(除非有特别的说明,处理器的输出可以转换回原来的edit文件):

1.二进制

2.xml

3.stats:打印出统计数据,这不能被转换回edits文件

[Read more…]

Case Study on PRM/DUL Recovery For Oracle Database

PRM is designed for Enterprise Database Recovery, which includes all Oracle DUL data recovery functionalities, and also easy-to-use GUI.

PRM For Oracle Database 3.1 GUI:

 

 

PRM almost can recovery Oracle database on all operating system, including:

 

Linux (RedHat, Centos, Oracle Linux, Suse)AIX, Solaris, HPUX, Windows 2003 Server/XP/2000/NT

PRM Support Oracle database which starts from 9i, 10g, 11g to 12c.

 

 

 

Case 1, if there is no backup, on disk segment header is corrupted

 

 

SQL> create table prm_test tablespace users as select * from dba_objects;

Table created.

SQL> alter system checkpoint;

System altered.

SQL> select count(*) from prm_test;

  COUNT(*)
----------
     77940

SQL> 
SQL> select header_file,header_block from dba_segments where segment_name='PRM_TEST';

HEADER_FILE HEADER_BLOCK
----------- ------------
          4      1298483

SQL> select name from v$datafile where file#=4;

NAME
--------------------------------------------------------------------------------
/s01/oradata/G10R25/datafile/o1_mf_users_8nx5srgb_.dbf




BBED> set mode edit
        MODE            Edit

BBED> set blocksize 8192
        BLOCKSIZE       8192

BBED> set block 1298483
        BLOCK#          1298483

BBED> set offset 999
        OFFSET          999

BBED>  modify /x 0xffff
Warning: contents of previous BIFILE will be lost. Proceed? (Y/N) y
 File: /s01/oradata/G10R25/datafile/o1_mf_users_8nx5srgb_.dbf (0)
 Block: 1298483           Offsets:  999 to 1510           Dba:0x00000000
------------------------------------------------------------------------
 ffff0000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 

 

BBED> sum
Check value for File 0, Block 1298483:
current = 0x18cc, required = 0xe733

SQL> select count(*) from prm_test;
select count(*) from prm_test
                     *
ERROR at line 1:
ORA-01578: ORACLE data block corrupted (file # 4, block # 1298483)
ORA-01110: data file 4:
'/s01/oradata/G10R25/datafile/o1_mf_users_8nx5srgb_.dbf'


SQL> alter session set events '10231 trace name context forever ,level 10';

Session altered.

SQL> select count(*) from prm_test;
select count(*) from prm_test
*
ERROR at line 1:
ORA-01578: ORACLE data block corrupted (file # 4, block # 1298483)
ORA-01110: data file 4:
'/s01/oradata/G10R25/datafile/o1_mf_users_8nx5srgb_.dbf'


Start PRM

./prm.sh

 

 

 

Recovery Wizard=》Dictionary Mode, if ASM, then choose Dictionary Mode(ASM) =>select data files (at least including system tablespace datafile and datafile where data located), and click load.

 

Attention: on AIX HPUX Sparc Solaris, and UNIX platform, choose Big Endian. Linux, Windows, X86 Solaris choose Little Endian

 

Find your table on the left and right click View

 

 

 

If we PRM show correct data, we recommend you to use DataBridge mode for inserting data back. Right click DataBridge and input connection info, and click DataBridge

 

 

 

 

As above, it has been successfully extract 77940 rows

 

 

 

 

 

CASE 2, No Archive Mode, a datafile has been offline, and related redo log has been overwritten. User can’t online this datafile again.

 

 

 

SQL> archive log list

Database log mode              No Archive Mode

Automatic archival             Disabled

Archive destination            /s01/arch

Oldest online log sequence     343

Current log sequence           348



SQL> select file_name,file_id from dba_data_files where tablespace_name='TBS5';



FILE_NAME                                   FILE_ID

---------------------------------------- ----------

/oracleasm/TBS5.256.844175363.dbf                 6







SQL> alter database datafile 6 offline drop;



Database altered.



SQL> alter system switch logfile;



System altered.



SQL> /



System altered.



SQL> /



System altered.



SQL> /



System altered.



SQL> /



System altered.



SQL> /



System altered.





SQL> recover datafile 6;

ORA-00279: change 34421776 generated at 04/19/2014 19:33:32 needed for thread 1
ORA-00289: suggestion : /s01/arch/1_354_831398352.dbf
ORA-00280: change 34421776 for thread 1 is in sequence #354





Specify log: {=suggested | filename | AUTO | CANCEL}
cancel
Media recovery cancelled.





[oracle@vrh8 ~]$ rman target /



Recovery Manager: Release 10.2.0.5.0 - Production on Sat Apr 19 19:49:22 2014
Copyright (c) 1982, 2007, Oracle.  All rights reserved.
connected to target database: G10R25 (DBID=2696593743)



RMAN> recover datafile 6;



Starting recover at 19-APR-14
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=147 devtype=DISK



starting media recovery



unable to find archive log
archive log thread=1 sequence=354
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 04/19/2014 19:49:29
RMAN-06054: media recovery requesting unknown log: thread 1 seq 354 lowscn 34421776





Here we can use PRM to extract all data which can not be online



SQL> select OWNER,SEGMENT_NAME,SEGMENT_TYPE from dba_segments where tablespace_name='TBS5';

OWNER SEGMENT_NAME                   SEGMENT_TYPE

----- ------------------------------ ------------------
SYS   VVVV                           TABLE
SYS   AVE2                           TABLE
SYS   AVE                            TABLE
SYS   ATEST1                         TABLE
SYS   BIN$2KcAMnnvGg/gQKjAvwEbRg==$0 TABLE
hu     TAB1                           TABLE







Start PRM



./prm.sh




 

Recovery Wizard=》Dictionary Mode, if ASM, then choose Dictionary Mode(ASM) =>select data files (at least including SYSTEM.DBF and data file where data located), and click load.

 

Attention: on AIX HPUX Sparc Solaris, and UNIX platform, choose Big Endian. Linux, Windows, X86 Solaris choose Little Endian

 

\

 

PRM is designed for Enterprise Database Recovery, which includes all Oracle DUL data recovery functionalities, and also easy-to-use GUI.

PRM-DUL  For Oracle Database 3.1 GUI

 

 

PRM almost can recovery Oracle database on all operating system, including:

Linux (RedHat, Centos, Oracle Linux, Sus,etc),AIX, Solaris, HPUX, Windows 2003 Server/XP/2000/NT。

PRM Support Oracle database which starts from 9i, 10g, 11g to 12c.

PRM has full GUI wizard for data recovery processes:

 

 

ParnassusData Inc. also provides professional service for database recovery.

ParnassusData service guarantees your data 100% back.

PRM Highlight:

  • Support Oracle 7.3, 8i, 9i, 10g, 11g, 12c all database recovery
  • Work with all main operating system
  • Unique DataBridge technology, and direct transition from source to destination
  • Support Oracle LOB: CLOB、NCLOB、LOB, and LOB DataBridge (Source to Destination)
  • Support Oracle Cluster, Partition, Sub-Partition, Complex Partition
  • Integrated multi-language, character set, and compatible with nvarchar
  • Support Oracle ASM, and provide free function for ASM clone
  • Provide professional product service. Engineers are previous Oracle employee

 

 

PRM fit for below circumstance

  • Truncate/Drop table without backup
  • Oracle can not be open due to data dictionary damage
  • Oracle can not be open due to part of data lost
  • System tablespace lost
  • Logical or physical disk damage
  • ASM metadata is corrupted , DiskGroup can not be mounted

 

 

火热的2015 MongoDB Days深圳行

虽然无法体验《南山南》中的“艳阳天大雪纷飞”,不过深圳这里火热的太阳和四处妹子的短裤大腿确实把我们这些从上海来的一行人给热到了。一下飞机,在”艳阳天”下,开始换装运动。。。脱脱脱!!

话说本次2015 MongoDB Days活动就在深圳举行,因此公司里的哥们姐们对来深圳“考察”一番很是积极踊跃。无奈名额有限,兼文笔不行(^-^),因此矮子里拔高个。。。本人再次脱引而出了~~

这不,开完会当天,吃饱喝足后就开始我的战地报道啦~~~

 

MongoDB作为最流行的NoSQL数据库,无疑正受到越来越多人的关注。其dynamic schema特性,水平分片扩展,以及内存处理快速响应能力是其在快速发展的大数据应用及互联网技术升级中能获得成功的关键所在。

为了时刻紧跟技术前沿,也为和更多MongoDB专家交流,这次的活动还是非常有必要来参加的。除了下午能听到大牛们的精彩演讲,对于小白来说,还能选择在上午参加入门培训,真是一举两得哈~~

 

 

 

[Read more…]

【MySQL学生手册】事务

本文地址:https://www.askmac.cn/archives/mysql-transactions.html

 

7.4 事务

将多个SQL语句组成为一个具有原子性操作的机制,我们称之为事务。事务中其中所有语句要么执行成功,要么都失败。一旦所有语句执行成功,整个事务对记录数据的操作就会被永久保存下来。如果事务中发生错误,其中进行的所有操作会被回滚并取消,数据库数据将回到其开始事务之前的状态。

 

例如,如果你尝试将1000元钱从一张A银行行转到B卡中,但你发现A卡中扣去了钱,而B卡中1000元未到账,你一定不会高兴。为了避免此类问题,程序中在处理此种需求时,首先会启用一个事务,然后在事务中发送进行欠款转账的命令。只有当所有命令都成功执行后才结束事务。如果在事务中所执行的命令报错,那么事务中所做的所有数据修改就会被回滚到启动事务之前的样子。整个过程看起来像这样:

 

 

 

什么是ACID

我们知道事务系统一般都声称其遵循ACID,那什么是ACID呢?

Atomic 原子性。所有语句被作为一个整体单元,执行成功或全部取消。
Consistent 一致性。从事务开始至事务结束,其中数据库的状态始终保持一致。
Isolated 隔离性。一个事务不会对另一个事务产生影响。
Durable 持久性。由事务所产生的数据变更都会被成功记录在数据库中。这些改变不会丢失。

[Read more…]

沪ICP备14014813号-2

沪公网安备 31010802001379号