如何对DG进行增量恢复?
Rolling forward a standby database using RMAN Incremental Backup.模拟归档丢失的情况一 主库操作:查看当前归档停用归档传输alter system set log_archive_dest_state_2=defer; 切换归档alter system switch 
分区表truncate慢处理
初步分析truncate的实质是在不修改数据块的情况下,通过修改segment header的data_object_id,hwm,extent map,aux map等信息来实现清空表的目的,其中还涉及数据字典基表以及L1、L2位图块的修改,所以说truncate操作只是存储数据的数据块没有产生任何redo和undo,但是segment header,位图块,数据字典基表还是会产生redo和un
如何在19c上打补丁?
$ORACLE_HOME 为 oracle 软件安装目录 (/oracle/app/product/12.2.0/db_1)$GRID_HOME 为 grid 安装目录 (/oracle/grid/crs_1) 为 psu 安装
磁盘故障处理案例
背景:集群宕机以后,重启报错,DATADG1磁盘组无法启动1.手动挂起DATADG1磁盘组 报错1alter diskgroup datadg1 mount;后台ASM报错根据报错 found 0 disks 怀疑 是磁盘组里的磁盘有问题,没有启动2.查询磁盘状态1select name,path,STATE,MODE_STATUS from&nb
使用relink解决国产操作系统上安装11g的问题
欧拉操作系统上安装11G单机的问题:安装完成软件之后,发现rman和sqlplus功能有问题(还有其他的功能应该也是),查看安装日志发现部分lib下link文件报错。
为什么说优化永不过时?
前几天,客户反应,在备库俩节点执行同一条SQL的效率差别很大,一节点1秒内完成,二节点需要接近三秒。这个SQL是他们探测数据库性能的监控语句,接近三秒返回结果很显然是没达标的。 ------------- SQL Text ------
数据丢失使用RMAN恢复教程
本次故障背景是某客户的五套数据库由于客户误操作导致链路初始化,丢失了数据。客户的备份情况是有做RMAN全备和增备以及完整的归档留存。(很坑的一点,也是本次恢复的其中一套情况是他在原来正常运行的时候就将16-20号数据文件给offline了,导致没有将这5个文件全备出来,在restore的时候就没有将这5个数据文件restore出来,这倒没什么,关键是在进行recover的时候,使用recover
oracle分区表和非分区表转换
1 创建分区表 emp2123456789CREATE TABLE emp2 (empno NUMBER(4) NOT NULL, ename VARCHAR2(10), sal&n
oracle分区表和分区表间转换
查询分区表分区内容1select * from emp2 partition(emp2_p3); 1 创建分区表 emp1123456789CREATE TABLE emp1(empno NUMBER(4) NOT NULL,ename VARCHAR2(10),sal
Oracle Procedure IV
处理单行数据用 select .. into处理多行数据就必须需要使用到游标了,游标是一个 SQL 的结果集 处理多行数据游标必须和循环结合使用。 --- 显示游标 ---12345678declare cursor cur_emp is s
Oracle Procedure III
---loop end loop 的循环 ---1234567891011declare i number;begin i := 0; loop i := i + 1; &nb
Oracle Procedure II
注:本文的数据都来源于,oracle自带的emp表。---if then els if end if, 单条件判断 ---1234567891011declare v_grade char(1);begin v_grade := 'B'; if&n
Oracle Procedure I
/ SQLplus 中,设置 set serveroutput on 才能显示输出结果 / --- 匿名的 PLSQL( 存储过程 ) 块,不存储在数据库中1234beginnull;end;/12345begindbms_output.put('hi '); &
Oracle的CVE-2012-3137 漏洞处理方式
该文介绍如何处理通过CVE-2012-3137漏洞远程投毒的处理方式。
ORACLE 12c/19c 的PDB如何配置自启动?
有两种方式实现完成,其中oracle12.1 只能使用触发器oracle12.2 及以上的版本可用 ALTER pluggable DATABASE ALL save state;来实现高版本建议优先使用第二种模式一、触发器模式123456CREATE TRIGGER open_all_pdbs AFTER&nbs
trouble shooting:ORA-00054
问题描述ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效 发生异常原因:其他Session已经对目标表做了操作,且未提交操作,导致锁表,新的Session无法再对表进行DDL操作。解决方法Plan-A:等待原session执行完对表的操作,或commit对表的操作。Plan-B:关闭原会话。 -- 查询被的会话 ID1select
trouble shooting:ORA-07445: [smboKb2Qb()+21]
背景是创建索引时,直接会话被断掉12345SQL> create index idx_guojiaybypmlbz on siim.SYB_XYZCY (guojiaybypmlbz);create index idx_guojiaybypmlbz on siim.SYB_XYZCY 
如何对Oracle统计信息进行收集和维护
11g 及以上 :查看自动收集任务及状态:(11g及以上) 1select client_name,status from Dba_Autotask_Client where client_name='auto optimizer stats collection
library cache lock/pin排查与处理
library cache lock/pin发生在多个session对相同library cache对象进行争用发生,一般来说在存储过程编译过程中发生并堵塞编译。
oracle 怎么修改监听端口
oracle的监听是非常重要的一个功能组件,在Oracle数据库服务器中,通过一个叫“监听器”的组件接收来自客户端的连接请求。