{"id":2592,"date":"2018-02-02T12:00:18","date_gmt":"2018-02-02T03:00:18","guid":{"rendered":"http:\/\/haisins.epac.to\/wordpress\/?p=2592"},"modified":"2018-02-02T17:28:54","modified_gmt":"2018-02-02T08:28:54","slug":"statspack-%ec%9d%84-%ec%9d%b4%ec%9a%a9%ed%95%9c-%ec%98%a4%eb%9d%bc%ed%81%b4-%eb%8d%b0%ec%9d%b4%ed%83%80%eb%b2%a0%ec%9d%b4%ec%8a%a4-%ed%8a%b8%eb%a0%8c%eb%93%9c-%eb%b6%84%ec%84%9d","status":"publish","type":"post","link":"https:\/\/haisins.synology.me\/wordpress\/?p=2592","title":{"rendered":"STATSPACK \uc744 \uc774\uc6a9\ud55c \uc624\ub77c\ud074 DB \uc131\ub2a5 \ud2b8\ub79c\ub4dc \ubd84\uc11d"},"content":{"rendered":"<p>\ubaa8\ub4e0 \uc624\ub77c\ud074 \ub370\uc774\ud0c0\ubca0\uc774\uc2a4\ub97c \uc815\ubc00\ud558\uac8c \ud29c\ub2dd\ud558\uae30 \uc704\ud574\uc11c\ub294 \ud788\uc2a4\ud1a0\ub9ac\uceec \ub370\uc774\ud0c0 \uc218\uc9d1 \uba54\ucee4\ub2c8\uc998\uc774 \ud544\uc694\ud558\uba70, \ub610 \ubcc0\uacbd\uc0ac\ud56d\ub4e4\uc774 \ub370\uc774\ud0c0\ubca0\uc774\uc2a4 \uc131\ub2a5\uc5d0 \ubbf8\uce58\ub294 \uc601\ud5a5\uc744 \ubcf4\uc5ec\uc8fc\ub294 \ub9ac\ud3ec\ud2b8\ub85c \uc774 \ub370\uc774\ud0c0\ub97c \ubc88\uc5ed\ud558\ub294 \uae30\ub2a5\uc774 \ud544\uc694\ud558\ub2e4. \uc624\ub77c\ud074\uc758 \uc0c8\ub85c\uc6b4 STATSPACK \uc720\ud2f8\ub9ac\ud2f0\ub294 STATSPACK \ud14c\uc774\ube14\uc5d0 \ub300\ud55c \ud2b8\ub80c\ub4dc \ubd84\uc11d \ub9ac\ud3ec\ud2b8\ub97c \uc791\uc131\ud558\ub294 \uae30\ub2a5\uacfc \ud568\uaed8 \ud544\uc694\ud55c \ub370\uc774\ud0c0\ub97c \uc218\uc9d1\ud560 \uc218 \uc788\ub294 \uae30\ub2a5\uc744 \uc81c\uacf5\ud55c\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>\ud1a0\ud0c8 \uc2dc\uacc4\uc5f4 \ub9ac\ud3ec\ud2b8<\/strong><br \/>\n\uc774\ub4e4 \ub9ac\ud3ec\ud2b8\ub4e4\uc740 \uc9c0\uc815\ub41c \uae30\uac04 \uc911\uc5d0 \ubc1c\uc0dd\ud55c \ub370\uc774\ud0c0\ubca0\uc774\uc2a4\uc758 \uc804\ubc18\uc801\uc778 \ud2b8\ub80c\ub4dc\ub97c \ubcf4\uc5ec\uc8fc\uace0 \uc788\ub2e4. MS-Excel\ub85c \uc791\uc131\ud55c |\uadf8\ub9bc1|\uc758 \uc608\uc81c\ub294 \ub370\uc774\ud0c0\ubca0\uc774\uc2a4 \uc99d\uac00\uc728\uc744 \ub098\ud0c0\ub0b4\uae30 \uc704\ud574 \ucd94\uac00\ud55c \uc120\ud615 \ud68c\uadc0\uc120\uc73c\ub85c \ud45c\uc2dc\ud55c, \ub370\uc774\ud0c0\ubca0\uc774\uc2a4\uc758 \ucd1d \ubc14\uc774\ud2b8 \uc218\uc5d0 \ub300\ud55c \ub9ac\ud3ec\ud2b8\uc774\ub2e4.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image.png\"><img loading=\"lazy\" style=\"margin: 0px 0px 18px; display: inline; background-image: none;\" title=\"image\" src=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image_thumb.png?resize=457%2C270\" alt=\"image\" width=\"457\" height=\"270\" border=\"0\" data-recalc-dims=\"1\" \/><\/a><br \/>\n[\uadf8\ub9bc1] \ub370\uc774\ud0c0\ubca0\uc774\uc2a4 \ud06c\uae30\uc5d0 \ub300\ud55c \uc2dc\uacc4\uc5f4 \ub9ac\ud3ec\ud2b8<\/p>\n<p>&nbsp;<\/p>\n<p><strong>\uc77c\uac04 \ub9ac\ud3ec\ud2b8<\/strong><br \/>\n\uc77c\uac04 \ub9ac\ud3ec\ud2b8\ub294 \uc2dc\uac04\ubcc4\ub85c \ubb36\uc740 \uc2dc\uac04\ubcc4 \ud2b8\ub80c\ub4dc\ub97c \ub098\ud0c0\ub0b4\ub294 \uac83\uc774\ub2e4. |\uadf8\ub9bc 2|\uc758 \uc608\uc81c\uc5d0\uc11c\ub294 \uadf8 \ub0a0\uc758 \uc2dc\uac04\ubcc4\ub85c \ud3c9\uade0\uc744 \ub0b8 \ud3c9\uade0 \uc77d\uae30 I\/O\uc640 \uc4f0\uae30 I\/O\uc5d0 \ub300\ud55c \uc0ac\uc778\uc744 \ubcfc \uc218\uc788\ub2e4. \uc774 \uc608\uc81c\uc5d0\uc11c\ub294 \uc774 \ub370\uc774\ud0c0\ubca0\uc774\uc2a4\uac00 \uc624\uc804 7\uc2dc\uc5d0 \ucd5c\uace0\uc810\uc758 \uc77d\uae30 I\/O \uc0ac\uc778\uc744 \uac16\uace0 \uc788\uc73c\uba70, \ub2e4\uc2dc \uc624\ud6c4 8\uc2dc\uc5d0 \ucd5c\uace0\uc810\uc5d0 \ub3c4\ub2ec\ud588\ub2e4\ub294 \uc0ac\uc2e4\uc744 \ud655\uc778\ud560 \uc218 \uc788\ub2e4. \ub610\ud55c \uc774 \ub370\uc774\ud0c0\ubca0\uc774\uc2a4\ub294 \uc0c1\ub300\uc801\uc73c\ub85c \uc77c\uc815\ud55c \uc4f0\uae30 \uc0ac\uc778\uc744 \uac00\uc9c0\uace0 \uc788\ub2e4\ub294 \uc0ac\uc2e4\ub3c4 \uc54c \uc218 \uc788\ub2e4.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image-1.png\"><img loading=\"lazy\" style=\"margin: 0px 0px 18px; display: inline; background-image: none;\" title=\"image\" src=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image_thumb-1.png?resize=466%2C279\" alt=\"image\" width=\"466\" height=\"279\" border=\"0\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p>[\uadf8\ub9bc2] \uc2dc\uac04\ub300\ubcc4 \ud3c9\uade0 I\/O \ud50c\ub86f<\/p>\n<p><strong><br \/>\n\uc8fc\uac04 \ub9ac\ud3ec\ud2b8<\/strong><\/p>\n<p>|\uadf8\ub9bc 3|\uc5d0\uc11c\ub294 \uc694\uc77c\ubcc4\ub85c \ud3c9\uade0\uc744 \ub0b8 \ub514\uc2a4\ud06c \uc815\ub82c\uc744 \ubcfc \uc218 \uc788\ub2e4. \uc774 \uadf8\ub9bc\uc5d0\uc11c\ub294 \ub514\uc2a4\ud06c \uc815\ub82c\uc774 \uc6d4\uc694\uc77c\uc5d0 \ub192\uace0, \ud654\uc694\uc77c\uc5d0 \ucd5c\uace0\uc810\uc5d0 \ub3c4\ub2ec\ud558\uba70, \uc218\uc694\uc77c\uc5d0 \ub192\uc558\ub2e4\uac00 \ubaa9\uc694\uc77c\uacfc \uae08\uc694\uc77c\uc5d0\ub294 \ub5a8\uc5b4\uc9c0\ub294 \ud655\uc2e4\ud55c \uc0ac\uc778\uc744 \ubcfc \uc218 \uc788\ub2e4. \uc774 \ub9ac\ud3ec\ud2b8\ub294 DBA\uc5d0\uac8c \uc7a0\uc7ac\uc801\uc73c\ub85c TEMP \ud14c\uc774\ube14\uc2a4\ud398\uc774\uc2a4\uc5d0 \ub192\uc740 \uc601\ud5a5\uc744 \ubbf8\uce60 \uc218 \uc788\ub294 \uc2dc\uac04\ub300\ub97c \uc2e0\uc18d\ud558\uac8c \uc54c\ub824 \uc904 \uac83\uc774\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image-2.png\"><img loading=\"lazy\" style=\"margin: 0px 0px 18px; display: inline; background-image: none;\" title=\"image\" src=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image_thumb-2.png?resize=469%2C315\" alt=\"image\" width=\"469\" height=\"315\" border=\"0\" data-recalc-dims=\"1\" \/><\/a><br \/>\n[\uadf8\ub9bc3]&#8217;\uc694\uc77c\ubcc4&#8217; \ud3c9\uade0 STATSPACK Query<\/p>\n<p>&nbsp;<\/p>\n<p><strong>\ud2b8\ub80c\ub4dc \ubd84\uc11d\uc5d0 \uac00\uc7a5 \uc801\ud569\ud55c STATSPACK \ub370\uc774\ud0c0<\/strong><br \/>\nSTATSPACK\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \ud1b5\uacc4\uac00 \uc218\ubc31 \uac1c\uc774\uae30 \ub54c\ubb38\uc5d0 \uacfc\uc5f0 \uc5b4\ub5a4 \uba54\ud2b8\ub9ad\uc2a4\uac00 \uac00\uc7a5 \uc720\uc6a9\ud55c\uac00\ub77c\ub294 \uc758\ubb38\uc774 \uc81c\uae30\ub41c\ub2e4. \ud544\uc790\ub294 \ub2e4\uc74c\uacfc \uac19\uc740 \uba54\ud2b8\ub9ad\uc2a4\ub97c \uc120\uc815\ud588\ub2e4.<\/p>\n<p>* \ub370\uc774\ud0c0 \ubc84\ud37c \uc801\uc911\ub960<br \/>\n\uc774\ub294 init.ora \ud30c\uc77c\uc758 db_block_buffers \ud328\ub7ec\ubbf8\ud130\ub85c \uc815\uc758\ub41c \ub300\ub85c \uc624\ub77c\ud074 \ub370\uc774\ud0c0 \ubc84\ud37c\uc758 \ud6a8\uc728\uc131\uc744 \uce21\uc815\ud55c\ub2e4.<\/p>\n<p>\u2022 \uc815\ub82c(Sort)<br \/>\n\ub370\uc774\ud0c0\ubca0\uc774\uc2a4\uc5d0\uc11c\uc758 \uc815\ub82c \uaddc\ubaa8\ub97c \ubaa8\ub2c8\ud130\ub9c1\ud558\ub294 \uac83\uc774 \uc911\uc694\ud558\uba70 \ud2b9\ud788 TEMP \ud14c\uc774\ube14\uc2a4\ud398\uc774\uc2a4(\uc815\ub82c(\ub514\uc2a4\ud06c))\uc5d0\uc11c \uc218\ud589\ub41c \uc815\ub82c \uaddc\ubaa8\ub97c \ub354\uc6b1 \ucca0\uc800\ud558\uac8c \ubaa8\ub2c8\ud130\ub9c1\ud574\uc57c \ud55c\ub2e4.<\/p>\n<p>\u2022 \ubb3c\ub9ac\uc801 \ub514\uc2a4\ud06c \uc77d\uae30<br \/>\nI\/O \uac10\ucd95\uc758 \uc77c\ucc28\uc801 \ubaa9\uc801\uc740 \uc624\ub77c\ud074 \ud29c\ub2dd\uc774\uae30 \ub54c\ubb38\uc5d0 \uc2dc\uac04\ubcc4 \ub514\uc2a4\ud06c \uc77d\uae30\ub97c \ubcf4\uc5ec\uc8fc\ub294<br \/>\n\ud2b8\ub80c\ub4dc \ub9ac\ud3ec\ud2b8\ub294 \uc7ac\uc21c\ucc28(Re-sequence) \ub85c\uc6b0\ub97c \uc778\ub371\uc2a4 \uc21c\uc11c\ub85c \ud14c\uc774\ube14\uc744 \uc7ac\uad6c\uc131\ud558\ub294\ub370 \ub530\ub978 \uc601\ud5a5\uc744 \uce21\uc815\ud558\ub294 \ub370 \ub9e4\uc6b0 \uc720\uc6a9\ud560 \uc218 \uc788\ub2e4.<\/p>\n<p>\u2022 \ubb3c\ub9ac\uc801 \ub514\uc2a4\ud06c \uc4f0\uae30<br \/>\n\ub514\uc2a4\ud06c \uc4f0\uae30 \uaddc\ubaa8\ub294 \uc624\ub77c\ud074 \ub370\uc774\ud0c0\ubca0\uc774\uc2a4\uc758 \uc804\uccb4 \ucc98\ub9ac \uc131\ub2a5\uc5d0 \uc0c1\ub2f9\ud55c \uc601\ud5a5\uc744 \ubbf8\uce58\uac8c\ub418\uba70, \ub864\ubc31 \uc138\uadf8\uba3c\ud2b8 \ud65c\ub3d9\uc774 \uc911\uc694\ud55c \uacbd\uc6b0 \ud2b9\ud788 \uc911\uc694\ud558\ub2e4.<\/p>\n<p>\u2022 I\/O \ub300\uae30<br \/>\n\uc774\ub294 I\/O \uacbd\ud569(Contention)\uc744 \ud655\uc778\ud558\uace0 \uc218\uc815\ud558\ub294 \ub370 \uc0ac\uc6a9\ub420 \uc218 \uc788\ub294 \ub9e4\uc6b0 \uc911\uc694\ud55c\uba54\ud2b8\ub9ad\uc2a4\uc774\ub2e4. \ub192\uc740 I\/O \ub300\uae30 \uc0c1\ud0dc\ub294 2\uac1c \uc774\uc0c1\uc758 \ub370\uc774\ud0c0 \ud30c\uc77c\uc5d0 \ub3d9\uc2dc\uc5d0 \uc561\uc138\uc2a4\ub418\ub294\uacbd\uc6b0\uc5d0 \ubc1c\uc0dd\ud558\uba70, DASD\uc758 \uc77d\uae30-\uc4f0\uae30 \ud5e4\ub4dc \uc774\ub3d9\uc740 \ub514\uc2a4\ud06c\uac00 I\/O \uc885\ub8cc\ub97c \ub300\uae30\uc2dc\ud0a4\ub294 \uc6d0\uc778\uc774 \ub418\uae30\ub3c4 \ud55c\ub2e4.<\/p>\n<p>\u2022 \ubc84\ud37c \ube44\uc9c0 \uc6e8\uc774\ud2b8(Buffer Busy Waits)<br \/>\n\ubc84\ud37c \ubc84\uc2a4\ud2b8(Bust) \ub300\uae30\ub294 \uc624\ub77c\ud074 \ub370\uc774\ud0c0 \ube14\ub85d\uc774 \ubc84\ud37c\uc5d0 \uc0c1\uc8fc\ud558\uc9c0\ub9cc \ud544\uc694\ud55c \ud504\ub85c\uadf8\ub7a8\uc774 \ub370\uc774\ud0c0 \ube14\ub85d\uc744 \uc77d\uc5b4\ub4e4\uc774\uae30 \uc704\ud574 \ub300\uae30\ud574\uc57c\ub9cc \ud558\ub294 \uacbd\uc6b0 \uc77c\uc5b4\ub09c\ub2e4. \ubc84\ud37c \ube44\uc9c0 \uc6e8\uc774\ud2b8\ub294 \uc77c\ubc18\uc801\uc73c\ub85c 1\uac1c \ud14c\uc774\ube14\uc774 \ub3d9\uc2dc\uc5d0\u2018UPDATE\u2019\ud639\uc740\u2018INSERT DML\u2019\uc744 \uac16\uace0 \uc788\uc73c\uba70 \ub2e8\uc9c0 1 \uac1c\uc758 \ud504\ub9ac\ub9ac\uc2a4\ud2b8(Freelist)\ub9cc\uc774 \ud14c\uc774\ube14\uc6a9\uc73c\ub85c \uc815\uc758\ub3fc \uc788\ub294 \uacbd\uc6b0 \uc77c\uc5b4\ub0a0 \uc218 \uc788\ub2e4.<\/p>\n<p>\u2022 \ub9ac\ub450 \ub85c\uadf8 \uacf5\uac04 \uc694\uad6c(Redo Log Space Request)<br \/>\n\ub9ac\ub450 \ub85c\uadf8 \uacf5\uac04 \uc694\uad6c\ub294 \ub85c\uadf8 \ubc84\ud37c\uac00 \ub9ac\ub450 \ub85c\uadf8 \ud65c\ub3d9 \ubcfc\ub968\uc744 \uc218\uc6a9\ud558\uae30\uc5d0\ub294 \ub108\ubb34 \uc791\uc744<br \/>\n\ub54c \ubc1c\uc0dd\ud55c\ub2e4.<\/p>\n<p>\u2022 \ub798\uce58 \ud540 \uc801\uc911\ub960(Latch Pin Hit Ratio)<br \/>\n\ub370\uc774\ud0c0\ubca0\uc774\uc2a4 \uc778\uc2a4\ud134\uc2a4\uc758 \ud540 \uc801\uc911\ub960\uc740 init.ora \ud30c\uc77c\uc758 shared_pool_size\uc758 \ud06c\uae30\uc870\uc815\uc5d0 \ub300\ud55c \uc88b\uc740 \uc544\uc774\ub514\uc5b4\ub97c \uc81c\uacf5\ud55c\ub2e4.<\/p>\n<p>\u2022 \ud14c\uc774\ube14 \ud398\uce58 \ucee8\ud2f0\ub274\ub4dc \ub85c\uc6b0(Table Fetch Continued Row)<br \/>\n\uc774 \uba54\ud2b8\ub9ad\uc2a4\ub294 \ub370\uc774\ud0c0\ubca0\uc774\uc2a4\uc640 \uc5f0\uacb0\ub41c \ub85c\uc6b0\ub4e4\uc5d0 \ub300\ud55c \uc804\ubc18\uc801\uc778 \uc9c0\uc2dc\ub97c \uc81c\uacf5\ud55c\ub2e4. \uc5f0\uacb0\uc774 \uacfc\ub3c4\ud55c \uacbd\uc6b0, \uc9c8\uc758 \uc11c\ube44\uc2a4\uc5d0 \ucd94\uac00 I\/O\uac00 \uc694\uccad\ub418\uba70 DBA\ub294 \ud14c\uc774\ube14\uc758 PCTFREE\ub97c \ub298\ub9ac\uace0 \ud14c\uc774\ube14\uc774 \uccb4\uc778\ub4e4\uc744 \ud574\uc81c\ud558\ub3c4\ub85d \uc7ac\uad6c\uc131\ud574\uc57c \ud55c\ub2e4.<br \/>\nSTATSPACK \ud14c\uc774\ube14\uc758 \uad6c\uc870\ub97c \uc774\ud574\ud558\uace0 \uc57d\uac04\uc758 \uc5f0\uc2b5\uc744 \uac70\uce58\uba74, \uc0ac\uc6a9\uc790 \uc815\uc758\ud615 \ub9ac\ud3ec\ud2b8\ub97c \uc190\uc27d\uac8c \uc791\uc131\ud560 \uc218 \uc788\ub2e4. \uc77c\ub2e8 \uc131\ub2a5 \ub370\uc774\ud0c0\uac00 \ud3ec\ucc29\ub418\uba74, STATSPACK \ub9ac\ud3ec\ud2b8\ub97c \ud14c\uc774\ube14\uc5d0 \ub300\ud574 \uc2e4\ud589\uc2dc\ud0ac \uc218 \uc788\ub2e4. \ub610\ud55c \uc120\ud615 \ud68c\uadc0\uc640 \uc608\uce21 \ubaa8\ub378\uc744 \uacb0\ud569\ud558\uace0 \uc788\uae30 \ub54c\ubb38\uc5d0 DBA\ub294 \uc774\uc804 \uc18c\ubaa8\uc728\uc744 \ud1a0\ub300\ub85c \ub514\uc2a4\ud06c \uba54\ubaa8\ub9ac\ub97c \ub354 \uc8fc\ubb38\ud574\uc57c \ud558\ub294 \uc2dc\uae30\ub97c \uc608\uce21\ud560 \uc218 \uc788\ub2e4.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>&lt; STATSPACK \ud14c\uc774\ube14\uc5d0\uc11c \uc131\ub2a5 \ud2b8\ub79c\ub4dc \ub370\uc774\ud0c0\u00a0 \ucd94\ucd9c \ucffc\ub9ac&gt;<\/strong><\/p>\n<pre class=\"lang:plsql decode:true \">alter session set nls_date_format = 'YYYY-MM-DD-HH24:MI:SS' ;\r\n\r\nprompt *******************************************************\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Purpose : DATABASE BUFFER CACHE\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Genarated : 2013\/12\/26 by haisins\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *******************************************************\r\nprompt\r\n\r\nspool DATABASE_BUFFER_CACHE.csv\r\nprompt SNAP_TIME,DB BLOCK GETS,CONSISTENT GETS,LOGICAL READS,PHYSICAL READS,BUFFER CACHE HIT RATIO,BUFFER BUSY WAITS,BUFFER BUSY WAIT RATIO\r\n\r\nSELECT snap_time ||','||\r\nMAX(DECODE(name, 'db block gets', change))||','||\r\nMAX(DECODE(name, 'consistent gets', change)) ||','||\r\n(MAX(DECODE(name, 'db block gets', change))+MAX(DECODE(name, 'consistent gets', change)))||','||\r\nMAX(DECODE(name, 'physical reads', change)) ||','||\r\nROUND((MAX(DECODE(name, 'db block gets', change)) + MAX(DECODE(name, 'consistent gets', change)) - MAX(DECODE(name, 'physical reads', change))) \/(MAX(DECODE(name, 'db block gets', change)) + MAX(DECODE(name, 'consistent gets', change))), 4) ||','||\r\nMAX(DECODE(name, 'buffer busy waits', change)) ||','||\r\nROUND(MAX(DECODE(name, 'buffer busy waits', change)) \/(MAX(DECODE(name, 'db block gets', change)) + MAX(DECODE(name, 'consistent gets', change))), 4)\r\nFROM (SELECT t.snap_time ,\r\ns.name ,\r\ns.value change\r\nFROM perfstat.stats$sysstat s , perfstat.stats$SNAPSHOT t\r\nWHERE s.snap_id = t.snap_id\r\nand name in ('db block gets' ,\r\n'consistent gets',\r\n'physical reads') )\r\nGROUP BY snap_time\r\norder by 1\r\n\/\r\nspool off\r\n\r\nprompt *******************************************************\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Purpose : DATABASE WAIT STAT\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Genarated : 2013\/12\/26 by haisins\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *******************************************************\r\nprompt\r\n\r\nspool WAIT_STAT.csv\r\nprompt SNAP_TIME,CLASS,WAIT_COUNT,TIME\r\n\r\nSELECT\u00a0\u00a0\u00a0 SNAP_TIME||','||CLASS||','||WAIT_COUNT||','||TIME\r\nFROM\u00a0\u00a0\u00a0 (select\u00a0\u00a0\u00a0 decode(row_number() over(partition by class order by snap_time),1,'TOTAL'\r\n,snap_time || ' ~ ' || lag(snap_time) over(partition by class order by snap_time)) snap_time\r\n,class\r\n,decode(row_number() over(partition by class order by snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||wait_count) over(partition by class),7) - wait_count\r\n,wait_count - lag(wait_count) over(partition by class order by snap_time)) wait_count\r\n,decode(row_number() over(partition by class order by snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||time) over(partition by class),7) - time\r\n,time - lag(time) over(partition by class order by snap_time)) time\r\nfrom\u00a0\u00a0\u00a0 perfstat.stats$waitstat s , perfstat.stats$SNAPSHOT t\r\nWHERE s.snap_id = t.snap_id\r\nand s.wait_count &lt;&gt; 0\r\n)\r\nORDER BY snap_time, wait_count DESC, upper(class)\r\n\/\r\nspool off\r\n\r\nprompt *******************************************************\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Purpose : Library Cache Miss Ratio\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Genarated : 2013\/12\/26 by haisins\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *******************************************************\r\nprompt\r\n\r\nspool Library_Cache_Miss_Ratio.csv\r\n\r\nprompt SNAP_TIME,Library_Cache_Hit_Ratio\r\n\r\nSELECT\u00a0\u00a0\u00a0 snap_time\r\n||','||ROUND(DECODE(gets,0,1,gethits \/ gets) * 100,2)\r\nFROM\u00a0\u00a0\u00a0 (SELECT\u00a0\u00a0\u00a0 DECODE(ROW_NUMBER() OVER(ORDER BY snap_time),1,'TOTAL'\r\n,snap_time || ' ~ ' || lag(snap_time) OVER(ORDER BY snap_time)) snap_time\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(gets)) OVER(),7)-SUM(gets)\r\n,SUM(gets) - lag(SUM(gets)) OVER(ORDER BY snap_time)) gets\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(gethits)) OVER(),7)-SUM(gethits)\r\n,SUM(gethits) - lag(SUM(gethits)) OVER(ORDER BY snap_time)) gethits\r\nFROM\u00a0\u00a0\u00a0 perfstat.stats$librarycache s, perfstat.stats$SNAPSHOT t\r\nWHERE s.snap_id = t.snap_id\r\nGROUP BY snap_time\r\n)\r\norder by 1;\r\n\r\nspool off\r\n\r\nprompt *******************************************************\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Purpose : Dictionary Cache Miss Ratio\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Genarated : 2013\/12\/26 by haisins\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *******************************************************\r\nprompt\r\n\r\nspool Dictionary_Cache_Miss_Ratio.csv\r\n\r\nprompt SNAP_TIME,Dictionary_Cache_Hit_Ratio\r\n\r\nSELECT\u00a0\u00a0\u00a0 snap_time\r\n||','||ROUND(DECODE(gets,0,1,1-(getmisses\/gets))*100,2)\r\nFROM\u00a0\u00a0\u00a0 (SELECT\u00a0\u00a0\u00a0 DECODE(ROW_NUMBER() OVER(ORDER BY snap_time),1,'TOTAL'\r\n,snap_time || ' ~ ' || lag(snap_time) OVER(ORDER BY snap_time)) snap_time\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(gets)) OVER(),7)-SUM(gets)\r\n,SUM(gets) - lag(SUM(gets)) OVER(ORDER BY snap_time)) gets\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(getmisses)) OVER(),7)-SUM(getmisses)\r\n,SUM(getmisses) - lag(SUM(getmisses)) OVER(ORDER BY snap_time)) getmisses\r\nFROM\u00a0\u00a0\u00a0 perfstat.stats$rowcache_summary s, perfstat.stats$SNAPSHOT t\r\nWHERE s.snap_id = t.snap_id\r\nGROUP BY snap_time\r\n)\r\norder by 1;\r\n\r\nspool off\r\n\r\nprompt *******************************************************\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Purpose : \uc11c\ubc84\ubcc4 I\/O\ub2f9 \ud3c9\uade0 \ube14\ub85d \uc77d\uae30\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Genarated : 2013\/12\/26 by haisins\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *******************************************************\r\nprompt\r\n\r\nspool Physical_Io_Reads_Average.csv\r\n\r\nprompt SNAP_TIME,Phys_Blks_Rd\/Phys_Reads\r\n\r\nSELECT\u00a0\u00a0\u00a0 snap_time\r\n||','||ROUND(phyblkrd\/phyrds,2)\r\nFROM\u00a0\u00a0\u00a0 (SELECT\u00a0\u00a0\u00a0 DECODE(ROW_NUMBER() OVER(ORDER BY snap_time),1,'TOTAL'\r\n,snap_time || ' ~ ' || lag(snap_time) OVER(ORDER BY snap_time)) snap_time\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(phyblkrd)) OVER(),7)-SUM(phyblkrd)\r\n,SUM(phyblkrd) - lag(SUM(phyblkrd)) OVER(ORDER BY snap_time)) phyblkrd\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(phyrds)) OVER(),7)-SUM(phyrds)\r\n,SUM(phyrds) - lag(SUM(phyrds)) OVER(ORDER BY snap_time)) phyrds\r\nFROM\u00a0\u00a0\u00a0 perfstat.stats$filestatxs s, perfstat.stats$SNAPSHOT t\r\nWHERE s.snap_id = t.snap_id\r\nGROUP BY snap_time\r\n)\r\norder by 1 ;\r\n\r\nspool off\r\n\r\nprompt *******************************************************\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Purpose : Tablespace\ubcc4 I\/O Operation\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Genarated : 2013\/12\/26 by haisins\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *******************************************************\r\nprompt\r\n\r\nspool TABLESPACE_IO_OPERATION.csv\r\n\r\nprompt SNAP_TIME,TABLESPACE,READS,BLKS_READ,READ_TIME,WRITES,BLKS_WRT,WRITE_TIME,WAIT_COUNT\r\n\r\nSELECT\u00a0\u00a0\u00a0 snap_time\r\n||','||tsname\r\n||','||phyrds\r\n||','||phyblkrd\r\n||','||readtim\r\n||','||phywrts\r\n||','||phyblkwrt\r\n||','||writetim\r\n||','||wait_count\r\nFROM\u00a0\u00a0\u00a0 (SELECT\u00a0\u00a0\u00a0 DECODE(ROW_NUMBER() OVER(PARTITION BY tsname ORDER BY tsname,snap_time),1,'TOTAL'\r\n,snap_time || ' - ' || lag(snap_time) OVER(PARTITION BY tsname ORDER BY snap_time)) snap_time\r\n,tsname\r\n,DECODE(ROW_NUMBER() OVER(PARTITION BY tsname ORDER BY tsname, snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(phyblkrd)) OVER(PARTITION BY tsname),7)-SUM(phyblkrd)\r\n,SUM(phyblkrd) - lag(SUM(phyblkrd)) OVER(ORDER BY tsname, snap_time)) phyblkrd\r\n,DECODE(ROW_NUMBER() OVER(PARTITION BY tsname ORDER BY tsname, snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(phyrds)) OVER(PARTITION BY tsname),7)-SUM(phyrds)\r\n,SUM(phyrds) - lag(SUM(phyrds)) OVER(ORDER BY tsname, snap_time)) phyrds\r\n,DECODE(ROW_NUMBER() OVER(PARTITION BY tsname ORDER BY tsname, snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(readtim)) OVER(PARTITION BY tsname),7)-SUM(readtim)\r\n,SUM(readtim) - lag(SUM(readtim)) OVER(ORDER BY tsname, snap_time)) readtim\r\n,DECODE(ROW_NUMBER() OVER(PARTITION BY tsname ORDER BY tsname, snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(phywrts)) OVER(PARTITION BY tsname),7)-SUM(phywrts)\r\n,SUM(phywrts) - lag(SUM(phywrts)) OVER(ORDER BY tsname, snap_time)) phywrts\r\n,DECODE(ROW_NUMBER() OVER(PARTITION BY tsname ORDER BY tsname, snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(phyblkwrt)) OVER(PARTITION BY tsname),7)-SUM(phyblkwrt)\r\n,SUM(phyblkwrt) - lag(SUM(phyblkwrt)) OVER(ORDER BY tsname, snap_time)) phyblkwrt\r\n,DECODE(ROW_NUMBER() OVER(PARTITION BY tsname ORDER BY tsname, snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(writetim)) OVER(PARTITION BY tsname),7)-SUM(writetim)\r\n,SUM(writetim) - lag(SUM(writetim)) OVER(ORDER BY tsname, snap_time)) writetim\r\n,DECODE(ROW_NUMBER() OVER(PARTITION BY tsname ORDER BY tsname, snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(wait_count)) OVER(PARTITION BY tsname),7)-SUM(wait_count)\r\n,SUM(wait_count) - lag(SUM(wait_count)) OVER(ORDER BY tsname, snap_time)) wait_count\r\nFROM\u00a0\u00a0\u00a0 perfstat.stats$filestatxs s, perfstat.stats$SNAPSHOT t\r\nWHERE s.snap_id = t.snap_id\r\nGROUP BY snap_time, tsname\r\n)\r\norder by 1 ;\r\n\r\nspool off\r\n\r\nprompt *******************************************************\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Purpose :DBMS LOAD\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Genarated : 2013\/12\/26 by haisins\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *******************************************************\r\nprompt\r\n\r\nspool DBMS_LOAD.csv\r\n\r\nprompt SNAP_TIME,DBWR_Checkpoints,LRU_Queue_Avg_Reuse_Buffer,LRU_Buffer_Scan_Avg,Summed_Dirty_Queue_Length,Free_Buffer_Scan_Ratio\r\n\r\nSELECT\u00a0\u00a0\u00a0 snap_time\r\n||','||DBWR_checkpoints\r\n||','||DBWR_free_buffers_found || '\/' || DBWR_make_free_requests\r\n||','||DBWR_buffers_scanned || '\/' || DBWR_lru_scans\r\n||','||summed_dirty_queue_length\r\n||','||free_buffer_inspected\u00a0 \/ free_buffer_requested\r\nFROM\u00a0\u00a0\u00a0 (SELECT\u00a0\u00a0\u00a0 DECODE(ROW_NUMBER() OVER(ORDER BY snap_time),1,'TOT'\r\n,snap_time || ' - ' || lag(snap_time) OVER(ORDER BY snap_time)) snap_time\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'DBWR checkpoints',value))) OVER(),7)\r\n-MIN(DECODE(name,'DBWR checkpoints',value))\r\n,MIN(DECODE(name,'DBWR checkpoints',value))\r\n-lag(MIN(DECODE(name,'DBWR checkpoints',value))) OVER(ORDER BY snap_time)) AS DBWR_Checkpoints\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'DBWR free buffers found',value))) OVER(),7)\r\n-MIN(DECODE(name,'DBWR free buffers found',value))\r\n,MIN(DECODE(name,'DBWR free buffers found',value))\r\n-lag(MIN(DECODE(name,'DBWR free buffers found',value))) OVER(ORDER BY snap_time)) AS DBWR_free_buffers_found\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'DBWR make free requests',value))) OVER(),7)\r\n-MIN(DECODE(name,'DBWR make free requests',value))\r\n,MIN(DECODE(name,'DBWR make free requests',value))\r\n-lag(MIN(DECODE(name,'DBWR make free requests',value))) OVER(ORDER BY snap_time)) AS DBWR_make_free_requests\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'DBWR buffers scanned',value))) OVER(),7)\r\n-MIN(DECODE(name,'DBWR buffers scanned',value))\r\n,MIN(DECODE(name,'DBWR buffers scanned',value))\r\n-lag(MIN(DECODE(name,'DBWR buffers scanned',value))) OVER(ORDER BY snap_time)) AS DBWR_buffers_scanned\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'DBWR lru scans',value))) OVER(),7)\r\n-MIN(DECODE(name,'DBWR lru scans',value))\r\n,MIN(DECODE(name,'DBWR lru scans',value))\r\n-lag(MIN(DECODE(name,'DBWR lru scans',value))) OVER(ORDER BY snap_time)) AS DBWR_lru_scans\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'summed dirty queue length',value))) OVER(),7)\r\n-MIN(DECODE(name,'summed dirty queue length',value))\r\n,MIN(DECODE(name,'summed dirty queue length',value))\r\n-lag(MIN(DECODE(name,'summed dirty queue length',value))) OVER(ORDER BY snap_time)) AS summed_dirty_queue_length\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'free buffer inspected',value))) OVER(),7)\r\n-MIN(DECODE(name,'free buffer inspected',value))\r\n,MIN(DECODE(name,'free buffer inspected',value))\r\n-lag(MIN(DECODE(name,'free buffer inspected',value))) OVER(ORDER BY snap_time)) AS free_buffer_inspected\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'free buffer requested',value))) OVER(),7)\r\n-MIN(DECODE(name,'free buffer requested',value))\r\n,MIN(DECODE(name,'free buffer requested',value))\r\n-lag(MIN(DECODE(name,'free buffer requested',value))) OVER(ORDER BY snap_time)) AS free_buffer_requested\r\nFROM\u00a0\u00a0\u00a0 perfstat.stats$sysstat s, perfstat.stats$SNAPSHOT t\r\nWHERE s.snap_id = t.snap_id\r\nAND\u00a0\u00a0\u00a0 name in ('DBWR checkpoints'\r\n,'DBWR free buffers found','DBWR make free requests'\r\n,'DBWR buffers scanned','DBWR lru scans'\r\n,'summed dirty queue length','write requests'\r\n,'free buffer inspected', 'free buffer requested'\r\n)\r\nGROUP BY snap_time\r\n)\r\norder by 1 ;\r\n\r\nspool off\r\n\r\nprompt *******************************************************\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Purpose :Redo Latch Hit Ratios\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Genarated : 2013\/12\/26 by haisins\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *******************************************************\r\nprompt\r\n\r\nspool Redo_Latch_Hit_Ratios.csv\r\n\r\nprompt snap_time,Redo_Latch_Hit_Ratios\r\n\r\nSELECT\u00a0\u00a0\u00a0 snap_time\r\n||','||ROUND(DECODE(gets,0,0,(gets-misses)\/gets),3)\r\nFROM\u00a0\u00a0\u00a0 (SELECT\u00a0\u00a0\u00a0 DECODE(ROW_NUMBER() OVER(ORDER BY snap_time),1,'TOTAL'\r\n,snap_time || ' ~ ' || lag(snap_time) OVER(ORDER BY snap_time)) snap_time\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(gets)) OVER(),7)-SUM(gets)\r\n,SUM(gets) - lag(SUM(gets)) OVER(ORDER BY snap_time)) gets\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||SUM(misses)) OVER(),7)-SUM(misses)\r\n,SUM(misses) - lag(SUM(misses)) OVER(ORDER BY snap_time)) misses\r\nFROM\u00a0\u00a0\u00a0 perfstat.stats$latch s, perfstat.stats$SNAPSHOT t\r\nWHERE s.snap_id = t.snap_id\r\nAND\u00a0\u00a0\u00a0 name\u00a0 LIKE '%redo%'\r\nGROUP BY snap_time\r\n)\r\norder by 1 ;\r\n\r\nspool off\r\n\r\nprompt *******************************************************\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Purpose : DBMS_PERPOMANCE\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Genarated : 2013\/12\/26 by haisins\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\r\nprompt *******************************************************\r\nprompt\r\n\r\nspool DBMS_PERPOMANCE_DETAIL.csv\r\n\r\nprompt snap_time,Log_Space_Request_Ratio,Log_Buffer_Retry_Ratio,Cluster_Key_Ratio,Sort_Overflow_Ratio,Index_Use_Ratio,Chained_Row_Ratio,Rows_Per_Sort_Ratio,Cursors_Opened_Per_Transaction,Recursive_to_User_Call_Ratio,Parse_Count_Ratio,Enqueue_timeouts,Enqueue_releases,Enqueue_requests,Nowait_enqueue_request\r\n\r\nSELECT\u00a0\u00a0\u00a0 snap_time\r\n||','||ROUND(DECODE(redo_entries,0,NULL,redo_log_space_requests \/ redo_entries),2)\r\n||','||ROUND(DECODE(redo_entries,0,NULL,redo_buffer_allocation_retries \/ redo_entries),2)\r\n||','||ROUND(DECODE(cluster_key_scans,0,NULL,cluster_key_scan_block_gets \/ cluster_key_scans),2)\r\n||','||ROUND(DECODE(sorts_disk+sorts_memory,0,NULL,sorts_disk \/ (sorts_disk+sorts_memory)),2)\r\n||','||ROUND(DECODE(table_fetch_by_rowid+table_scan_rows_gotten,0,NULL,table_fetch_by_rowid \/ table_fetch_by_rowid+table_scan_rows_gotten),2)\r\n||','||ROUND(DECODE(table_fetch_by_rowid+table_scan_rows_gotten,0,NULL,table_fetch_continued_row \/ table_fetch_by_rowid+table_scan_rows_gotten),2)\r\n||','||ROUND(DECODE(sorts_disk+sorts_memory,0,NULL,sorts_rows \/ (sorts_disk+sorts_memory)),2)\r\n||','||ROUND(DECODE(user_calls,0,NULL,opened_cursors_cumulative \/ user_calls),2)\r\n||','||ROUND(DECODE(user_calls,0,NULL,recursive_calls \/ user_calls),2)\r\n||','||ROUND(DECODE(user_calls,0,NULL,parse_count_total \/ user_calls),2)\r\n||','||enqueue_timeouts\r\n||','||enqueue_releases\r\n||','||enqueue_requests\r\n||','||(1 - ROUND(DECODE(enqueue_requests,0,NULL,enqueue_waits \/ enqueue_requests),2) )\r\nFROM\u00a0\u00a0\u00a0 (SELECT\u00a0\u00a0\u00a0 DECODE(ROW_NUMBER() OVER(ORDER BY snap_time),1,'TOTAL'\r\n,snap_time || ' ~ ' || lag(snap_time) OVER(ORDER BY snap_time)) snap_time\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'redo log space requests',value))) OVER(),7)\r\n-MIN(DECODE(name,'redo log space requests',value))\r\n,MIN(DECODE(name,'redo log space requests',value))\r\n-lag(MIN(DECODE(name,'redo log space requests',value))) OVER(ORDER BY snap_time)) AS redo_log_space_requests\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'redo entries',value))) OVER(),7)\r\n-MIN(DECODE(name,'redo entries',value))\r\n,MIN(DECODE(name,'redo entries',value))\r\n-lag(MIN(DECODE(name,'redo entries',value))) OVER(ORDER BY snap_time)) AS redo_entries\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'redo buffer allocation retries',value))) OVER(),7)\r\n-MIN(DECODE(name,'redo buffer allocation retries',value))\r\n,MIN(DECODE(name,'redo buffer allocation retries',value))\r\n-lag(MIN(DECODE(name,'redo buffer allocation retries',value))) OVER(ORDER BY snap_time)) AS redo_buffer_allocation_retries\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'cluster key scan block gets',value))) OVER(),7)\r\n-MIN(DECODE(name,'cluster key scan block gets',value))\r\n,MIN(DECODE(name,'cluster key scan block gets',value))\r\n-lag(MIN(DECODE(name,'cluster key scan block gets',value))) OVER(ORDER BY snap_time)) AS cluster_key_scan_block_gets\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'cluster key scans',value))) OVER(),7)\r\n-MIN(DECODE(name,'cluster key scans',value))\r\n,MIN(DECODE(name,'cluster key scans',value))\r\n-lag(MIN(DECODE(name,'cluster key scans',value))) OVER(ORDER BY snap_time)) AS cluster_key_scans\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'sorts (disk)',value))) OVER(),7)\r\n-MIN(DECODE(name,'sorts (disk)',value))\r\n,MIN(DECODE(name,'sorts (disk)',value))\r\n-lag(MIN(DECODE(name,'sorts (disk)',value))) OVER(ORDER BY snap_time)) AS sorts_disk\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'sorts (memory)',value))) OVER(),7)\r\n-MIN(DECODE(name,'sorts (memory)',value))\r\n,MIN(DECODE(name,'sorts (memory)',value))\r\n-lag(MIN(DECODE(name,'sorts (memory)',value))) OVER(ORDER BY snap_time)) AS sorts_memory\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)---\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'table fetch continued row',value))) OVER(),7)\r\n-MIN(DECODE(name,'table fetch continued row',value))\r\n,MIN(DECODE(name,'table fetch continued row',value))\r\n-lag(MIN(DECODE(name,'table fetch continued row',value))) OVER(ORDER BY snap_time)) AS table_fetch_continued_row\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'table fetch by rowid',value))) OVER(),7)\r\n-MIN(DECODE(name,'table fetch by rowid',value))\r\n,MIN(DECODE(name,'table fetch by rowid',value))\r\n-lag(MIN(DECODE(name,'table fetch by rowid',value))) OVER(ORDER BY snap_time)) AS table_fetch_by_rowid\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'table scan rows gotten',value))) OVER(),7)\r\n-MIN(DECODE(name,'table scan rows gotten',value))\r\n,MIN(DECODE(name,'table scan rows gotten',value))\r\n-lag(MIN(DECODE(name,'table scan rows gotten',value))) OVER(ORDER BY snap_time)) AS table_scan_rows_gotten\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'sorts (rows)',value))) OVER(),7)\r\n-MIN(DECODE(name,'sorts (rows)',value))\r\n,MIN(DECODE(name,'sorts (rows)',value))\r\n-lag(MIN(DECODE(name,'sorts (rows)',value))) OVER(ORDER BY snap_time)) AS sorts_rows\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'opened cursors cumulative',value))) OVER(),7)\r\n-MIN(DECODE(name,'opened cursors cumulative',value))\r\n,MIN(DECODE(name,'opened cursors cumulative',value))\r\n-lag(MIN(DECODE(name,'opened cursors cumulative',value))) OVER(ORDER BY snap_time)) AS opened_cursors_cumulative\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'user calls',value))) OVER(),7)\r\n-MIN(DECODE(name,'user calls',value))\r\n,MIN(DECODE(name,'user calls',value))\r\n-lag(MIN(DECODE(name,'user calls',value))) OVER(ORDER BY snap_time)) AS user_calls\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'recursive calls',value))) OVER(),7)\r\n-MIN(DECODE(name,'recursive calls',value))\r\n,MIN(DECODE(name,'recursive calls',value))\r\n-lag(MIN(DECODE(name,'recursive calls',value))) OVER(ORDER BY snap_time)) AS recursive_calls\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'parse count (total)',value))) OVER(),7)\r\n-MIN(DECODE(name,'parse count (total)',value))\r\n,MIN(DECODE(name,'parse count (total)',value))\r\n-lag(MIN(DECODE(name,'parse count (total)',value))) OVER(ORDER BY snap_time)) AS parse_count_total\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'enqueue timeouts',value))) OVER(),7)\r\n-MIN(DECODE(name,'enqueue timeouts',value))\r\n,MIN(DECODE(name,'enqueue timeouts',value))\r\n-lag(MIN(DECODE(name,'enqueue timeouts',value))) OVER(ORDER BY snap_time)) AS enqueue_timeouts\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'enqueue releases',value))) OVER(),7)\r\n-MIN(DECODE(name,'enqueue releases',value))\r\n,MIN(DECODE(name,'enqueue releases',value))\r\n-lag(MIN(DECODE(name,'enqueue releases',value))) OVER(ORDER BY snap_time)) AS enqueue_releases\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'enqueue requests',value))) OVER(),7)\r\n-MIN(DECODE(name,'enqueue requests',value))\r\n,MIN(DECODE(name,'enqueue requests',value))\r\n-lag(MIN(DECODE(name,'enqueue requests',value))) OVER(ORDER BY snap_time)) AS enqueue_requests\r\n,DECODE(ROW_NUMBER() OVER(ORDER BY snap_time)\r\n,1,substr(max(lpad(snap_time,6,'0')||MIN(DECODE(name,'enqueue waits',value))) OVER(),7)\r\n-MIN(DECODE(name,'enqueue waits',value))\r\n,MIN(DECODE(name,'enqueue waits',value))\r\n-lag(MIN(DECODE(name,'enqueue waits',value))) OVER(ORDER BY snap_time)) AS enqueue_waits\r\nFROM\u00a0\u00a0\u00a0 perfstat.stats$sysstat s, perfstat.stats$SNAPSHOT t\r\nWHERE s.snap_id = t.snap_id\r\nAND\u00a0\u00a0\u00a0 name in ('redo log space requests','redo entries'\r\n,'redo buffer allocation retries'\r\n,'cluster key scan block gets','cluster key scans'\r\n,'sorts (disk)', 'sorts (memory)'\r\n,'table fetch by rowid', 'table scan rows gotten'\r\n,'table fetch continued row', 'table fetch by rowid', 'table scan rows gotten'\r\n,'sorts (rows)', 'sorts (memory)', 'sorts (disk)'\r\n,'opened cursors cumulative', 'user calls'\r\n,'recursive calls', 'user calls'\r\n,'parse count (total)', 'user calls'\r\n,'enqueue timeouts'\r\n,'enqueue releases', 'enqueue requests', 'enqueue waits'\r\n)\r\nGROUP BY snap_time\r\n)\r\norder by 1;\r\n\r\nspool off<\/pre>\n<p>&nbsp;<\/p>\n<p><a href=\"http:\/\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image-3.png\">\u00a0<\/a><\/p>\n<p><strong><span style=\"font-family: '\ub9d1\uc740 \uace0\ub515'; font-size: large;\">&lt; STATSPACK \ub370\uc774\ud0c0\uc758 \uc2dc\uacc4\uc5f4 \ucd94\ucd9c \uacb0\uacfc\uc5d0\uc11c \ud2b8\ub79c\ub4dc \uc131\ub2a5 \ubd84\uc11d \uc608\uc2dc&gt;<\/span><\/strong><\/p>\n<p><strong><a href=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image-6.png\"><img loading=\"lazy\" style=\"margin: 0px 0px 18px; display: inline; background-image: none;\" title=\"image\" src=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image_thumb-6.png?resize=640%2C372\" alt=\"image\" width=\"640\" height=\"372\" border=\"0\" data-recalc-dims=\"1\" \/><\/a><\/strong><\/p>\n<p><a href=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image-7.png\"><img loading=\"lazy\" style=\"margin: 0px 0px 18px; display: inline; background-image: none;\" title=\"image\" src=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image_thumb-7.png?resize=640%2C356\" alt=\"image\" width=\"640\" height=\"356\" border=\"0\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image-8.png\"><img loading=\"lazy\" style=\"margin: 0px 0px 18px; display: inline; background-image: none;\" title=\"image\" src=\"https:\/\/i0.wp.com\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image_thumb-8.png?resize=640%2C364\" alt=\"image\" width=\"640\" height=\"364\" border=\"0\" data-recalc-dims=\"1\" \/><\/a><\/p>\n<p><strong>\u00a0<\/strong><\/p>\n<p><strong>\u00a0<\/strong><\/p>\n<p><strong>\u00a0<\/strong><\/p>\n<p><strong>\u00a0<\/strong><\/p>\n<p><a href=\"http:\/\/oracledba.zapto.org\/wordpress\/wp-content\/uploads\/2018\/02\/image-9.png\">\u00a0<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\ubaa8\ub4e0 \uc624\ub77c\ud074 \ub370\uc774\ud0c0\ubca0\uc774\uc2a4\ub97c \uc815\ubc00\ud558\uac8c \ud29c\ub2dd\ud558\uae30 \uc704\ud574\uc11c\ub294 \ud788\uc2a4\ud1a0\ub9ac\uceec \ub370\uc774\ud0c0 \uc218\uc9d1 \uba54\ucee4\ub2c8\uc998\uc774 \ud544\uc694\ud558\uba70, \ub610 \ubcc0\uacbd\uc0ac\ud56d\ub4e4\uc774 \ub370\uc774\ud0c0\ubca0\uc774\uc2a4 \uc131\ub2a5\uc5d0 \ubbf8\uce58\ub294 \uc601\ud5a5\uc744 \ubcf4\uc5ec\uc8fc\ub294 \ub9ac\ud3ec\ud2b8\ub85c \uc774 \ub370\uc774\ud0c0\ub97c \ubc88\uc5ed\ud558\ub294 \uae30\ub2a5\uc774 \ud544\uc694\ud558\ub2e4. \uc624\ub77c\ud074\uc758 \uc0c8\ub85c\uc6b4 STATSPACK \uc720\ud2f8\ub9ac\ud2f0\ub294 STATSPACK \ud14c\uc774\ube14\uc5d0 \ub300\ud55c \ud2b8\ub80c\ub4dc \ubd84\uc11d \ub9ac\ud3ec\ud2b8\ub97c \uc791\uc131\ud558\ub294 \uae30\ub2a5\uacfc \ud568\uaed8 \ud544\uc694\ud55c \ub370\uc774\ud0c0\ub97c \uc218\uc9d1\ud560 \uc218 \uc788\ub294 \uae30\ub2a5\uc744 \uc81c\uacf5\ud55c\ub2e4. &nbsp; \ud1a0\ud0c8 \uc2dc\uacc4\uc5f4 \ub9ac\ud3ec\ud2b8 \uc774\ub4e4 \ub9ac\ud3ec\ud2b8\ub4e4\uc740 \uc9c0\uc815\ub41c \uae30\uac04 \uc911\uc5d0 \ubc1c\uc0dd\ud55c \ub370\uc774\ud0c0\ubca0\uc774\uc2a4\uc758 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2602,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"spay_email":""},"categories":[9],"tags":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/haisins.synology.me\/wordpress\/wp-content\/uploads\/2018\/02\/ond0.jpg?fit=300%2C225&ssl=1","amp_enabled":true,"_links":{"self":[{"href":"https:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2592"}],"collection":[{"href":"https:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2592"}],"version-history":[{"count":7,"href":"https:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2592\/revisions"}],"predecessor-version":[{"id":2642,"href":"https:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/2592\/revisions\/2642"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=\/wp\/v2\/media\/2602"}],"wp:attachment":[{"href":"https:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2592"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2592"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/haisins.synology.me\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2592"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}