DATAGUARD失败切换
如果主库出现故障无法修复的话,就需要在备库上做failover,使得应用可以继续运行。在备库做失败切换的一般步骤是:1、如果可能,从主库手工拷贝并注册ARCHIVED LOG到备库上,直到备库的V$ARCHIVE_GAP记录为空。2、...
如何根据MLOG$表的CHANGE_VECTOR$$找出被更新的列
在yangtingkun老大的指点下,对主键刷新物化视图日志表的CHANGE_VECTOR$$有了进一步的认识,下面就对这个新的知识点做一个简单的总结。我们知道,oracle用MLOG$_XXX表来记录发生在基表上的数据变化,以此作为物化视...
一次坏块的处理过程(二)
二、后续处理上面的步骤解决了坏块对数据库的潜在影响,但是此时v$database_block_corruption的信息是还没有清除的,需要清除,需要再运行RMAN,如果没有坏块已经修复,才会从v$database_block_corruption删除对应记录。但是在大部分情况下,即使删除了原来的对象,数据块的状态让人是标识损坏的,但是不影响一般的数据库操作,可以忽略。如果你看不顺眼或者担心它影响RMAN的备份,可以用以下方法格式化这个数据块,只有被正常格式化后,数据块状态才会恢复正常。[@more@]1. 首先创建一个新表create table s (n number,c varchar2(4000))
sys_connect_by_path的两种用法
本文主要讨论sys_connect_by_path的使用方法。1、带层次关系SQL> create table dept(deptno number,deptname varchar2(20),mgrno number);Table created.SQL> insert into dept values(1,'总公司',null);1 row creat...
对含distinct操作的SQL的优化
今天帮同事优化了一条含distinct操作的SQL,因为这个SQL在数据仓库环境中非常经典,因此有比较拿出来说一说。 [@more@]原SQL:sys@dwrac1> select count(distinct a.ip) 2 from (select t.ip 3 from creater_user.popt_total_login_month_his t 4 where t.data_desc = '2010-02-01') a, (select t.ip 5 from creater_user.popt_total_login_month_his t 6 where t.data_desc between 7 '2010-03-01' and 8 '2011-12-31') b 9 where
数据库启动遭遇ORA-00600: [keltnfy-ldmInit]
今天在启动数据库的时候报错:[oracle@standby dbs]$ sqlplus "/as sysdba"SQL*Plus: Release 10.2.0.3.0 - Production on Sun Jun 17 03:32:27 2007Copyright (c) 1982, 2006, Oracle. All Rights Reserved.Connec...
如何用静默方式删除oracle软件
本文主要介绍在linux下如何用静默方式卸载oracle软件。在linux下卸载oracle软件比较简单,可以简单的把相关目录删除掉,然后清理一下/etc下oracle相关的文件就可以。但还是有必要了解一下如何通过工具来卸载。1、首...
ORA-00130: invalid listener address
今天再重启测试库的时候,发现有这么一个报错信息: ORA-00130: invalid listener address (ADDRESS=(PROTOCOL=TCP)(HOST=test2)(PORT=1521))开始怀疑是监听得设置有问题,打开监听文件,内容如下:LISTENER = ...
一次简单的分页优化
今天对一个排序分页查询进行了一次优化,优化后性能得到明显改观。下面用例子说明优化步骤。1、首先创建测试数据SQL> create table t as select * from dba_objects;Table createdSQL> insert into t select * f...
如何加密shell脚本
我们在shell中经常会有一些敏感信息,如用户名、密码等,如果以明文存放,则很不安全。 我可以使用shc把脚本编译成成二进制文件,从而达到加密的结果。[root@db ~]# more a.sh #!/bin/shdate[root@db ~]# ./shc...
LGWR和ARCH下密码文件不一致对FAL的影响
DATAGUARD的数据传输方式有两种:LGWR和ARCH。其中前者传送的是联机日志的redo,后者传输的是归档。FAL是9i推出的DATAGUARD的一大改进,它可以自动传送备库缺失的日志,一般情况下,它是不需要手工干预的。主库的日...
遭遇ORA-01461
今天接到开发人员报告:在用jdbc导入数据时遇到ORA-01461ORA-01461 can bind a LONG value only for insert into a LONG columnCause: An attempt was made to insert a value from a LONG datatype into another da...
今天发现了自己的一个一直都错误的观点
一直以为物化视图和普通视图不同之处是物化视图是物理存在的、实际占用空间的,而普通视图是逻辑意义上的。今天发现错了:物化视图也是一个逻辑上的概念,只不过在建立物化视图时,它会自动生成一个与物化视图名称相...
一个快速查看trace的小脚本
在日常工作中经常需要用10046跟踪一些进程,为了方便,写了一个可以方便查看trace的小脚本。begin_trace:代码:-- run in SQL*Plus --set termout offset heading offset verify offset feedback offalter ses...
按自定义周期统计数据
今天开发人员提了一个问题:如何根据自定义周期进行数据统计?比如今天是2007/08/06,按7天作为一个统计周期,则统计时间周期分别是:2007/08/06 - 2007/08/12,2007/08/13-2007/08/19……统计的时间段是不确定的。...
近期使用10G时遇到的两个问题:Memory Notification和ORA-3136
近期使用10G时遇到的两个问题:Memory Notification和ORA-3136数据库版本是linux as4+10201。一、Memory Notification在alert文件经常看到:Memory Notification: Library Cache Object loaded into SGAHeap size 38...
dd工具使用
dd重要参数... 1dd参数适用范围... 1dd拷贝oracle数据文件需要考虑的因素... 2如何用dd测试磁盘速度?... 2是否需要skip数据文件的block 0?... 2是否所有系统都有offset?... 3如何计算数据文件的占用的实际空间大...
exp导出遭遇IMP-00020
今天在用EXP/IMP迁移数据时出现问题。环境是:客户端:9201 + WINXP源服务器:9204 + SOLARIS 8目标服务器:9201 + WINXP过程如下:E:oracleora92in>imp mis2/mis2@youyou file=D:EMEDMIS2mis2_stat_all.dmp fromuser...
用oradebug挂起进程
oradebug可以帮助我们做很多事情,如dump内存信息、设置事件、挂起进程等。本文主要介绍如何使用oradebug挂起进程。为什么要挂起进程呢?比如因为开发人员对数据库执行一个很大的操作,严重影响了数据库的正常运行,...
oracle树中prior的用法
在oracle生成树时,prior起了至关重要的作用,它决定了书的遍历方向。下面用例子分别阐述之:1、prior放在子节点方向scott@ORA9I> l 1 SELECT substr(sys_connect_by_path(ENAME,'->'),3) EMPLOYEE 2 ...