欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    Oracle原厂数据库规范.ppt

    • 资源ID:5442102       资源大小:879.50KB        全文页数:55页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Oracle原厂数据库规范.ppt

    1,Oracle数据库规范,Victor Li,Senior Consultant Oracle Consulting Service,3,Oracle数据库规范 数据库模型设计规范 SQL开发规范数据库管理规范数据库性能优化建议,Oracle Corporation,建表的参数设置 存储参数 PCTFREE-对于经常被UPDATE且被update的列所占字节比较大的表,需要设置较大的PCTFREE,避免造成过多行迁移。-对于可能造成热点块的表,PCTFREE参数需要设置较大,尽量减少热点块发生概率。事务参数-对并发DML事务很大的表,可以在建表初期设置较大的initrans参数。initrans值过小可能会引起ITL竞争,导致热点块或者enqueue较为严重。,4,Oracle Corporation,建表的参数设置 Initrans使用原则,每个initrans在数据块上占用24Bytes空间Initrans不可以超过10不可以修改maxtrans值修改initrans后只对新的数据块起作用,如需要对全部数据起作,用需要重新组织表 alter index xxx initrans 8;Alter table xxx storage(freelists 8);注意:ASSM表空间上无需设置freelists,5,Oracle Corporation,列设计 定长字符型列使用CHAR类型,不定长字符型列使用VARCHAR2类型。固定长度用char,相对varchar2可以提高查询速度 不定长度用varchar2,如果用char,则会在列末用空格补充,在处理上需要用trim等函数去空格,因此容易造成处理的不便和效率问题。日期字段需定义为DATE类型。如果定义为varchar2或者char时需要进行转换,影响效率.。需要数据精确到微秒的字段需定义为TIMESTAMP类型。列为null时,需定义default值,避免因为null而造成索引不能被用到的情况。使用NUMBER型时必须指定长度。由number得精度和密度来保障数据的一致性,6,Oracle Corporation,列设计 表中字段的命名长度不应该超过20个字节。记录数达到千万级的表,必须进行分区,分区一般遵循以下原则:数据具有明显的范围属性,比如日期,大小等,且经常进行范围条件查询的表,采用范围分区 数据具有明显的列表属性,比如地点,省份等,且经常用列表条件查询的表,采用列表分区 数据不具有明显的范围属性或者列表属性,且数据量很大,则可以采用hash分区,7,Oracle Corporation,临时表 对于只对本事务有效的临时表使用ON COMMITDELETE ROWS关键字创建该表。对于只对本会话有效的临时表使用ON COMMITPRESERVE ROWS关键字创建该表。对于临时表空间要求比较大的业务系统,临时表要存储在独立的表空间中,并且临时表空间的数据文件需要放在单独的磁盘上。,8,Oracle Corporation,9,索引 小表(数据量小于5000条记录为标准)不需要创建索引。对于OLTP应用,分区表使用分区索引。创建或重建大索引时需指定使用NOLOGGING子句,指定并行度,指定较大的排序区,提高执行效率。EXAMPLE:ALTER SESSION SET WORKAREA_SIZE_POLICY=MANUAL;ALTER SESSION SET SORT_AREA_SIZE=2000000000;ALTER SESSION SET SORT_AREA_RETAINED_SIZE=2000000000;CREATE INDEX XXX NOLOGGING PARALLEL X;ALTER INDEX XXX NOPARALLEL;将记录差别数最多的列放在索引顺序的最前面。对于OLTP应用的业务系统索引数据的重复率不能超过20%。进行order by column desc排序时,创建column desc索引。,Oracle Corporation,索引 频繁使用的index需要放入库缓存的keep池中。对于频繁使用的较小的index(可以根据sga buffer来确定大小的标准)可以直接放入buffer的keep池,以提高效率。对于较大或者更新比较频繁的表或者索引不建议放在buffer 的keep池。对于系统经常访问的小表,比如系统配置表等可以直接修改表和索引的属性,以保留在buffer池中。在OLTP系统中,少用位图索引;对于更新频繁的表,少用位图索引。,10,Oracle Corporation,索引 通过索引查询数据,行数一般不会超过全表的20%,否则,采用全表扫描方式更合适些 10,15,20的原则。通过索引查询数据最好是少于表记录数的20%,否则就最好用全表扫描 Tom Kyte建议在20%对索引的使用进行监控,可以发现那些索引有用,那些索引没有用到。没有用到的索引可以直接删除。重建索引的时间最好选择在维护时间窗口,如果一定要在业务处理期间重建索引则使用online选项 如果索引的level不高,且不需要挪动索引的存储位置,可以选择alert index.coalesce 当索引的clustering_factor接近表的行数时,可以把表数据按照索引列排序后进行重建。以提高索引查询的效率,接近表的block数是最理想的情况。反向索引不适合于表上含有较多,=,=范围查询的系统,否则反而会降低系统的整体性能,11,Oracle Corporation,12,分区索引 通过下图定义的规则,可确定分区索引类型索引字段是表分区字段的前缀?,Local PrefixedGlobal PrefixedLocal Non-prefixed,YesNo该非分区字段是唯一索引?YesNo是否性能在可承受范围,而分区的可管理性、可用性更重要?YesNo是数据仓库/交易系统?,OLTPGlobal Prefixed,DSSLocal Non-prefixed,Oracle Corporation,分区索引 Hash Global分区索引介绍 HASH-Partitioned Global索引是Oracle 10g开始提供的新特性。而在以前的版本中,Oracle只支持 Range-Partitioned Global索引。HASH-Partitioned Global索引的好处如下:比Range-Partitioned Global索引易于实施。HASH-Partitioned Global索引是根据索引字段值,通过Oracle内部的HASH算法自动均匀散列到定义的分区中。而Range-Partitioned Global索引需要根据索引字段值的范围进行分区,因此实施和维护的难度都大。HASH-Partitioned Global索引适合于在并发量、吞吐量很大的交易系统(OLTP)中,对某些字段的访问冲突。尤其是sequence字段值。HASH-Partitioned Global索引适合于大批量的数据查询。HASH-PartitionedGlobal索引不仅可以提供分区之间的并行查询,而且在分区内也可进行并行查询的处理。建立分区索引必须指定表空间,并且指定的表空间要与数据表空间分开,这样便于管理,同时尽可能分开索引和数据的IO访问,提高效率,13,Oracle Corporation,14,索引 索引数量 对于OLTP应用的业务系统,单个表上索引的个数不超过5个。对于OLTP系统来说,索引数量太多会严重影响DML操作 索引类型选择 btree or bitmap B-TREE索引,一般情况下选择普通的b-tree索引 位图索引对于列的distinct value很少,且数据量较大,且DML操作很少,这种情况可以选择使用位图索引。比如性别,distinct value只有男和女且DML操作也会很少,此时选择位图索引,效率可能会更高。,Oracle Corporation,复合索引当需要创建复合索引时,需要慎重考虑列在索引中的顺序,主要影响的是INDEX SKIP SCAN 当查询条件中有第一列时,不需要考虑列的分布情况 当查询条件中没有第一列时,需要考虑列的分布情况。尽量把distinct value不多的列放在复合索引的第一列 如果复合索引所包含的字段超过3 个,那么仔细考虑其必要性,考虑减少复合的字段;不管是单列索引还是复合索引,当列允许为空,且实际有空值时,在查询中可能会不走索引扫描,因为null值不在索引条目中。因此尽可能选择not null的列做为索引列,如果不能避免时,可以采用列为空时去一个默认值的方法解决。,15,Oracle Corporation,索引 函数索引 尽量不采用函数索引,函数索引会在insert以及select时多一次函数计算的消耗。递减索引 进行order by column desc排序时,综合考虑,创建columndesc索引,不再额外进行排序操作。,16,Oracle Corporation,视图 物化视图的刷新间隔时间最小为3分钟。物化视图的基表必须创建主键,17,Oracle Corporation,存储过程、函数和包 存储过程、函数和包中不允许频繁的使用DDL语句。存储过程、函数和包必须有相应的出错处理功能。存储过程、函数和包中变量在引用表字段的时候,需使用rowtype类型。rowtype可以方便,容易的定义字段类型,当表结构或者字段类型发生变化是不再修改程序 rowtype在游标使用中 可以整行的接受数据定义,而不需要对一行数据的每个字段进行分别定义,18,Oracle Corporation,Directory 目录设置要求与Oracle系统用户目录分开。Directory使用权限只赋予需要使用的数据库用户。对应的操作系统目录必须对oracle操作系统用户开放读写权限。定期清理和备份Directory对应的操作系统目录。,19,Oracle Corporation,同义词 对于只读用户,必须创建与表相同名字的别名。别名的访问顺序:public别名-private别名-与表同名的对象。,20,Oracle Corporation,Sequence sequence要求不连续时,需要指定cache和noorder,特别是对于RAC系统而言,sequence 的nocache属性可能会带来较大的性能影响。对于RAC系统,sys.audses$,sys.idgen1$两个sequence的cache值调整为10000或者更高,特别是短连接且logon频率高的系统更需要调整,21,Oracle Corporation,LOB对象Oracle对大对象的操作机制象普通数据一样,因此大对象需要被分解成多个小的数据片段才能完成这种数据操作机制,这种小的数据片段就是CHUNK。使用CLOB/BLOB 不可使用raw/raw long 分开存储,uniform size tbs 使用16K CHUNK SIZE 升级到11g的SecureFiles LOB,22,Oracle Corporation,数据库安全设计数据库用户安全设计原则 数据库用户权限授权按照最小分配原则。数据库用户要分为管理、应用、维护、备份四类用户。不允许使用sys和system用户建立数据库应用对象。禁止grant dba to user。,23,Oracle Corporation,数据库安全设计,24,Oracle Corporation,数据库用户角色及权限设计规范,删除或锁定数据库测试用户scott。修改可用用户的默认密码。对查询用户只能开放查询权限。对新建用户初次登录数据库强制修改密码。开发环境,测试环境,生产环境中相同用户的权限设置必须完全一致。,25,Oracle Corporation,数据库用户角色及权限设计规范,26,Oracle Corporation,27,Oracle数据库规范 数据库模型设计规范 SQL开发规范数据库管理规范数据库性能优化建议,Oracle Corporation,SQL开发规范 Select语句中不可以用*,必须select字段列表,以节省内存,提高效率 避免频繁commit,尤其是把commit 写在循环体中每次循环都进行commit。避免在一个事务中出现2此commit的现象。如果执行一半执行一次commit,执行完另外一半又执行一次commit like 子句尽量前端匹配,如写成 like string%,不要写成%string%。批量insert 大数据量时可以采用append和nologging方式,提高处理速度 exp时可以采用direct=y,index=no的方式提高处理效率,imp时可以指定较大的buffer。如果是oracle 10g以上则可以使用expdp和impdp来提高处理的速度 exp和imp时,如果系统中存在主外键约束,在imp时可以设置constraints=n,避免在imp时因为主外键而报错。,28,Oracle Corporation,SQL开发规范 在使用for update子句时一定注意限制条件,避免锁定全表或者不需要被锁定的行记录。readonly 的情况不能用for update。PLSQL开发中一定注意解析的问题。比如execute immediate select.from table where xx=using 而不要直接写成execute immediate 尽量少用not exist/not in等否则写法。如果一定要用时,尽量选择not exist,not in可能用不到index,not exist效率更高,速度更快。exist和in的选择一般遵循以下原则 当查询的数据较少或者字段值比较时用in比较好,比如select*from t wheret.id in(.);当查询的值比较多或者是子查询时用exist比较好,比如select*from t whereexist(select.)exist中的子查询用常量是速度比select*快,比如select*from t where exist(select 1 from),29,Oracle Corporation,SQL开发规范 尽量不用select嵌套写法,如select from tb1,(selecttb2)尽可能把select的嵌套转化为连接方式,如select.From tb1,tb2 尽量少用is null/is not null等null 的处理。对于大表查询中的列项应尽量避免进行诸如to_char()、to_date()、to_numbre()等转换。尽量避免进行全表扫描,限制条件尽可能多,以便更快搜索到要查询的数据 在做全表扫描时,可以先修改session的db_file_multiple_read_count值再进行全表扫描以提高执行效率。alter session set db_file_multiple_read_count=32.,30,Oracle Corporation,SQL开发规范 创建database 对象的时候,对象名不能用“”引上,否则可能会带来找不到对象的问题。hash join时注意表连接顺序。且需要注意选择合适的hash key,选择distinct value很多的字段来作为hash key,如果重复值太多,在进行hash探测的时候效率将会很低。hash join较多的系统,需要设置较大的pga_aggregate_target参数,以便进行最优的hash join 收集统计信息时,尽量在维护时间段进行,否则会造成大面积SQL重新解析,可能导致较为严重的问题。在parallel查询的使用过程中,尽量指定hint来使用而不是在表上加degree参数,这样会导致对该表的所有查询都将偏向于走全表扫描,同时可能会带来内存的大量消耗。对于并行度的问题,不繁忙的系统可以设置并行度为CPU的个数,对于繁忙的OLTP系统,最好不要使用并行查询。在SQL开发的过程中,SQL的字母大小写采用一致规范,避免因为大小写的问题造成SQL的多次解析。,31,Oracle Corporation,SQL开发规范 in 替换or,比如select*from t where id=1 or id=2 or id=3,select*from twhere id in(1,2,3)union 与or,union有时比or更有效,or有时比union更有效,综合union替换or或者or 替换union后是否能用到索引,以及条件的选择性来综合判断和评估。=替换,比如select count(1)from t where id=3 而不用select count(1)from t where id2 order by在对索引列进行排序时需要注意 order by 后面的字段顺序,应该和索引列(复合索引)的顺序 保持一致。order by后面的字段如果为null,则不能用到索引select id from t order by id.索引在id列上,如果id列为null,则该语句要用全表扫描再排序,如果为not null,则直接用索引扫描即可。如果id列为null,则可以通过用where和order by置换的方式,比如select id from t order by id 全表扫描再排序select id from t where id0 直接扫描索引,32,Oracle Corporation,SQL开发规范 避免数据类型转换,如果 id列为number型,select*from t whereid=1则会发生数据转换id=to_number(1),如果类似转换发生在索引列上将导致索引不能被用到。group by,order by 尽量放到SQL的最末尾,这样可以把不需要返回的行过滤掉,减少需要进行group by order by 操作的集。比如select name from t group by name having name=xxxx 效率肯定不如select name from t where name=xxxx group byname;!=操作符除非必须必要,否则坚决避免使用!=操作符,因为使用!=会使ORACLE无法使用索引,Oracle内核会假定查询会返回表中的多数记录,因此就会走FULL TABLE SCAN。,33,Oracle Corporation,如何评估SQL语句的性能 分析与SQL执行相关的配置,参数:optimizer_index_cost_adj参数:optimizer_mode参数:sql_trace参数:db_file_multiblock_read_count,分析SQL执行计划,查看SQL执行计划有三种方式:设置set autotrace:通过explain plan for通过tkprof工具,34,Oracle Corporation,通过SQL TRACE分析SQL的执行SQL_TRACE是Oracle提供的用于进行SQL跟踪的手段,是强有力的辅助诊断工具.在日常的数据库问题诊断和解决中,SQL_TRACE是非常常用的方法。SQL_TRACE使用SQL_TRACE可以作为初始化参数在全局启用,也可以通过命令行方式在具体session启用。10046使用10046事件是Oracle提供的内部事件,是对SQL_TRACE的增强.10046事件可以设置以下四个级别:,1-启用标准的SQL_TRACE功能,等价于sql_trace4-Level 1 加上绑定值(bind values)8-Level 1+等待事件跟踪12-Level 1+Level 4+Level 8,分析分析sql在执行过程中发生的解析次数,逻辑读次数,变量绑定,所花时间。改变SQL写法,变换查询条件等因素,再进行trace分析解析次数,逻辑读次数,变量绑定等指标,最后判断最优化的SQL。,35,Oracle Corporation,PL/SQL控制结构编码PL/SQL提供了三种控制程序流程的语句:条件控制语句 IF:使用ELSEIF 对相互排斥的条件进行判断。循环语句 FOR、WHILE、LOOP:不使用EXIT和RETURN语句退出循环,在一个LOOP循环中只能有一个出口;将静态的和固定不变的表达(代码)移到循环体外。跳转语句GOTO:不允许使用goto语句。,36,Oracle Corporation,异常处理 过程、函数必须在过程体中作异常捕获,并将异常信息通过os_Msg变量输出。1-19999的异常为Oracle定义的异常代码。过程、函数必须包含两个输出参数,on_Flag(number)及os_Msg(varchar2),分别用于标识过程的执行状态及过程提示信息(包括异常情况下的异常信息)。其中on_Flag有三种取值情况,0表示过程执行成功但无提示信息;大于0表示过程执行成功但有提示信息;小于1表示过程执行失败且有提示信息。找不到数据“NO_DATA_FOUND”时的异常代码为100,异常处理过程中必须进行特殊判断。WHEN OTHERS必须放置在异常处理代码的最后面作为缺省处理器处理没有显式处理的异常。,37,Oracle Corporation,38,Oracle数据库规范 数据库模型设计规范 SQL开发规范数据库管理规范数据库性能优化建议,Oracle Corporation,39,数据库安装规范 Metalink ID:756671.1 Oracle RecommendedPatches,Oracle Corporation,数据库安装规范-AIX11gR2/11gR1/10g/9i RAC修改/etc/文件,加上如下行:if-f/usr/sbin/no;then/usr/sbin/no-p-o udp_sendspace=1048576/usr/sbin/no-p-o udp_recvspace=1048576/usr/sbin/no-p-o tcp_sendspace=1048576/usr/sbin/no-p-o tcp_recvspace=1048576/usr/sbin/no-p-o rfc1323=1/usr/sbin/no-p-o sb_max=4194304/usr/sbin/no-r-o ipqmaxlen=512fi,40,Oracle Corporation,数据库安装规范-HPUX11gR2/11gR1/10g/9i RAC使用命令修改网络配置参数:ndd-set/dev/tcp tcp_conn_request_max 10240ndd-set/dev/tcp tcp_syn_rcvd_max 1024ndd-set/dev/tcp tcp_time_wait_interval 1000ndd-set/dev/tcp tcp_xmit_hiwater_def 65536ndd-set/dev/tcp tcp_recv_hiwater_def 65536ndd-set/dev/tcp tcp_xmit_lowater_def 24576ndd-set/dev/tcp tcp_fin_wait_2_timeout 60000ndd-set/dev/tcp tcp_keepalive_interval 60000ndd-set/dev/tcp tcp_ip_abort_interval 60000ndd-set/dev/tcp tcp_keepalive_detached_interval 60000ndd-set/dev/tcp tcp_rexmit_interval_initial 2000ndd-set/dev/tcp tcp_rexmit_interval_min 1500ndd-set/dev/tcp tcp_rexmit_interval_max 10000ndd-set/dev/sockets socket_caching_tcp 1024或者修改文件,41,Oracle Corporation,数据库安装规范-异步I/O AIX系统,oracle使用文件系统 AIO的minservers设置为10 AIO的maxservers设置为盘的10倍再除以CPU数,再观察高负载时aio的进程数与maxservers进行比较,再进行调整 HPUX系统 设置max_async_ports为oracle初始化参数processes+oracle后台进程的数量 设置aio_max_ops为2048,42,Oracle Corporation,数据库字符集数据库字符集的确定非常重要,如果选择不当,会给业务数据的保存带来麻烦。如在现实中,有的汉字保存到数据库时发生乱码,从而使客户的信息不能正常保存和显示。数据库字符集在系统设计开发阶段就应当确定。在数据库系统上线后,再更改数据库字符集,代价会非常大。因为不同的字符集设置之间,存在转换操作,如果不兼容,只能逐条转换。如果业务数据中确定有且只有中文字符,则数据库的字符集一般倾向于选择:ZHS16GBK:此字符包含了大部需要的汉字字符如果不确定业务数据将来是否在多个国家使用,则倾向于选择:AL32UTF8:Oracle推荐使用,此字符集支持大部份现在全世界使用的字符,AL32UTF8是双字节字符集,因此在保存非英语文字数据时需要更多的空间,在设计表结构与长度时需要注意此点,43,Oracle Corporation,数据库参数 LOCK_SGA建议设置数据库参数lock_sga将目前数据库SGA索住在物理内存中。同时,还需要修改操作系统参数以配合此参数的使用:AIX:v_pinshm从缺省的0设置为1。/usr/sbin/vmo-r-o v_pinshm=1设置可锁住内存的最大值:/usr/sbin/vmo-r-o maxpin%=percent_of_real_memoryPercent_of_real_memory=(size of SGA/size of physical memory)*100)+3HPUX:修改数据库hpux_sched_noage=178。MAX_DUMP_FILE_SIZE建议不要使用默认值(UNLIMITED),最大设置20M。,44,Oracle Corporation,数据库参数 PARALLEL_相关的参数,PARALLEL_MIN_SERVERPARALLEL_MAX_SERVERPARALLEL_MIN_PERCENTPARALLEL_ATUOMATIC_TUNINGPARALLEL_EXECUTION_MESSAGE_SIZEPARALLE_ADAPTIVE_MULTI_USER,以上参数在数据库进行进行操作的时候使用,并发技术是ORACLE的非常复杂的技术,并且是高效的技术。根据实际应用经验,可以设置以下参数:PARALLEL_MIN_SERVERS CPU的个数 PARALLEL_MAX_SERVERS=2倍于CPU的个数 PARALLEL_EXECUTION_MESSAGE_SIZE=16384,45,Oracle Corporation,46,统计信息检查 小表,小于1000万行,完全收集exec dbms_stats.gather_table_stats(ownname=user_name,-tabname=table_name,-estimate_percent=100,-cascade=true,-method_opt=for all indexed columns size auto);大表,大于1000万行,如果维护窗口时间,以及主机资源允许的情况下,完全收集。如果不允许采样比例采用30%exec dbms_stats.gather_table_stats(ownname=user_name,-tabname=table_name,-estimate_percent=30,-cascade=true,-method_opt=for all columns size skewonly);,Oracle Corporation,47,Oracle数据库规范 数据库模型设计规范 SQL开发规范数据库管理规范数据库性能优化建议,Oracle Corporation,性能检查 操作系统性能检查 CPU检查:OLTP系统,通常CPU总使用率应该在50%(根据该系统历史CPU情况,可以适当下调)以下,峰值80%以下;DSS/DW系统,通常均值在70%以下,峰值在95%以下。IO检查:通常CPU利用率中WIO%应该在10%以内,持续超过30%,必须立即检查:磁盘情况 应用情况(不良SQL)内存检查:内存空闲率,通常操作系统内存空闲大小(free memory)应该在5%左右。,48,Oracle Corporation,性能诊断工具 Learn to solve performance problems,using diagnostic toolsto such as:OS tools and utilities Vmstat,truss and strace,ps,iostat,netstat Common database tools Statspack,ASH reports,10046 and TKProf andoradebug Specialized tools OS Watcher 301137.1,49,Oracle Corporation,10046 event dbms_system 使用dbms_system-Enable trace at level 12 for session 1234 with serial#56789execute dbms_system.set_ev(1234,56789,10046,12,);-To turn off the tracing:execute dbms_system.set_ev(1234,56789,10046,0,);User_background_dump找到trc文件,50,Oracle Corporation,使用topas/top,top-12:55:06 up 18 days,21:41,2 users,load average:9.09,6.58,3.27,Tasks:,88 total,12 running,76 sleeping,0 stopped,0 zombie,Cpu(s):32.5%us,4.7%sy,0.0%ni,62.6%id,0.1%wa,0.0%hi,0.0%si,Mem:Swap:,775780k total,1534196k total,151216k used,22548k used,624564k free,1511648k free,58588k buffers37156k cached,PR,NI,VIRT,RES,SHR S%CPU%MEM,TIME+,COMMAND,PID USER,3441 oracle3440 oracle,1616,00,22922204,296300,240 R 18.3240 R 12.9,0.00.0,2:25.78 eatcpu2:39.98 eatcpu,3442 root3439 root5319 root1 root2 root,1717161634,000019,21961996355217480,3002968405360,4.63.80.80.00.0,0.00.00.10.10.0,240 R240 R660 R476 S0 S,1:02.55 eatcpu0:56.31 eatcpu0:00.02 top0:01.00 init0:05.62 ksoftirqd/0,3 root4 root5 root,5-105-105-10,000,0 S0 S0 S,0.00.00.0,0.00.00.0,000,0:00.21 events/00:00.01 khelper0:00.00 kblockd/0,Oracle Corporation,10046 Oradebug,使用top或topas找到最高CPU的操作系统进程号使用SQL*Plus以sysdba连接数据库SQLalter system set timed_statistics=true;SQLoradebug setospid 2269310;SQLOradebug unlimit;SQLOradebug event 10046 trace name context,forever,level 12;SQLOradebug event 10046 trace name context off;SQLoradebug TRACEFILE_NAME,52,Oracle Corporation,使用Tkprof 格式化10046跟踪文件 Tkprof$HOME/bdump/file_name.trc output.txtsys=no explain=user/pwd sort=fchcpu,53,Oracle Corporation,54,Oracle Corporation,55,

    注意事项

    本文(Oracle原厂数据库规范.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开