针对enq: KO - fast object checkpoint的优化
测试库在大批量更新某个表的数据,总共有2亿条,每次更新20万并sleep 1秒;此时开发发邮件说对此表执行查询一直没有返回结果;登录该server进行查看;首先尝试运行查询语句select * from justin t where r...
set autotrace traceonly无法使用
SQL> set autotrace traceonlySP2-0618: Cannot find the Session Identifier. Check PLUSTRACE role is enabledSP2-0611: Error enabling STATISTICS reportSQL> conn / as sysdbaConnected.SQL> @$ORACLE_HO...
linux下设置发送含中文字符邮件的crontab
现在开发要求写一个job,定时的从数据库中抽取数据并邮件发送给他们。导出的内容含有中文,默认状态下显示为乱码,需要更改设置在编写shell脚本时,采用spool导出文件后,需要使用iconv将文本文件进行编码转换/usr/b...
rebuild online索引遇到ora-1450
测试一下SQL> create table justin(name varchar2(4000)); Table created SQL> create index idx_justin_name on justin(name); Index created SQL> alter index idx_justin_name rebuild onlin...
iptables导致无法远程连接oracle
listener日志里面报告WARNING: Subscription for node down event still pending09-AUG-2011 10:47:07 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=localhost.localdomain)(USER=oracle))(COMMAND=status)(ARGUMENTS=64...
convert函数引起的ora-01482错误
开发报告测试库上执行一段sql遇到以下错误select ID,name ,decode(sign(sysdate-nvl(begin_date,sysdate)) + sign(nvl(invite_end_date,sysdate)-sysdate),2,1,0)...
rac开启block change tracking
rac上开启block change tracking功能首先在测试库测试一下开启block change tracking增量备份的速度这个server配置很低,做一次全备份要很长时间,总共有60G数据先做一个level 0的全备份RMAN> backup incremental l...
rac基础知识温习(1)
RAC上的DDL多节点的RAC,每个节点上都可能有引用表a的游标,无论在任意节点对表a做DDL,都需要把所有节点上的引用对象置为invalid;此时每个节点上的LCK0进程,会对本实例library cache的对象加shared-mode的IV(inv...
mysql启动报错Manager of pid-file quit without updating file.[FAILED]
linux采用rpm方式安装mysql,默认都装到根目录下了,需要将其安装路径挪到/data目录;迁完后Mysql启动时候报告错误,找不到pid文件[root@testdb2 oracle]# service mysql startStarting MySQL..Manager of pid-fi...
rac常用命令
Oifcfg--查看每个网卡的属性Oifcfg getif crsctl--默认crs进程栈随着os启动而启动,crsctl disable crs可以关闭这个特性添加votedisk1、停止所有节点的crs; crsctl stop crs2、添加votedisk;crsctl a...
无备份的数据块损坏恢复办法 dbms_repair
如果是索引块出错,解决方案很简单,通过online重建索引即可(必须加online,否则会依据出错的索引来重建),也可采用先删除再重建的方法;如果是表块出错,步骤复杂一点,首先要把受损的块查找出来,让oracle扫描表...
涉及子查询sql的一次优化
前几天对生产库上的一个sql进行优化,语句结构如下select min(s.create_time) from justin s where exists(select 1 from justin_item si where s.id = si.stat_id and s.status in(4,38)and si....
使用split对分区表再分区
表justin本来按月分区,但是进入7月份,数据量暴涨,每天都有百万条之多,应开发要求,将其7月份及其以后的分区都改为按天分区目前该表最大分区到8月1号首先需要对7月份现有分区执行split操作,然后添加8月份以后的...
使用leading(,)优化sql执行计划
今天在数据库中捕获到一条sql,其cost很小但是逻辑读又极高,sql大致如下select count(*) from JUSTIN_REFER u_f left join JUSTIN u on u_f.refer_id = u.id where u.ip =...
perl学习笔记1
如何debug一个perl程序--5.6版本或更高,#!/user/bin/perl –wUse warnings;--此时会报告编译错误,但不会终止程序运行Use diagnostics;--查看更详细的诊断说明,但程序会启动很慢(向内存中加载警告和详细说明)$ per...
关于semi-join/anti-join的一点探讨
create table dept (deptno number(5), dname varchar2(20));create table emp (deptno number(5), name varchar2(20));insert into dept values(1,'IT');insert into dept values(2,'HR');insert into dept values(...
linux安装mysql 5.5并修改其安装路径
查看OS版本[root@justin mysqldata]# more /etc/issueEnterprise Linux Enterprise Linux AS release 4 (October Update 8) 卸载了已有的mysql首先运行yum remove mysql然后通过rpm –qa | grep m...
linux配置yum
首先要检查DNS是否已经配置,检查文件/etc/resolv.conf,如无记录,需要添加Nameserver *.*.*.*否则会报错配置yum步骤进入/etc/repos.d路径,执行wget http://docs.linuxtone.org/soft/lemp/CentOS-Base.repoY...
安装mysql遇到ERROR: 1136 Column count doesn't match value count at row 1
Linux上安装mysql反复遇到这么一个错误ERROR: 1136 Column count doesn't match value count at row 1 详细信息如下[root@justin oracle]# rpm -ivh MySQL-server-5.1.51-1.glibc23.x86_64.rpmwarni...
11g 上RMAN-08137的处理
发现11.2.0.2的物理备库无法删除过期日志,删除脚本如下[oracle@report-db01 ~]$ more /home/oracle/monitor/deletearchivelog.sh. /home/oracle/.bash_profilerman target / @/home/oracle/monitor/deletearchiv...