Oracle Tuning
¡¡ ¹ØÓÚOracleµÄÐÔÄܵ÷Õû£¬Ò»°ã°üÀ¨Á½¸ö·½Ã棬һÊÇÖ¸OracleÊý¾Ý¿â±¾ÉíµÄµ÷Õû£¬±ÈÈçSGA¡¢PGAµÄÓÅ»¯ÉèÖ㬶þÊÇÁ¬½ÓOracleµÄÓ¦ÓóÌÐòÒÔ¼°SQLÓï¾äµÄÓÅ»¯¡£×öºÃÕâÁ½¸ö·½ÃæµÄÓÅ»¯£¬¾Í¿ÉÒÔʹһÌ×ÍêÕûµÄOracleÓ¦ÓÃϵͳ´¦ÓÚÁ¼ºÃµÄÔËÐÐ״̬¡£
¡¡¡¡ ±¾ÎÄÖ÷ÒªÊǰÑһЩOracle TuningµÄÎÄÕÂ×÷ÁËÒ»¸ö¼òµ¥µÄ×ܽᣬÁ¦ÇóÒÔʵ¼Ê¿É²Ù×÷ΪĿµÄ£¬ÅäºÏ½²½â²¿·ÖÀíÂÛ֪ʶ£¬Ê¹´ó²¿·Ö¾ßÓÐÒ»°ãOracle֪ʶµÄʹÓÃÕßÄܹ»¶ÔOracle TuningÓÐËùÁ˽⣬²¢ÇÒÄܹ»¸ù¾Ýʵ¼ÊÇé¿ö¶ÔijЩ²ÎÊý½øÐе÷Õû¡£¹ØÓÚ¸ü¼Ó¾ßÌåµÄ֪ʶ£¬Çë²Î¼û±¾ÎĽáÊø²¿·ÖËùÌá¼°µÄÍÆ¼öÊé¼®£¬Í¬Ê±ÓÉÓڸû°ÌâÄÚÈÝÌ«¶àÇÒ¸´ÔÓ£¬±¾Îıض¨ÓÐʧ֮ƫÆÄÉõÖÁ´íÎóµÄµØ·½£¬Çë²»Áߴͽ̣¬²¢¹²Í¬½ø²½¡£
¡¡¡¡1. SGAµÄÉèÖÃ
¡¡¡¡ ÔÚOracle TuningÖУ¬¶ÔSGAµÄÉèÖÃÊÇÒªº¦¡£SGA£¬ÊÇÖ¸Shared Global Area , »òÕßÊÇ System Global Area , ³ÆÎª¹²ÏíÈ«¾ÖÇø»òÕßϵͳȫ¾ÖÇø£¬½á¹¹ÈçÏÂͼËùʾ¡£
¡¡¡¡ ¶ÔÓÚSGAÇøÓòÄÚµÄÄÚ´æÀ´Ëµ£¬Êǹ²ÏíµÄ¡¢È«¾ÖµÄ£¬ÔÚUNIX ÉÏ£¬±ØÐëΪoracle ÉèÖù²ÏíÄÚ´æ¶Î£¨¿ÉÒÔÊÇÒ»¸ö»òÕß¶à¸ö£©£¬ÒòΪoracle ÔÚUNIXÉÏÊÇ¶à½ø³Ì£»¶øÔÚWINDOWSÉÏoracleÊǵ¥½ø³Ì£¨¶à¸öỊ̈߳©£¬ËùÒÔ²»ÓÃÉèÖù²ÏíÄÚ´æ¶Î¡£
¡¡¡¡1.1 SGAµÄ¸÷¸ö×é³É²¿·Ö
¡¡¡¡ÏÂÃæÓà sqlplus ²éѯ¾ÙÀý¿´Ò»Ï SGA ¸÷¸ö×é³É²¿·ÖµÄÇé¿ö£º
¡¡¡¡SQL> select * from v$sga;
¡¡¡¡NAME VALUE
¡¡¡¡-------------------- ----------
¡¡¡¡Fixed Size 104936
¡¡¡¡Variable Size 823164928
¡¡¡¡Database Buffers 1073741824
¡¡¡¡Redo Buffers 172032
¡¡¡¡»òÕß
¡¡¡¡SQL> show sga
¡¡¡¡Total System Global Area 1897183720 bytes
¡¡¡¡Fixed Size 104936 bytes
¡¡¡¡Variable Size 823164928 bytes
¡¡¡¡Database Buffers 1073741824 bytes
¡¡¡¡Redo Buffers 172032 bytes
¡¡¡¡Fixed Size
¡¡¡¡ oracle µÄ²»Í¬Æ½Ì¨ºÍ²»Í¬°æ±¾Ï¿ÉÄܲ»Ò»Ñù£¬µ«¶ÔÓÚÈ·¶¨»·¾³ÊÇÒ»¸ö¹Ì¶¨µÄÖµ£¬ÀïÃæ´æ´¢ÁËSGA ¸÷²¿·Ö×é¼þµÄÐÅÏ¢£¬¿ÉÒÔ¿´×÷Òýµ¼½¨Á¢SGAµÄÇøÓò¡£
¡¡¡¡Variable Size
¡¡¡¡ °üº¬ÁËshared_pool_size¡¢Java_pool_size¡¢large_pool_size µÈÄÚ´æÉèÖÃ
¡¡¡¡Database Buffers
¡¡¡¡ Ö¸Êý¾Ý»º³åÇø£¬ÔÚ8i Öаüº¬db_block_buffer*db_block_size¡¢buffer_pool_keep¡¢buffer_pool_recycle Èý²¿·ÖÄÚ´æ¡£ÔÚ9i Öаüº¬db_cache_size¡¢db_keep_cache_size¡¢db_recycle_cache_size¡¢ db_nk_cache_size¡£
¡¡¡¡Redo Buffers
¡¡¡¡ Ö¸ÈÕÖ¾»º³åÇø£¬log_buffer¡£ÔÚÕâÀïÒª¶îÍâ˵Ã÷Ò
Ïà¹ØÎĵµ£º
connect by Êǽṹ»¯²éѯÖÐÓõ½µÄ£¬Æä»ù±¾Óï·¨ÊÇ£º
select ... from tablename start with Ìõ¼þ1
connect by Ìõ¼þ2
where Ìõ¼þ3;
Àý£º
select * from table
start with org_id = 'HBHqfWGWPy'
connect by prior org_id = parent_id;
¼òµ¥ËµÀ´Êǽ«Ò»¸öÊ÷×´½á¹¹´æ´¢ÔÚÒ»ÕűíÀ±ÈÈçÒ»¸ö±íÖдæÔÚÁ½¸ö×Ö¶Î:
......
--´´½¨ÐòÁÐ
create sequence innerid
minvalue 1
maxvalue 999999999
start with 1
increment by 1
cache 20
order;
--´´½¨±í
create table users(
userid int primary key,
username varchar2(20),
userpwd varchar2(20)
);
select * from users;
insert into users values( ......
ORACLEÔÚ¹ØÏµÊý¾Ý¿âÍ⣬ÈÚÈëÁËÃæÏò¶ÔÏóµÄÔªËØ£¬±ÈÈç¿ÉÒÔ´´½¨type£¬typeÖ®¼ä¿ÉÒԼ̳У¬type¿ÉÒÔ´ø¹¹Ô캯Êý¡¢ÅÅÐòº¯Êý¡¢¸÷ÖÖ¸÷ÑùµÄ³ÉÔ±º¯Êý¡¢´æ´¢¹ý³ÌµÈµÈ¡£
¶ÔÏó±íÊÇÖ¸¸Ã±íµÄÒ»ÐоÍÊÇÒ»¸ö¶ÔÏó£¬ÓÐÒ»¸öOID(object ID)£¬¶ÔÏó±íÖ®¼äûÓÐÖ÷Íâ¼ü¹ØÁªµÄ¸ÅÄΪÁËÌåÏÖÕâ²ã¹ØÏµ£¬oracleÖÐÓÃÁËref¶ÔÏóÀ´ÊµÏÖ¡£
ÏÂÃæÀý×Ó£¬´´½¨Ò»¸öµ ......
À䱸·ÝÊý¾Ý±ØÐëÊÇÊý¾Ý¿â²»ÔÚopen״̬Ï¡£ ÒÔϲ½Öè»á¸ø³öÏêϸµÄ¹ý³Ì£º
¡¡¡¡(1)£º ¹Ø±ÕDB £º shutdown immediate£»
¡¡¡¡(2)£ºcopy oradataĿ¼ÏµÄËùÓÐÎļþ£¬ °üÀ¨Êý¾ÝÎļþ£¬ ¿ØÖÆÎļþ£¬redo£¬µÈ£¬»¹ÐèÒªcopy ÃÜÂëÎļþ ÔÚĿ¼ora92Ï µÄdatabase ÖеÄpwd Îļþ.È«²¿copyµ½Ò»¸ö°²È«Ä¿Â¼ÖС£ÔÚsql ......