Time of Update: 2017-02-27
網上有很多資料都沒有說清楚發生log switch的時候,到底完全檢查點還是增量檢查點。有人說是完全檢查點,也有人說是增量檢查點。其實如果你深入瞭解完全檢查點和增量檢查點的的區別,就應該知道log switch到底是增量檢查點還是完全檢查點。在8i以前,log switch的時候oracle確實是會做完全檢查點;但從8i開始,oracle在log switch的時候做的是增量檢查點,但從嚴格意義上來說並不能完全算是增量檢查點,因為在log switch的時候,不僅會像增量檢查點那樣更新控制檔案,
Time of Update: 2017-02-27
一、環境:1、linux主機ocm(192.168.217.130)作為資料庫sys@OCM> select * from v$version;BANNER--------------------------------------------------------------------------------Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production2、linux主機ocp(192.16
Time of Update: 2017-02-27
概述配置應用程式塊為應用系統提供了一個通用的組態管理解決方案,可以方便的從各種儲存中讀取配置資訊。在設計上旨在提供一個用於讀/寫配置資料的簡單介面,實現配置資料的讀寫與資料的儲存相分離。使用Storage Provider 和 Transformers在應用和實體儲存體之間傳遞資料,同時採用抽象AbstractFactory模式產生Provider資料。先解釋一下配置應用程式塊中用到的兩個重要的概念:Storage
Time of Update: 2017-02-27
Enterprise Library Step By Step系列(十四):建立基於訊息佇列(MSMQ)的非同步日誌一.概述在Enterprise Library Step By Step系列裡我們說過,日誌和檢測應用程式塊主要由2部分組成:Client和Distributor。Client負責建立訊息,這些訊息將由Distributor寫入目標位置。Client根據分發策略(Distribution Strategies)發送訊息到Distributor,在Application
Time of Update: 2017-02-27
一.概述使開發人員和決策人員能夠針對發生在公司專屬應用程式程式體繫結構層的異常處理建立一致的策略。它的實現方法如下:(1)它支援整個應用程式體繫結構層的異常處理,而不僅限於服務介面的界限。(2)它使得異常處理策略可以在管理層定義和維護,以便決策人員(可能是系統管理員和開發人員)可以定義如何處理異常。他們可以維護和修改控制異常處理的規則集,而無需更改塊的應用程式代碼。(3)它提供了常用的異常處理功能,例如記錄異常資訊的功能、通過將原始異常替換為其他異常來隱藏敏感資訊的功能,以及通過將原始異常打包到
Time of Update: 2017-02-27
在安裝rac RAC時,首先要配置ssh互信,下面我們介紹詳細下如何配置ssh互信。假設目前有兩台機器,分別是 ocm1 和 ocm2 , 我們準備在這兩台機器上進行ssh互信的配置:首先,我們先瞭解下配置ssh互信的原理,ssh互信,說白了,就是在目標機器上,預先設定好經過認證的key檔案,當需要訪問目標機器時,目標機器通過key檔案,對訪問者進行自動認證,從而實現互信。瞭解了ssh互信的原理,我們把配置ssh互信的步驟,進行有效分割:1.
Time of Update: 2017-02-27
1.建立存放統計資訊的表:exec DBMS_STATS.CREATE_STAT_TABLE (ownname=>'GYJ', stattab=>'STAT_TAB',tblspace=>'STAT_TP1');2.匯出備份統計資訊:exec
Time of Update: 2017-02-27
寫在前面:最近一段時間項目周期比較緊,所以這篇隨筆出來的比較晚,希望喜歡本系列隨筆的朋友諒解。上篇隨筆寫的也比較簡單,我會抽時間補上的,先向大家道個歉^_^一.日誌和檢測應用程式塊概述:Enterprise Library Logging and Instrumentation Application Block版使開發人員可以在其應用程式中整合標準的日誌和監測功能。應用程式可以使用日誌和監測塊在多個位置記錄事件:1.事件記錄(Event
Time of Update: 2017-02-27
1、在alert_lxdb.log日誌中報600錯誤Errors in file /u01/app/oracle/admin/lxdb/udump/lxdb_ora_50379.trc:ORA-00600: internal error code, arguments: [kkslhsh1], [101], [], [], [], [], [], []注意這個問題可能會導致產生非常大的trc 檔案而導致 檔案系統滿!2、本問題的產生根本原因: 設定了 cursor_sharing =
Time of Update: 2017-02-27
接上文上面的配置執行個體是按照將日誌寫入文字檔來配置的(節點具體含義見上文),程式調用AppLogProvider時,需要進行執行個體化,在執行個體化過程中指定使用哪個Render,不同的執行個體對應不同的配置資訊,就可以對應不同的等級、記錄介質,如下:圖 6 建構函式配置效果 如上圖所示,使用前先執行個體化一個日誌執行個體,執行個體化時有6中內建方式可以選擇,我們剛配置了File節點資訊,所以在這裡選擇“File”://定義日誌執行個體 LogProvider
Time of Update: 2017-02-27
本篇簡單回顧C#語言集合操作的變化,通過與Linq對等的物件導向的文法來認識Linq。Linq是Language Integrated Query, 初識Linq感覺跟SQL
Time of Update: 2017-02-27
0. 緣起:本文寫作緣起於阮的討論——《FxCop告訴我,檢查一個字串是否為空白要用string.Length。》。其實用過FxCop的人都知道它會建議你使用String.Length屬性來判斷字串是否為空白串,但你又是否明白其中的緣由呢?今天有點閑,特意寫下這篇文章,希望有點協助。1. 三種常用的字串判空串方法:Length法:bool isEmpty = (str.Length == 0);Empty法:bool isEmpty = (str ==
Time of Update: 2017-02-27
這題是考:insertWITH CHECK OPTION的用法insert into (<select clause> WITH CHECKOPTION) values (...)這樣的文法看起來有點特點,其實insert是插入到查詢裡的這張表裡,只不過如果不滿足子查詢裡的where條件的話,就不允許插入。如果插入的列有不在子查詢作為檢查的where條件裡,那麼也會不允許插入。如果不加WITH CHECK OPTION則在插入時不會檢查。OK!我們根據題意先來做測試:SQL>
Time of Update: 2017-02-27
這題是考延遲約束的相關知識點。在表CUST設了主鍵cust_id(唯一併且非空),在主鍵設延遲約束,所謂延遲約束就是在dml時資料庫不判斷資料是否滿足約束,在commit時來判斷,如果commit,做dml操作時(這道題是插入的資料如果不滿足約束條件那就會做rollback)這道題中,第一行,第二行資料的cust_id都為1,重複了,在提交時肯定會報錯,結果會復原。相當於第一行,第二行不會插入到表CUST中。第三行,第四行的cust_id分別為1和2,沒有重複,提交時插入成功,會永久儲存。所以可
Time of Update: 2017-02-27
這題又是考Regex,我們先根據題意,操作如下:hr@OCM> col "PHONE NUMBER" for a50 hr@OCM> SELECT phone_number,REGEXP_REPLACE(phone_number,'([[:digit:]]{3})\.([[:digit:]]{3})\.([[:digit:]]{4})','(\1) \2-\3') "PHONE NUMBER" 2 FROM employees;
Time of Update: 2017-02-27
1.標示符的名稱中可以包含 #、$、_、字母和數字,但是必須以字母開頭2.標示符可以採用PLSQL中的關鍵字,但是不可以採用PLSQL中的保留字3.長度不可以超過304.標示符名稱不區分大小寫5.標示符最好以有意義的字元開頭,如常量:con_, 變數:var_,函數:fun_,預存程序:pro_,查看本欄目更多精彩內容:http://www.bianceng.cnhttp://www.bianceng.cn/database/Oracle/
Time of Update: 2017-02-27
使用sqlplus時,我們可以通過兩個profile來設定sqlplus的預設行為:glogin.sql和login.sql。glogin.sql稱為GLOBAL SITE PROFILE,位於$ORACLE_HOME/sqlplus /admin目錄下,login.sql稱為USER
Time of Update: 2017-02-27
今天,在網上搜尋關於nls視圖的相關內容,結果越查越糊塗,無奈下,還是自己動手做一下。首先,我們看一下,這三個視圖的sql定義:sys>select view_name,text from dba_views where view_name like 'NLS%'; VIEW_NAME TEXT ------------------------- -------------------------------------------------- NLS_
Time of Update: 2017-02-27
這道題目是考時間格式,日期的存貯格式,在ORACLE內部都由如下七部分構成:世紀、年、月、日、小時、分鐘、秒。OK,我們來做個測試:gyj@OCM> create table gyj_order(order_id int,order_date date);Table created.gyj@OCM> insert into gyj_order values(1,sysdate);1 row created.gyj@OCM> commit;Commit complete.gyj@
Time of Update: 2017-02-27
主鍵包括非空和唯一約束,它會自動建立唯一索引(註:唯一約束也會自動建立唯一索引),測試如下:1、 建立一個表productsgyj@OCM> Create table products(2 product_id number(6) constraintprod_id_pk PRIMARY KEY,3 product_name varchar2(15)4 );Table created.2、 查表products的索引gyj@OCM> select