自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 收藏
  • 关注

原创 大故障 Oracle 坏块的修复,备份不可用的情况下

2019年4月19号下午查看相关日志,发现磁盘报错在日志中记录频繁,自我盘查无果之后,当天汇报给公司后商量后并通过raid的相关命令查询,确定第五台存储的2号盘磁盘坏道,初步给出的结论是磁盘坏道,但是不影响使用,后期建议换盘,并将相关信息反馈给客户,但是事后两天,突然一台存储raid卡故障,导致磁盘只读不可写,磁盘被36内小时drop,因为做了normal冗余,两副本都坏,所以导致数据丢失。以下为...

2020-08-20 19:42:20 395

原创 介质恢复(2)

介质恢复v$datafile_header.checkpoing_change#和v$datafile.checkpoint_change#来对比判断是否需要介质恢复!<v$datafile_header.checkpoint_change#小于v$datafile.checkpoint_change#那么需要进行介质恢复>场景:比如某个数据文件丢失,当我们restore这个数据文件后,数据文件头部记录的checkpoint_chang#信息必然小于控制文件中记录的v$datafil

2020-08-15 18:40:10 787

原创 实例恢复(1)

实例恢复 通过v$datafile.last_time和v$datafile.last_change#判断是否需要实例恢复,当数据库正常关闭时,会在last_change#和last_time记录最后的change#与time,实例恢复是根据CKPT-Q的顺序进行恢复的,CKPT-Q的顺序是和REDO的顺序一致的。在数据库服务器异常断电重启后,数据库会进行实例恢复,那么实例恢复的过程中Oracle做了什么操作呢?首先说下实例恢复的定义:Instance recoveryis the...

2020-08-15 18:36:04 362

原创 丢失本地心跳导致主机重启

20200714--xx电信计费计算节点丢失本地心跳重启客户:电信操作系统:redhat 6.9数据库版本:oracle 12.2.0.1问题描述:xxx计算节点1 丢失本地心跳导致计算节点1重启,2020-07-14分重启。盘查人员:汤健1、计算节点1集群altert日志显示如下cssd守护进程无响应,reboot即将发生。cssdmonitor和assdaget进程监控到cssd无响应,丢失了本地心跳,导致计算节点1重启。这只是一个结果,不是原因,需要分析是什么导致了ocs.

2020-07-26 23:25:49 448

原创 ORA-29770 案例分析。

1.ORA-29770 was occured because of the LGWR is hung for a long time,so LMHB process terminating the instance.<alert_xxx1.log>2020-05-07T02:00:40.087133+08:00Errors in file /opt/oracle/diag/rdbms/edw/edw1/trace/edw1_lmhb_56258.trc (incident=10...

2020-07-26 23:19:35 3124

原创 11gR2 新特性: Rebootless Restart

众所周知,当集群出现问题时,例如某个节点丢失网络心跳,或者不能够访问表决盘,或者节点出现了严重的性能问题等,CRS会选择将某个节点的OS 重启,以便保证集群的一致性。当然,大部分的重启都是由CRS的核心进程ocssd.bin发起的。 但是,如果CRS 只是节点上的应用之一或者私网和存储的问题只是短时间的出现,那么重启节点的行为就会导致节点上所有的应用全部停止,这在很多系统上并不是我们希望看到 的。所以从版本11.2.0.2 开始,oracle新特性rebootless restart被介绍。当出现以下情况

2020-07-22 21:39:38 527

原创 Oracle大页内存和内核参数优化配置

1、大内存页设置在Linux系统上使用ORACLE数据库,强烈建议使用大内存页,否则对大SGA和高连接数系统来说,系统的性能和稳定性将会受到严重影响。下面是大内存页设置的具体步骤:(1). 确认操作系统支持大内存页有的操作系统内核不支持大内存页,通过下面的命令可以确认系统是否支持大内存页。# grep -i huge /proc/meminfo#grep -i huge /proc/meminfoAnonHugePages: 0 kBHugePages_Total:...

2020-07-21 22:10:10 2801

原创 Oracle DBA 面试题整理(更新中)

1、解释一条update语句的执行流程?2、简述实例恢复的过程?以及实例恢复的起点和终点。3、RAC中lms和lmd进程的作用是什么?4、当数据库中出现了逻辑坏块需要怎么修复?5、业务反馈数据库很慢,请简述盘查的过程?6、异构平台下迁移数据,请简述迁移流程?7、Oracle中的大页占用内存的多少?pga和sga是怎么分配的?8、RAC中的vip和scan-ip的作用?9、网络心跳正常的情况下,磁盘心跳出了问题会发生什么?10、Oracle中内核参数调优有哪几个?11、搭建环境的时候ora

2020-07-21 21:58:18 3992

原创 This document gives a brief information about “D“ state of a Linux process.

To check if a system has processes that are on "D" State or D-state, the output of thepscommand can be checked. It can be something similar to:ps aux | awk '$8 ~ /^D/{print}'This will display processes that are currently on 'D' state.Linux foll...

2020-07-18 09:49:23 247

原创 ASM实例与数据库实例之间的交互

一:ASM实例后台进程:ASM实例中的后台进程和数据库实例大致相同,但是由于ASM实例需要完成对磁盘组合asm元数据的管理,所以存在一些特有的后台进程。ASM实例特有的后台进程如下。1)GMON(ASM Disk Group Monitor):磁盘组的监控进程。这个进程负责维护磁盘组中的个个磁盘状态的一致性。当磁盘组中的磁盘发生成员的改变时,该进程负责offline或者online磁盘。可以说,这是asm实例中最重要的后台进程之一。2)RBAL(ASM Rebalance Master):Reba

2020-07-13 00:07:34 703

原创 LMHB的工作机制

LMHB的工作机制 LMHB进程在11gR2版本开始才出现的,改进程被称之为Global Cache /Enqueue Service HeartHbeat Monitor。它被用来检测GCS和GES相关后台进程的心跳信息。该进程会定期检查LMON、LMS、LMD和LCK0的状态,如果发现某一个进程在一段时间之内没有相应LMHB的心跳(也就是hang住了),那么LMHB进程就会尝试找到阻塞该进程的阻塞进程。如果阻塞进程不是数据库必要的后台进程,LMHB进程就会通过终止阻塞进程的方式来解决内存融合核...

2020-07-12 11:36:52 1414

原创 RAC数据库实例之间的三种心跳机制

和CSS 部分类似,RAC数据库中存在3种心跳机制:网络心跳、磁盘心跳、本地心跳1、网络心跳: 数据库的网络心跳机制是通过LMNO进程来实现的,每个实例的LMON金嫦娥会定期通过数据库的私网(内存融合使用的网络)与所有实例进行通信,以确认其他节点(实例)的状态。如果,某个实例一段时间之内(默认 300s)不能响应其他节点发动的网络心跳信息,那么数据库集群就会需要进行重新配置,而用户能后看的最直观的信息就是ORA-29740错误。所以,数据库层面的网络心跳与集群中的网络心跳类似。另外,需要说...

2020-07-11 21:11:11 2699

原创 dba_hist_sess_history

1.dbw是否繁忙select trunc(sample_time, 'mi'),count(*),instance_numberfrom dba_hist_active_sess_historywhere sample_time >=to_date('20200710-0950','yyyymmdd-hh24mi')and sample_time <=to_date('20200710-0955','yyyymmdd-hh24mi')and program like '%D...

2020-07-11 15:37:55 537

原创 记录一次无法删除job

1、由于数据库/opt目录满了。导出,导入进程异常终止,先用了drop方式杀了相关的drop。但是无法执行。报错如下:2、使用一下语句查看job相关的信息col owner_name for a20;col owr for a8;col job_name for a20;col operation for a10;col job_mode for a10;col state for a10;col attached_session for a5;select owner_na...

2020-06-19 10:09:27 337

原创 查看执行计划的6种方法以及各个方法的优缺点

--环境构造--研究Nested Loops Join访问次数前准备工作DROP TABLE t1 CASCADE CONSTRAINTS PURGE;DROP TABLE t2 CASCADE CONSTRAINTS PURGE;CREATE TABLE t1 ( id NUMBER NOT NULL, n NUMBER, contents VARCHAR2(4000) ) ;CREATE TABLE t2 ( id NUMBER NOT N...

2020-06-15 15:08:59 1356

原创 执行计划基础(动态采样与统计信息收集)

统计信息select window_name,window_next_time, autotask_status,optimizer_stats from DBA_AUTOTASK_WINDOW_CLIENTS;select client_name,status from dba_autotask_clientwhere client_name='auto optimizer stats collection';CLIENT_NAME...

2020-06-11 16:18:31 359

原创 Merge Sort Join优化要点

两表的连接条件要建立索引两表的限制条件建立索引可以消除排序(不能完全消除排序)避免取多余列致排序消耗temp空间过大

2020-06-11 14:58:19 503

原创 Hash join优化要点

要点1:两表的限制条件建立索引要点2:小结果集作为驱动表要点3:确保PGA完成hash值运算尺寸

2020-06-11 14:36:41 1959

原创 Nested Loop Join 优化要点

要点1:驱动表的连接条件考虑建立索引--Nested Loops Join访问次数前环境准备DROP TABLE t1 CASCADE CONSTRAINTS PURGE;DROP TABLE t2 CASCADE CONSTRAINTS PURGE;CREATE TABLE t1 ( id NUMBER NOT NULL, n NUMBER, contents VARCHAR2(4000) ) ;CREATE TABLE t2 ( id NU...

2020-06-10 23:44:19 1893

原创 三大经典表连接探索(nested loop、hash、merge sort)

1、表的访问次数探索表的访问次数之NL连接研究CREATE TABLE t1 ( id NUMBER NOT NULL, n NUMBER, contents VARCHAR2(4000) ) ;CREATE TABLE t2 ( id NUMBER NOT NULL, t1_id NUMBER NOT NULL, n NUMBER, contents VARCHAR2(4000) ) ;execute...

2020-06-09 14:58:55 327

原创 集群驱逐分析步骤解析

Troubleshooting Instance Evictions (Instance terminates with ORA-29740, Instance Abort, Instance Kill) (Doc ID 1549135.1) To Bottom In this Document Purpose Troubleshooting Steps Background ...

2020-06-08 18:40:22 520

原创 索引引发故障的案例(一)

1、感受索引美好的一面1、索引的各种开销 访问集中导致热块竞争 drop table t purge;create table t (id number,deal_date date,area_code number,nbr number,contents varchar2(4000));insert into t(id,deal_date,area_code,nbr,contents) select rownum, to_date( to_char(...

2020-06-08 18:39:34 340

原创 索引引发故障案例(二)

1、索引的开销设置索引并行引起的风波drop table t purge;create table t as select * from dba_objects where object_id is not null;alter table T modify object_id not null;insert into t select * from t;insert into t select * from t;insert into t select * from t;inser...

2020-06-08 18:38:59 397

原创 索引常用脚本(三)

1、当前用户下,哪些表的索引个数过多select table_name ,count(*) from user_indexes group by table_name having count(*)>5 order by count(*) desc;2、哪些表的外键未建立索引select table_name, constraint_name, cname1 || nvl2(cname2, ',' || cname2, null) || nvl...

2020-06-08 18:38:32 274

原创 索引(三):索引的扫描方式

1、INDEX RANGE SCANdrop table t purge;create table t as select * from dba_objects;update t set object_id=rownum;commit;create index idx_object_id on t(object_id);set autotrace traceonlyset linesize 1000exec dbms_stats.gather_table_stats(ownname =&.

2020-06-08 18:37:56 350

原创 索引(二):储键值、有序、高度相关案例。

索引的特性存储键值、有序、高度相关案例。1、‘分区表各类聚合优化玄机drop table range_part_tab purge;--注意,此分区为范围分区--例子1create table range_part_tab (id number,deal_date date,area_code number,nbr number,contents varchar2(4000)) partition by range (deal_date) (...

2020-06-08 18:37:40 178

原创 索引(一):高度较低、有序、存储键值

1、索引特性一高度较低create table t1 as select rownum as id ,rownum+1 as id2,rpad('*',1000,'*') as contents from dual connect by level<=1;create table t2 as select rownum as id ,rownum+1 as id2,rpad('*',1000,'*') as contents from dual connect by level<=10.

2020-06-08 18:37:20 231

原创 DUMP索引块、数据块分析

1、创建一张测试表并建立索引(scott用户下执行)create table t as select * from dba_objects;create index idx1_object_id on t(object_id);2、查看所创建的对象、scott@ORCL>select object_name,object_type from user_objects where object_name in ('T','IDX1_OBJECT_ID');OBJECT_NAME ...

2020-06-04 13:52:05 473

原创 在DML操作之下redo日志的解析

实验一:insert 操作的REDO日志解读1、创建一张测试表create table tangjian (id number(20),name varchar(20),work varchar(20));2、查看当前日志所在的日志组select * from v$log;alter system switch logfile;(切换日志组为了方便分析redo日志)sys@ORCL>select * from tangjian; ID NAME ...

2020-06-03 14:56:17 661

原创 IB速率表格

2019-11-18 15:14:41 717 1

原创 监听日志 获取session 以及登录的ip

一天内每小时fgrep"13-JAN-2015"anbob_listener.log|fgrep"establish"|awk'{print$1""$2}'|awk-F:'{print$1}'|sort|uniq-c|sort-n指定的一小时每分钟session请求数#fgrep"13-JAN-201511:"anbob_listene...

2019-11-06 17:07:30 345

原创 V$LOCK和V$LOCKED_OBJECT的区别

V$LOCK和V$LOCKED_OBJECT 查询锁表都会用到V$LOCK和V$LOCKED_OBJECT,但这两者不是相同的。我们先看看它们各自的主要字段:1.v$locksid: 会话SID,通常与v$session关联。 type: 锁类型,TM表示表锁或DML锁,TX表示行锁或事务锁,UL表示用户锁。我们主要关注TX和TM两种型的锁其它均为系统锁,会...

2019-07-18 07:01:59 2853 1

原创 查询当前数据库在10分钟后,每秒执行的次数

方法:可以出相关的awr报表 通过SQL ordered by Elapesed Time 计算sql语句在10分钟内平均执行的次数,当然,这需要你手动的每十分钟执行一次手动创建快照,也可以使用exec dbms_workload_repostiory.modify_snapshot_settings(interval=>10,retention=>20160),控制快照自动生成时间,...

2019-06-18 15:05:00 1557

原创 Oracle 12.2.0.1修改密码问题与改密码后登陆提示密码错误的两个问题

12c修改sys密码hang问题(ALTER USER SYS Command Hangs or Takes Long Time to Complete)一下为改动方法。 srvctl modify database -db edw -pwfile(改动面) srvctl config database -d edw (查看输出的密码文件位置,提示没有了) orapwd file='+...

2019-06-18 14:51:45 1409

转载 DBCA报错, ORA-15045 ORA-17502 ORA-15081

DBCA报错, ORA-15045 ORA-17502 ORA-15081ERROR at line 1:ORA-19624: operation failed, retry possibleORA-19870: error while restoring backup piece/u02/app/oradb/product/11.2.0/db_1/assistants/dbca/tem...

2018-12-13 14:49:06 650

转载 Oracle 11gR2 RAC恢复OCR和VOTE DISK

Oracle 11gR2 RAC恢复OCR和VOTE DISK原文链接:http://www.askmaclean.com/archives/11-2-lost-ocr-votedisk-group-recovery.html        之前有同学在我的Oracle Allstarts群里讨论关于丢失包含ocr和votedisk的ASM diskgroup导致11gR2 RAC c...

2018-12-09 21:20:09 355

转载 IBM-AIX系统使用基本命令【转载】

 内核1、如何知道自己在运行 32 位内核还是 64 位内核?  要显示内核启用的是 32 位还是 64 位,可输入以下命令:#bootinfo -K2、如何知道自己在运行单处理器还是多处理器内核?  /unix 是指向已启动内核的符号链接。要了解正在运行什么内核模式,可输入 ls -l /unix 并查看 /unix 链接到什么文件。下面是 ls ...

2018-11-27 09:37:33 475

转载 Sybase 数据库设置字符集

查看/sybase/locales/locales.dat %sybase%/locales/locales.dat找到对应操作系统下的字符集配置,如windows[NT]     locale = enu, us_english, iso_1     locale = fra, french, iso_1     locale = deu, german, iso_1     ...

2018-11-13 10:24:58 3209

转载 修改linux系统时间为CST时区

现象:当前时间为北京时间2017-05-24 14:36:15,但是在服务器上的时间却慢了12个小时,关于在于系统时区设置为EDT,比北京时间慢了12个钟头[root@cqs_test ~]# date;Wed May 24 02:36:15 EDT 2017解决:备份系统时间包[root@cqs_test ~]# cd /etc[root@cqs_test etc]# ...

2018-10-29 14:04:02 1814

原创 Oracle的日志挖掘恢复数据

  oracle日志挖掘是一种十分强大的数据恢复技术,只要你保障你的归档日志和重做日志是完整的,那么就可以将你的数据恢复到任何时刻。简单叙述一下日志挖掘的基本原理,然后进行一个简单的小实验。  日志挖掘时基于redo日志和归档日志的基础之上来进行日志加载并进行恢复,挖掘,挖掘,挖的就是你的redo日志和归档日志,当数据库运行过程中,你的所有数据更改操作会被记录在redo日志中,而oracle ...

2018-10-16 09:20:38 3318

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除