- 浏览: 82488 次
- 性别:
- 来自: 北京
最新评论
-
streamsong:
王雨尘 写道
的确是说索引是排序的,我漏掉啦
我们为什么要用索引,用索引为什么比不用索引快 -
heerwa:
...
我们为什么要用索引,用索引为什么比不用索引快 -
liulanghan110:
那么用索引为什么会提高性能呢?因为索引(以B树索引为例)是树状 ...
我们为什么要用索引,用索引为什么比不用索引快 -
王雨尘:
我们为什么要用索引,用索引为什么比不用索引快 -
pangpang514:
居然和强哥合影过。。。。佩服!
我们为什么要用索引,用索引为什么比不用索引快
文章列表
我们在创建数据库的时候,通常会把字符集设置为ZHS16GBK,有些时候,ZHS16GBK字符集满足不了业务的需求,会更换字符集,以AL32UTF8为例,ZHS16GBK字符集每个汉字以2个字符存放,而AL32UTF8字符集每个汉字是以3个自己存放,这样,有可能就要增大某些表的字段长度。ORACLE提供了CSSCAN工具来查看字符集转换的时候哪些字段需要增大到多大的长度。(当然,也可以写PL/SQL将所有的表为CHAR,VARCHAR2的字段都增大1.5倍),既然ORACLE提供了CSSCAN工具,我们就要学着使用。在我们创建数据库的时候,CSSCAN工具一般不会被安装,我们需要手动执行$ORAC ...
最近一直在用SQL*LOADER加载数据,用外部表也可以实现,今天想测试下外部表加载数据和SQL*LOADER加载1029027条记录的性能。首先创建一张外部表。create table enmo(name char(10),lname char(10),xname varchar2(50),ydoss varchar2(20),doss varchar2(50),btime varchar2(50),etime varchar2(50),num_file number,box_num number,b_enum varchar2(20))organization external(type o ...
Duplicate是RMAN的一个组成部分,利用Duplicate复制一个数据库相当简单,Duplicate可以在不影响目标数据库的情况下,依靠目标数据库的备份集常见一个数据库副本或者standby数据库,(11g对Duplicate有所加强,已经非必须依赖目标数据库的备份集)。在复制目标数据库的时候,既可以复制完整的数据库,也可以仅复制目标数据库的部分表空间,也可以跳过指定的表空间和只读的表空间,(system和undo表空间不能被跳过)。
一、创建本地Duplicate数据库演示:
环境:Windows XP,oracle 11gR2
1. 创建一个新的oracle服务,linux ...
由ACOUG、云和恩墨主办的”Oracle技术嘉年华(OTN China Tour 2011)“活动已经正式拉开帷幕。活动官方网站:http://tech.it168.com/topic/2011/8-24/otn/index.htmlACOUG宣传贴:http://www.acoug.org/events/225.htmlACOUG微博:http://weibo.com/acoug云和恩墨微博:http://weibo.com/enmotech
2011年10月20日~10月21日,“Oracle技术嘉年华”将在北京国宾酒店隆重举行,这是暨年初数据库技术大会后的又一次Oracle数据库盛 ...
今天,收到客户的邮件说上周每天早上10点多,数据库都会有很多锁,收集了下客户的AWR信息,发现排在TOP5第二位的就是enq: TX - row lock contention。
SQL> select SESSION_ID,SESSION_SERIAL#,SQL_ID v$active_session_history where event='enq: TX - row lock contention';
SESSION_ID SESSION_SERIAL# SQL_ID---------- --------------- -------------514 343 ...
ORA-600汇总(上)
- 博客分类:
- oracle
此文转载 http://space.itpub.net/13558130 mydbalife的文章
ora-600是Oracle对于一些内部错误的一个统一的错误号(类似的还有ora-7445)。要判断ora-600错误具体的类型,一般要根据其第一个参数来区分。一个ora-600的例子如下:
ORA-00600: internal error code, arguments: [15700], [3], [0x1DDE1AAB0], [], [], [], [], []
其中15700代表这个错误的具体类型,这是和并行查询相关的一个内部错误,后面的几个参数则是该错误的一些具体参数,不同 ...
我们为什么要用索引,用索引为什么比不用索引快
- 博客分类:
- oracle
今天分析客户的oracle数据库,发现很多表上都建立了复合索引,而SQL的执行计划很多都没有走索引或者都是索引扫,这显然是不对的,通过分析SQL发现,SQL的条件很多都不满足复合索引,也可以说是复合索引简历的不正确,在请 ...
有些时候,我们需要分析占用资源比较大的sql的执行计划,也需要将sql的执行计划以报告的形式反馈给客户,由于AWR报告里的SQL通常都是些变量,因此以命令行方式生成sql的执行计划就很麻烦,而且也不美观,利用awrsqrpt ...
AWR导入分析数据之后,就要对数据库进行分析,我之前导入的AWR数据是RAC环境,利用awrrpt.sql只能对本地的数据库生成AWR报告,要生成导入的数据库的AWR报告,就需要使用awrrpti.sql这个脚本。
QL> @?/rdbms/admin/awrrpti
Specify the Report Type
~~~~~~~~~~~~~~~~~~~~~~~
Would you like an HTML report, or a plain text report?
Enter 'html' for an HTML report, or 'text' for plain ...
[转]等待事件---enq:TX - row lock contentionenq是一种保护共享资源的锁定机制,一个排队机制,先进先出(FIFO)
发生TX锁的原因一般有几个
1.不同的session更新或删除同一个记录。
2.唯一索引有重复索引
3.位图索引多次更新
4.同时对同一个数据块更新
5.等待索引块分裂
通过数据系统视图检查果然是多个update的sql
select sid,username,event from v$session where stat in('WAITING') and wit_class!='Idle';
sid从上面的sql获得
sele ...
有些时候,我们分析客户的数据库的性能,需要请客户将AWR数据导出,然后导入本机数据库进行分析。下面简单介绍下怎样用awr导出分析数据。
一、在导出数据之前,一般需要创建以下路径
DATA_FILE_DIR
DATA_PUMP_DIR
EXP
IMP
SQL> create directory exp as 'd:\exp';
SQL> create directory data_file_dir as 'd:\dir';
SQL> create directory exp as 'd:\exp';
二、导出
SQL> @?/rd ...
有些时候,我们分析客户的数据库的性能,需要请客户将AWR数据导出,然后导入本机数据库进行分析。
一、在导入数据之前,一般需要创建以下路径
DATA_FILE_DIR
DATA_PUMP_DIR
EXP
IMP
SQL> create directory data_file_dir as 'd:\dir'; --将要导入的dmp文件存到此路径下
SQL> create directory exp as 'd:\exp';
SQL> create directory exp as 'd:\exp';
SQL> create di ...
5tt2k7djxub2m
select t.unionorderid as serialid , t.lotteryid as lotteryid , fn_get_lotteryname(t.lotteryid) as lotterydesc , t.lotteryissue as issue , fn_get_username(t.uuid) as username , to_char(t.addtime, 'yyyy-mm-dd hh24:mi') as createtime , case when t.schstatus=1 and t.currentvalue< ...
今天检查彩民村的数据库健康状态,发现CPU使用率非常高,而且这个时间点的业务并不是很忙,开发人员也没有对数据库做大的操作。
分析AWR发现占用资源比较大的sql很多都是重复的
Top 5 Timed Events
Event
Waits
Time(s)
今天检查彩民村的数据库健康状态,发现CPU使用率非常高,而且这个时间点的业务并不是很忙,开发人员也没有对数据库做大的操作。
分析AWR发现占用资源比较大的sql很多都是重复的
Top 5 Timed Events
Event
Waits