自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Jenya's blog

Just do it

  • 博客(487)
  • 资源 (1)
  • 收藏
  • 关注

原创 1.4.7 信息统计工具dbms_stats.gather_table_stats

Oracle的优化器是CBO,所以对象的统计数据对执行计划的生成至关重要,如果执行计划有误可以使用dbms_stats.gather_table_stats重新统计表,列,索引的统计信息(默认参数下是对表进行直方图信息收集,包含该表的自身-表的行数、数据块数、行长等信息;列的分析--列值的重复数、列上的空值、数据在列上的分布情况;索引的分析-索引页块的数量、索引的深度、索引聚合因子)。 收

2015-03-24 16:06:55 500

原创 1.4.6 收集sql语句的执行计划 2

explain plan for 生成执行计划这种方式是直接产生执行计划,不会产生SQL结果。步骤1    sqlplus登录数据库步骤2    执行explain plan for语句 SQL> explain plan for select po.charge, po.new_charge,po.avg_charge           from lbi_ls_basi

2015-03-24 16:03:17 425

原创 1.4.6 收集sql语句的执行计划

分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQL的每一步执行是否存在问题。常用的两种方法查看SQL执行计划。方法一:autotrace生成执行计划这种方式执行方便,但是当遇到执行时间长的SQL就变得不太现实,它是先产生结果再生成执行计划的。关于Autotrace几个常用选项的说明:SET  AUTOTRACE  OFF ---------------- 不生成AUT

2015-03-24 16:02:55 437

原创 1.4.5 收集trace日志

trace日志有助于发现故障的详细信息,确认问题原因、影响范围、故障现象。前提条件alert日志提及到的一些trace日志和incident trace文件,要一并收集。操作步骤步骤 1 以oracle用户登录。步骤 2 根据alert日志中提示所涉及的trace日志文件,收集trace日志。  在alert日志中会提示出所涉及的trace日志文件的全路径名称,一般以

2015-03-24 15:57:18 948

原创 1.4.4 收集alert日志

alert日志有助于发现故障的详细信息,确认问题原因、影响范围、故障现象。背景信息当数据库出现故障时,应该优先检查告警日志文件“alert_.log”,它记录了关于故障的完整错误过程及错误的详细信息。比如: 数据库故障是出现一次还是反复出现。 数据库故障是否能够比较容易的恢复、绕过、解决。 数据库故障发生后业务是否能正常运行。操作步骤步骤 1 以oracle用户登

2015-03-24 15:56:30 649

原创 1.4.3 收集addm报表 2

9. 根据Oracle列出的snap Id提示,输入起始snap Id和结束snap Id,收集两个时段的数据库性能数据。例如输入起始snap Id为3311,结束snap Id为3316,返回信息如下:Specify the Begin and End Snapshot Ids ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Enter value

2015-03-24 15:53:43 411

原创 1.4.3 收集addm报表

收集定期内的数据库状态、潜在的数据库性能瓶颈,以及内建专家系统给出的Oracle性能调优方法和数据统计分析。操作步骤步骤 1 以oracle用户登录操作系统。步骤 2 登录数据库。:~> sqlplus / as sysdba; 步骤 3 生成addm报表。8. 开始收集addm报表。SQL> @?/rdbms/admin/addmrpt; 对某些系统,@特殊字符前

2015-03-24 15:52:18 465

原创 1.4.2 收集ash报表 4

1.         输入报表名,默认以“ashrpt_instance_Id_日期_时间”命名,可以不输入。如下所示为生成的ASH报表样例:Report written to ashrpt_1_0729_1920.html                                               步骤 1     如果没指定目录和文件名,生成的ASH报表在当

2015-03-24 15:49:24 388

原创 1.4.2 收集ash报表 3

3. 按照提示的有效格式输入收集信息的开始时间。有效格式有: 具体的日期和时间,如02/23/03 14:30:15。 当天的某个时间,如14:30:15或14:30。 相对时间,如距当前时间1个半小时输入-1:30,距当前时间15分钟输入-15。例如输入时间07/29/2013 19:00:00,返回信息如下:Report begin time specified:

2015-03-24 15:46:50 469

原创 1.4.2 收集ash报表 2

2. 输入报表的格式,有HTML格式、TEXT格式,默认HTML格式。例如输入格式为html,返回信息如下:Type Specified:  htmlInstances in this Workload Repository schema~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   DB Id     Inst Num DB Na

2015-03-24 15:45:00 454

原创 1.4.2 收集ash报表

收集活动会话的历史信息、短暂的性能问题(比如只是持续几分钟的性能问题)、特定时段的数据库运行的性能状态信息,以及针对特定的模块、SQL_ID、SESSION_ID、service等来收集的性能状态信息。背景信息ASH每秒钟收集一次当前处于非空闲等待事件的、活动状态的session的信息,不收集空闲的会话。操作步骤      步骤 1      以oracle用户登录操作系统。 

2015-03-24 15:42:55 525

原创 1.4.1 收集awr报表 6

步骤 1      如果没指定目录和文件名,生成的AWR报表在当前目录,执行如下命令查看。1.        回到当前目录。SQL> host2.        查看报表。~> ls返回信息显示如下:awrrpt_1_3166_3168.html----结束

2015-03-24 11:44:53 403

原创 1.4.1 收集awr报表 5

1.         输入起始snap Id和结束snap Id,收集两个时刻间段的数据库性能数据。起始snap Id和结束snap Id这两个时间段之间,不能关闭或启动数据库,否则会报错。注意:例如输入起始snap Id为3166,结束snap Id为3168,返回信息如下:Specify the Begin and End Snapshot Ids

2015-03-24 11:41:54 444

原创 1.4.1 收集awr报表 4

1.  输入一个天数,Oracle会列出指定天数的所有快照信息。例如输入一个天数为1,返回信息如下:Listing the last day's Completed Snapshots                       SnapInstance     DB Name        Snap Id    Snap Started    Level-----------

2015-03-24 11:40:56 334

原创 1.4.1 收集awr报表 3

1.         输入报表的格式,有HTML格式、TEXT格式,默认HTML格式。例如输入格式为html,返回信息如下:Type Specified:  html  Instances in this Workload Repository schema~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  DB Id    

2015-03-24 11:36:28 411

原创 1.4.1 收集awr报表 2

说明:对某些系统,@特殊字符前面可能需要转义字符\,才能运行该命令。请运行命令:SQL> \@?/rdbms/admin/awrrpt.sql;返回信息显示如下:Current Instance ~~~~~~~~~~~~~~~~   DB Id    DB Name      Inst Num Instance----------- ------------ -------

2015-03-24 11:32:42 340

原创 1.4.1 收集awr报表

收集某个时间段内的数据库运行的性能诊断信息。前提条件数据库为Oracle 10g以上版本。背景信息Oracle默认快照1小时生成一次、保持7天,可以根据需要调整快照生成的频率、保持时长。如果要手工生成快照,则用~> sqlplus / as sysdba;登录数据库执行命令:SQL> exec dbms_workload_repository.create_snapshot

2015-03-24 11:28:15 380

原创 查看服务器信息 6

avgrq-sz:  平均每次设备I/O操作的数据大小 (扇区)。delta(rsect+wsect)/delta(rio+wio)avgqu-sz:  平均I/O队列长度。即 delta(aveq)/s/1000 (因为aveq的单位为毫秒)。await:     平均每次设备I/O操作的等待时间 (毫秒)。即 delta(ruse+wuse)/delta(rio+wio)

2015-03-24 11:13:40 379

原创 1.3.2 查看服务器信息 5 磁盘I/O

磁盘I/O步骤1          登录LBI服务器步骤2          查看I/O信息~ # iostat -x 1 100参数说明:rrqm/s:    每秒进行 merge的读操作数目。即 delta(rmerge)/s wrqm/s:    每秒进行 merge的写操作数目。即 delta(wmerge)/s r/s:      

2015-03-24 11:12:55 495

原创 1.3.2 查看服务器信息 4

磁盘信息                                               步骤 1     以root用户登录。                                               步骤 2     查看磁盘信息(1)     磁盘分信息:~ # df -h(2)     查看分区信息:~ # fdisk

2015-03-24 11:10:16 355

原创 1.3.2 查看服务器信息 3

CPU步骤1          以root用户登录步骤2          查看CPU信息~ # cat /proc/cpuinfolinux_lbi_02:~ # cat /proc/cpuinfoprocessor       : 0vendor_id       : GenuineIntelcpu family      : 6model       

2015-03-24 11:08:13 379

原创 1.3.2 查看服务器信息 2

内存                                               步骤 1     以root用户登录。                                               步骤 2     查看内存信息:~  free剩余内存 =  Mem.free + Mem.buffers + Mem.cached返回信

2015-03-24 11:07:27 379

原创 1.3.2 查看服务器信息

操作系统版本                                               步骤 1     以root用户登录。                                               步骤 2     查看操作系统信息 :~ #  lsb_release –a返回信息如下:linux_lbi_02:~ #  lsb_

2015-03-24 11:07:03 368

原创 1.3.1 调整外置磁盘的队列深度

异常处理如果检查外置磁盘的队列深度属性值小于16,必须整改。请参见如下步骤修改磁盘属性。1.        修改磁盘队列深度属性。# chdev -l hdisk6 -a queue_depth =24 -P2.        修改后重启系统使配置生效。----结束

2015-03-24 11:04:32 1608

原创 1.3.1 调整外置磁盘的队列深度

磁盘的队列深度表示并发的IO数,设置值太小会导致操作系统IO等待,引发性能问题,例如斯里兰卡Airtel报表使用的磁盘队列深度使用的是默认值 (queue_depth = 4),导致IO大量的等待。参考标准外置磁盘的队列深度属性值不小于16。如果检查结果小于16,建议改为大于16的值,推荐值为24。操作步骤步骤1          以root用户登录小型机(AIX系统)

2015-03-24 11:04:13 2496

原创 oracle优化19

为事物指定回归段   set transaction use rollback segment rbs_cvt  针对bytes可以使用回滚段回缩。   alter rollback segment rbs_cvt shrink;   select bytes,extents,max_extents from dba_segments    where segment_type

2015-03-24 10:45:26 491

原创 oracle优化18

13、约束:  (1)约束是和表关联的,可在create table或alter table table_name add/drop/modify来建立、修改、删除约束。  可以临时禁止约束,如:   alter table book_example   disable constraint book_example_1;   alter table book_example

2015-03-24 10:44:56 375

原创 oracle优化17

3、数据库对象:   select * from dba_objects;   CLUSTER、DATABASE LINK、FUNCTION、INDEX、LIBRARY、PACKAGE、PACKAGE BODY、   PROCEDURE、SEQUENCE、SYNONYM、TABLE、TRIGGER、TYPE、UNDEFINED、VIEW。  4、表:   select * fr

2015-03-24 10:43:13 279

原创 oracle优化16

SELECT UPPER(F.TABLESPACE_NAME) " 表空间名 ",        D.TOT_GROOTTE_MB " 表空间大小 (M) ",        D.TOT_GROOTTE_MB - F.TOTAL_BYTES " 已使用空间 (M) ",        TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) /

2015-03-24 10:40:22 311

原创 oracle优化15

3、数据库对象:   select * from dba_objects;   CLUSTER、DATABASE LINK、FUNCTION、INDEX、LIBRARY、PACKAGE、PACKAGE BODY、   PROCEDURE、SEQUENCE、SYNONYM、TABLE、TRIGGER、TYPE、UNDEFINED、VIEW。  4、表:   select * fr

2015-03-24 10:40:22 379

原创 oracle优化14

22 、有关 connection 的相关信息 : 1 )查看有哪些用户连接 SELECT S.OSUSER OS_USER_NAME,DECODE(SIGN( 48 - COMMAND), 1 ,TO_CHAR(COMMAND),'ACTION CODE #' || TO_CHAR(COMMAND))ACTION,P.PROGRAM ORACLE_PROCESS, STATUS SE

2015-03-24 10:38:55 288

原创 oracle优化13

SQL >SELECT T2.USERNAME,T2.SID,T2.SERIAL#,T2.LOGON_TIME FROM V$LOCKED_OBJECT T1,V$SESSION T2 WHERE T1.SESSION_ID=T2.SID ORDER BY T2.LOGON_TIME;SQL >SELECT SQL_ADDRESS FROM V$SESSION WHERE SID=;

2015-03-24 10:38:10 285

原创 oracle优化12

DECODE(LMODE,               0 , 'NONE' ,               1 , 'NULL' ,               2 , 'ROW-S' ,               3 , 'ROW-X' ,               4 , 'SHARE' ,               5 , 'S/ROW-X' ,     

2015-03-24 10:38:08 278

原创 oracle优化11

SQL >SELECT SYS .V_$SESSION.OSUSER,        SYS .V_$SESSION.MACHINE,        V$LOCK.SID,        SYS .V_$SESSION.SERIAL#,        DECODE(V$LOCK.TYPE ,               'MR' , 'MEDIA RECOVERY' ,  

2015-03-24 10:37:43 320

原创 oracle优化10

16 、查看锁 ( lock ) 情况 : SQL >SELECT /*+ RULE */ LS.OSUSER OS_USER_NAME,LS.USERNAME USER_NAME,DECODE(LS.TYPE ,         'RW' , 'ROW WAIT ENQUEUE LOCK' ,         'TM' , 'DML ENQUEUE LOCK' ,  

2015-03-24 10:35:18 241

原创 oracle优化9

找出消耗 CPU 最高的进程对应的 SQL 语句: SET LINE 240 SET VERIFY OFF COLUMN SID FORMAT 999 COLUMN PID FORMAT 999 COLUMN S_# FORMAT 999 COLUMN USERNAME FORMAT A9 HEADING "ORA USER"COLUMN PROGRAM FORMAT

2015-03-24 10:33:46 296

原创 oracle优化8

根据 SID 找 ORACLE 的某个进程 : SQL > SELECT PRO.SPID FROM V$SESSION SES,V$PROCESS PRO WHERE SES.SID= 21 AND SES.PADDR=PRO.ADDR;监控当前数据库谁在运行什么 SQL 语句 : SQL >SELECT OSUSER, USERNAME, SQL_TEXT FROM V$SESSI

2015-03-24 10:32:18 271

原创 oracle优化7

10 、捕捉运行很久的 SQL: COLUMN USERNAME FORMAT A12 COLUMN OPNAME FORMAT A16 COLUMN PROGRESS FORMAT A8 SELECT USERNAME,SID,OPNAME,ROUND(SOFAR* 100 / TOTALWORK, 0 ) || '%' AS PROGRESS,TIME_REMAINING,SQ

2015-03-24 10:31:22 309

原创 oracle优化6

检查 buffer pool HIT_RATIO 执行 SELECT NAME , (PHYSICAL_READS/(DB_BLOCK_GETS+CONSISTENT_GETS)) "MISS_HIT_RATIO" FROM V$BUFFER_POOL_STATISTICS WHERE (DB_BLOCK_GETS+ CONSISTENT_GETS)> 0 ;( 正常时 db buffer

2015-03-24 10:30:47 307

原创 oracle优化4

查看回滚段的使用情况,哪个用户正在使用回滚段的资源 : SELECT S.USERNAME, U.NAME FROM V$TRANSACTION T,V$ROLLSTAT R,V$ROLLNAME U,V$SESSION S WHERE S.TADDR=T.ADDR AND T.XIDUSN=R.USN AND R.USN=U.USN ORDER BY S.USERNAME;如何查

2015-03-24 10:30:15 314

kettle安装配置

关于kettle的安装和基本配置: 1>Kettle版本: pdi-ce-8.1.0.0-365.zip 2>JDK 版本: jdk-8u191-windows-x64.exe 3>数据库连接驱动包 mysql-connector-java-5.1.29.jar mysql驱动包 ojdbc6.jar oracle驱动包 sqljdbc42.jar sql server 驱动包

2018-12-25

空空如也

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

TA关注的人

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