当前位置: 首页 > news >正文

临沧市网站建设_网站建设公司_Python_seo优化

广州市番禺区住房和建设局网站,html 创意网站,网店美工是什么,高级seo课程很多的时侯#xff0c;做OracleDBA的我们#xff0c;当应用管理员向我们通告现在应用很慢、数据库很慢的时侯#xff0c;我们到数据库时做几个示例的Select也发现同样的问题时#xff0c;有些时侯我们会无从下手#xff0c;因为我们认为数据库的各种命种率都是满足Oracle文…很多的时侯做OracleDBA的我们当应用管理员向我们通告现在应用很慢、数据库很慢的时侯我们到数据库时做几个示例的Select也发现同样的问题时有些时侯我们会无从下手因为我们认为数据库的各种命种率都是满足Oracle文档的建议。实际上如今的优化己经向优化等待(waits)转型了实际中性能优化最根本的出现点也都集中在IO这是影响性能最主要的方面由系统中的等待去发现Oracle库中的不足、操作系统某些资源利用的不合理是一个比较好的办法下面把我的一点实践经验与大家分享一下本文测重于Unix环境。 一、通过操作系统的一些工具检查系统的状态比如CPU、内存、交换、磁盘的利用率根据经验或与系统正常时的状态相比对有时系统表面上看起来看空闲这也可能不是一个正常的状态因为cpu可能正等待IO的完成。除此之外我们还应观注那些占用系统资源(cpu、内存)的进程。 1、如何检查操作系统是否存在IO的问题使用的工具有sar,这是一个比较通用的工具。 Rp1#Sar -u 2 10 即每隔2秒检察一次共执行20次当然这些都由你决定了。 示例返回 HP-UX hpn2 B.11.00 U 9000/800 08/05/03 18:26:32 %usr %sys %wio %idle 18:26:34 80 9 12 0 18:26:36 78 11 11 0 18:26:38 78 9 13 1 18:26:40 81 10 9 1 18:26:42 75 10 14 0 18:26:44 76 8 15 0 18:26:46 80 9 10 1 18:26:48 78 11 11 0 18:26:50 79 10 10 0 18:26:52 81 10 9 0 Average 79 10 11 0 其中的%usr指的是用户进程使用的cpu资源的百分比%sys指的是系统资源使用cpu资源的百分比%wio指的是等待io完成的百分比这是值得我们观注的一项%idle即空闲的百分比。如果wio列的值很大如在35%以上说明你的系统的IO存在瓶颈你的CPU花费了很大的时间去等待IO的完成。Idle很小说明系统CPU很忙。像我的这个示例可以看到wio平均值为11说明io没什么特别的问题而我的idle值为零说明我的cpu已经满负荷运行了。 当你的系统存在IO的问题可以从以下几个方面解决 -联系相应的操作系统的技术支持对这方面进行优化比如hp-ux在划定卷组时的条带化等方面。 -查找Oracle中不合理的sql语句对其进行优化 -对Oracle中访问量频繁的表除合理建索引外再就是把这些表分表空间存放以免访问上产生热点再有就是对表合理分区。 2、关注一下内存。 常用的工具便是vmstat对于hp-unix来说可以用glance,Aix来说可以用topas,当你发现vmstat中pi列非零memory中的free列的值很小glance,topas中内存的利用率多于80%时这时说明你的内存方面应该调节一下了方法大体有以下几项。 -划给Oracle使用的内存不要超过系统内存的1/2,一般保在系统内存的40%为益。 -为系统增加内存 -如果你的连接特别多可以使用MTS的方式 -打全补丁防止内存漏洞。 3、如何找到点用系用资源特别大的Oracle的session及其执行的语句。 Hp-unix可以用glance,top IBM AIX可以用topas 些外可以使用ps的命令。 通过这些程序我们可以找到点用系统资源特别大的这些进程的进程号我们就可以通过以下的sql语句发现这个pid正在执行哪个sql这个sql最好在pl/sql developer,toad等软件中执行, 把中的spid换成你的spid就可以了。 SELECT a.username, a.machine, a.program, a.sid, a.serial#, a.status, c.piece, c.sql_text FROM v$session a, v$process b, v$sqltext c WHERE b.spidspid  AND b.addra.paddr AND a.sql_addressc.address() ORDER BY c.piece 我们就可以把得到的这个sql分析一下看一下它的执行计划是否走索引对其优化避免全表扫描以减少IO等待从而加快语句的执行速度。 提示我在做优化sql时经常碰到使用in的语句这时我们一定要用exists把它给换掉因为Oracle在处理In时是按Or的方式做的即使使用了索引也会很慢。 比如 SELECT col1,col2,col3 FROM table1 a  WHERE a.col1 not in (SELECT col1 FROM table2) 可以换成 SELECT col1,col2,col3 FROM table1 a  WHERE not exists (SELECT x FROM table2 b WHERE a.col1b.col1) 4、另一个有用的脚本查找前十条性能差的sql. SELECT * FROM  ( SELECT PARSING_USER_ID EXECUTIONS, SORTS, COMMAND_TYPE, DISK_READS, sql_text FROM v$sqlarea ORDER BY disk_reads DESC  )  WHERE ROWNUM10 ; 二、迅速发现Oracle Server的性能问题的成因我们可以求助于v$session_wait这个视图看系统的这些session在等什么使用了多少的IO。以下是我提供的参考脚本 脚本说明查看占io较大的正在运行的session SELECT se.sid, se.serial#, pr.SPID, se.username, se.status, se.terminal, se.program, se.MODULE, se.sql_address, st.event, st.p1text, si.physical_reads, si.block_changes  FROM v$session se, v$session_wait st, v$sess_io si, v$process pr WHERE st.sidse.sid  AND st.sidsi.sid AND se.PADDRpr.ADDR AND se.sid6 AND st.wait_time0  AND st.event NOT LIKE %SQL% ORDER BY physical_reads DESC 对检索出的结果的几点说明 1、我是按每个正在等待的session已经发生的物理读排的序因为它与实际的IO相关。 2、你可以看一下这些等待的进程都在忙什么语句是否合理 Select sql_address from v$session where sidsid; Select * from v$sqltext where addresssql_address; 执行以上两个语句便可以得到这个session的语句。 你也以用 alter system kill session sid,serial#; 把这个session杀掉。 3、应观注一下event这列这是我们调优的关键一列下面对常出现的event做以简要的说明 a、buffer busy waitsfree buffer waits这两个参数所标识是dbwr是否够用的问题与IO很大相关的当v$session_wait中的free buffer wait的条目很小或没有的时侯说明你的系统的dbwr进程决对够用不用调整free buffer wait的条目很多你的系统感觉起来一定很慢这时说明你的dbwr已经不够用了它产生的wio已经成为你的数据库性能的瓶颈这时的解决办法如下 a.1增加写进程同时要调整db_block_lru_latches参数 示例修改或添加如下两个参数 db_writer_processes4 db_block_lru_latches8 a.2开异步IOIBM这方面简单得多hp则麻烦一些可以与Hp工程师联系。 b、db file sequential read指的是顺序读即全表扫描这也是我们应该尽量减少的部分解决方法就是使用索引、sql调优同时可以增大db_file_multiblock_read_count这个参数。 c、db file scattered read,这个参数指的是通过索引来读取同样可以通过增加db_file_multiblock_read_count这个参数来提高性能。 d、latch free,与栓相关的了需要专门调节。 e、其他参数可以不特别观注。
http://www.ihoyoo.com/news/132535.html

相关文章:

  • psd设计网站模板互联网销售公司
  • 濮阳网站制作广西桂林农业学校
  • 个人网站建设方案书怎么写搜狗网站录入
  • 简约网站深圳福田华丰大厦网站建设
  • 网站制作属于什么行业番禺人才招聘网
  • 网站网页制作及优化怎么做卖花的网站
  • 地税局内网网站建设做网站项目实例
  • 电子商务网站建设课件婚介网站建设的策划
  • 产品设计公司网站今天重大新闻100字
  • 湖南智能网站建设公司十堰网站推广
  • 浙江大学陈越做的刷题网站网站开发工具 哪个好
  • 中小企业网站seo做运营常用的网站
  • 自贡做响应式网站开发公司网站主机测速
  • 网站开发网站源码网站建设 自学
  • 爱做奈官方网站最新消息新闻头条
  • 30多了学网站建设晚吗wordpress略缩图alt
  • 采集网站后台数据云县网站建设
  • 如何做网站超链接百度推广怎么注册账号
  • 怎么优化网站关键词排名wordpress主题汉化版免费下载
  • 苏州建设营销网站aso优化贴吧
  • 网站维护目标短视频营销国内外研究现状
  • 帮企业建网站步骤免费的短视频app大全安卓
  • 营销型网站建设市场深圳团购网站设计
  • 网站联系方式设计网站快速排名是怎么做的
  • 青岛企业网站建站模板设计网页时有哪些配色方法
  • 怎么建网站 手机版建造师在建设部网站何时更新
  • 盘锦做网站哪家好温州做网站哪里好
  • 徐州网站优化推广网站首页 动画案例
  • 怎么创建网站?网站建设主要工作流程
  • 义乌建设局网站国家企业网官网查询