對DBMS而言,如果是透過Index搜尋資料,當在Index的B-Tree中找到符合的資料時,最後都會透過該索引給予的指標,去得知實際
的Data Page(Data Block)的位置。該指標在SQL Server或Sybase ASE都是稱做RID(Row Identify),而Oracle稱做ROWID(Row Identify)。
(1)SQL Server
   RID ==> 檔案編號、分頁編號、在該分頁裡的資料列編號
(2)Sybase

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()

退伍第十年的軍中朋友,能聯絡至今,難得!

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()


通常Oracle的Table經過經年累月的Insert資料後,當做大量的Data Retention後,常常會發現效能還是不佳,那是因為High Water Mark(HWM),並

不會HWM並不會往前移動,造成Full Table Scan時,還會從第一個Data Block掃瞄到HWM的位置,此時除了Table Move或Export再Import外,別

無他法,但Oracle 10g開始支援縮小區段(Shrink Space) 這個命令‧(文章內容和範例參考至申建忠的大作)

//shrink space compact
這個操作需要對表格加上表格層次的共用鎖定(TM:Row Exclusive),並對搬移資料列加上獨佔鎖定(Exclusive)‧ 然後將表格的資

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()

老實說剛碰Oracle時,對V$PARAMETER、V$PARAMETER2、V$SYSTEM_PARAMETER、V$SYSTEM_PARAMETER2、V$SPPARAMETER之

間有什麼差異,有什麼不同,完全搞不清楚,結果花了點時間Try一下,大概知道他們之間的差異‧

//V$PARAMETER、V$SYSTEM_PARAMETER、V$SPPARAMETER之間的差異
在 Oracle 10g 剛裝好時,Instance預設啟動是載入SPFILE參數檔,而SPFILE內有定義 db_file_multiblock_read_count=16 ,但
沒有定義 timed_statistics 該參數值的設定,由以下三個範例,可以看出‧

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()

//查看目前累積已備存的Transaction Log檔案
SELECT * FROM V$ARCHIVED_LOG
//查看Archive一些備存位置的相關資訊
SELECT * FROM V$ARCHIVE_DEST_STATUS
SELECT * FROM V$ARCHIVE_DEST

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()

Dynamic Performance View 有三百多個‧你常會聽到它們被稱為「V$」View,因為它們的名稱前面會是「V$」‧ 事實上,「V$」
View完全不是View,它們是以「V_$」開頭之View的Synonym‧                                                           
範例: SELECT OBJECT_NAME,OBJECT_TYPE                                                                             
          FROM DBA_OBJECTS                                                                                           
          WHERE OBJECT_NAME LIKE 'V$%' OR OBJECT_NAME LIKE 'V_$%';                                                   

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()

SQL> startup nomount pfile='c:\initorcl.ora'
ORACLE 執行處理已啟動.
SQL> startup force pfile='c:\initorcl.ora'
ORACLE 執行處理已啟動.
備註: 此方式只能應急,因為該Oracle Instaince每次啟動時,還是會去 Oracle_Home路徑下搜尋相關參數檔‧當然也有一種情形

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()

//刪除Oracle Instance
說明: net stop oracleserviceorcl
^^^^
                                              |
                                              +----------------> orcl為該Oracle中的Instance Name

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()

Oracle的SQL-PLUS其實是有支援多國語系的回應,只要你設定好NLS_LANG環境變數即可‧

//使用美國語系
範例: C:\>set NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252
      C:\>sqlplus rock_dba/123s@orcl as sysdba

      SQL*Plus: Release 10.2.0.1.0 - Production on Sun Jul 19 16:59:13 2009

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()

有些參數在PFILE模式是無法透過alter system的方式修改,需要直接改文字模式的參數檔

(1)參數檔為SPFILE型態     
   範例: SQL> SELECT DECODE(value, NULL, 'PFILE', 'SPFILE') AS "Init File Type", NVL(value,'null') AS Path     
           2  FROM v$parameter WHERE name = 'spfile';                                                          
              Init File Type         PATH                                                                      

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()

//參數檔載入順序(Oracle 10g for windows版)
Oracle 10g 裝好後,雖然去查v$parameter,顯示的是該 "C:\ORACLE\PRODUCT\10.2.0\DB_1\DBS\SPFILEORCL.ORA" 位置(見參考1
),但經實驗得知,其實該Instance是去 "C:\oracle\product\10.2.0\db_1\database" 該 Oracle_Home 路徑下依序找相關參數檔(見參考2),
但為什麼參數檔最終是去讀 "C:\ORACLE\PRODUCT\10.2.0\DB_1\DBS\SPFILEORCL.ORA" 呢? 因為Oracle_Home下的參數檔

initorcl.ora的內容(PFILE型態),是指向另一個參數檔(SPFILE型態),請見參考3‧

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()

//找出參數檔
檔案位置: C:\oracle\product\10.2.0\db_1\database\initorcl.ora
檔案內容: SPFILE='C:\oracle\product\10.2.0\db_1/dbs/spfileorcl.ora'
檔案位置: C:\oracle\product\10.2.0\db_1\dbs\SPFILEORCL.ORA
檔案內容: orcl.__java_pool_size=4194304

香 香蕉皮 發表在 痞客邦 留言(0) 人氣()

1 2
Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。