Time of Update: 2017-02-27
資料檔案(資料檔案的詳細資料記載在控制檔案中)·每個oracle資料庫必須至少有一個資料檔案,用於存放資料庫資料·多個資料檔案應分放在不同的disk上以提高存取速度1、主要分類:system01.dbf:記錄系統運行資訊,包含所有資料庫字典,PL/SQL程式碼及其他系統資訊undotbs01.dbf:存放回退資訊,即DML操作後的舊資料資訊sysaux01.dbf:system檔案的輔助檔案,存放支援oracle系統活動的多種工具如logminerusers01.db
Time of Update: 2017-02-27
oracle物理結構即物理作業系統檔案的集合。控制檔案(參數檔案init.ora記錄了控制檔案的位置)二進位檔案,控制檔案由參數control_files指定,格式如下:control_files= ("home/app/.../control01.ctl","home/app/.../control02.ctl") 。1、要對控制檔案進行鏡象,手工鏡像步驟如下:a.shutdownb.cp
Time of Update: 2017-02-27
我們採用Oracle的物化視圖增量重新整理機制定時將資料庫A上的某個表的資料同步到另一個資料庫B上。我們常用的最簡單的實現步驟是這樣。首先在資料庫A上確認該表有主鍵,然後建立在這個表上建立 物化視圖日誌如“CREATE MATERIALIZED VIEW LOG ON T_tablename;”,再到資料庫B上建立 資料庫連結和快速重新整理的物化視圖如“create materialized view mv_tablename refresh fast on
Time of Update: 2017-02-27
在Oracle 10.2.0.4資料庫中,有一個SQL執行緩慢,超過數分鐘無結果,等待事件又是閒置 SQL*Net message事件,最後只好強行中斷。這個SQL是一個普通的UPDATE語句,where子句中多張表 關聯,關聯的表都是暫存資料表。update t_fund_product_info set is_valid = 'N' where prdt_id not in (select a.prdt_id from
Time of Update: 2017-02-27
有一個需求,將某業務表的某個時間點之前的記錄轉移到它的曆史表中。如果當前業務表不是基於這 個業務時間點的分區表設定,那隻能insert再delete操作。這種轉移資料的方法非常非常低基礎。經常 在初級的資料庫管理員和開發人員的程式中出現。不是說這個方法不好,對於轉移的記錄數量在幾十 幾百條,而轉移頻率高,轉移時間點隨機的情況而言,這個方法還是挺管用的。但如果轉移的資料量一
Time of Update: 2017-02-27
我們有時候會這麼一個需求:希望資料庫能夠定時的幫我們做某一件事。比如說我們希望資料庫能夠 週期性把庫裡面某一張表、或某些表的資料匯總到另外一張匯總表裡面。那麼這個時候我們就可以通過 使用資料庫的定期任務來實現這麼一個功能。下面我們來舉一個簡單的例子,假如我們有如下兩張表,t1和t2。t1及其對應的sequence:create table t1(a1 integer primary key, a2 varchar2(20), a3 varchar2(20), a4 date);
Time of Update: 2017-02-27
Oracle的閃回功能可以在對資料庫進行不完全恢複的情況下,對某一個指定的表進行恢複。閃回資料 庫是進行時間點恢複的新方法,它能夠快速將Oracle恢複到以前的時間,以更正由於邏輯資料損毀或用 戶錯誤而引起的問題。當需要恢複時,可以將資料庫恢複到錯誤前的時間點,並且只恢複改變的資料區塊
Time of Update: 2017-02-27
當一個序列第一次被調用時,它將返回一個預定值,在以後的每一次查詢調用中,序列將產生一個按 其指定的增量得到的值。1、建立序列文法格式如下:create sequence [schema.]sequence_name [increment by incre_value] --每次的增量,預設是1*/ [start with start_value] --初始值*/ [maxvalue integer | nomaxvalue] --最大值*/ [minvalue integer |
Time of Update: 2017-02-27
data pump(資料泵)可以實現在測試環境、開發環境、生產環境以及進階複製或熱備份資料庫之間 的快速資料移轉。data pump還能實現部分或全部資料庫邏輯備份,以及跨平台的可傳輸資料表空間備份。data pump技術相對應的工具是data pump export和data pump import,即expdp和impdp,它們的功 能與exp和imp類似,所不同的是data pump技術的速度更快。另外,data pump技術還可以實現斷點重啟
Time of Update: 2017-02-27
備份是將資料庫中的資料資訊儲存起來,而恢複則是將已經備份的資料庫資訊還原到資料庫系統中。一、資料庫的備份類型Oracle資料庫的備份有3種標準形式:匯出、離線備份和聯機備份。匯出方式是資料庫的邏輯備份,離線備份和聯機備份都是物理備份。1、邏輯備份匯出有以下3種模式:(1)使用者(user)模式:匯出使用者所有對象以及對象中的資料。(2)表(table)模式:匯出使用者的所有表或者使用者指定的表。(3)全域(full)模式:匯出資料庫中的所有對象,包括資料、資料定義和用於重建資料庫的儲存
Time of Update: 2017-02-27
審計是監視和記錄所選使用者的資料活動的。審計操作類型包括登入企圖、對象訪問和資料庫操作。審 計記錄包括被審計的操作、執行操作的使用者、操作的時間等資訊。1、 啟用審計其具體步驟如下:(1) 進入Oracle的企業管理器,在伺服器下面的資料庫配置中選擇初始化參數。(2) 點擊初始化後進入如下初始化參數介面該介面有兩個選項介面,當前和SPFile,其中當前是展示參數值的,而SPFile是修改參數值的。(3)
Time of Update: 2017-02-27
Oracle在sys使用者方案中內建了許多視圖,我們可以利用它們方便地查看系統相關的資訊。在調用這
Time of Update: 2017-02-27
概要檔案用於限制由使用者使用的系統和資料庫資源,並可以對口令進行管理。如果在建立使用者時沒有 指定概要檔案,將使用預設的概要檔案。1、使用create profile命令建立概要檔案文法格式如下:create profile profile_name limit resource_parameters |
Time of Update: 2017-02-27
一、使用者1、利用SQL建立使用者的文法格式如下: create user user_name --使用者名稱*/ [identified by password | externally | globally as 'external_name'] --以何種方式驗證使用者,驗證方式有3種:口令、外部和全域, --口令表示利用建立使用者時提供的password進行驗證,外部表格示利用第三方程式來驗證,如作業系統的登入密碼,全域則指當有多個資料時,
Time of Update: 2017-02-27
觸發器可實現表間資料的一致性和完整性。當一個基表被修改時,相應的觸發器會自動執行。對錶數 據的操作有插入、修改和刪除,相應的維護資料的觸發器也大致有insert、update和delete三種。觸發器的類型有三種:(1)DML觸發器:在對錶進行DML操作的時候觸發。(2)替代觸發器:由於在Oracle中不能直接對有兩個以上表建立的視圖進行DML操作,所以給出了替
Time of Update: 2017-02-27
預存程序是存放在資料字典中的程式塊,它可以在不同使用者和應用程式間共用,並可實現程式的最佳化 和重用。一、預存程序的建立和執行1、利用SQL命令建立預存程序文法格式如下:create [or replace] procedure [schema.]procedureName[(param1 mode1 dataType1,...n)] is | as begin statements; /*過程體,要執行的操作*/ end;其中,mode1表示參數的類型,
Time of Update: 2017-02-27
PL/SQL語言的集合類似於數組,是管理多行資料必須的結構體。集合就是列表,可能有序,也可能無序。PL/SQL的集合類型有:聯合數組、巢狀表格和可變數組三種。1、聯合數組聯合數組類似於C語言中的數組。(1)文法格式如下:type typeName is table of arrayType index by binary_integer;其中,typeName表示新類型的類型名,arrowType表示要定義的聯合數組的類型。假設有一個表t_module(name
Time of Update: 2017-02-27
語句執行過程中,可能會因為異常造成損失,甚至是系統崩潰。為了避免這種情況的發生,必須對異 常進行處理。PL/SQL提供了對異常進行處理的方法。該方法會使得在PL/SQL代碼部分執行的過程中無論 何時發生了異常錯誤,都會自動轉向執行異常處理部分。1、預定義異常預定義異常是由系統產生的。比如在出現0為除數的時候,系統會產生一個預定義的ZERO_DIVIDE異常 。樣本如下:declare num1 number := 2; num2 number := 0; num3
Time of Update: 2017-02-27
PL/SQL語句通過遊標提供了對一個結果集進行逐行處理的能力。遊標可以視為一種特殊的指標,它與 某個查詢結果相聯絡,可以指向結果集的任何位置,以便對指定位置的資料進行處理。使用遊標可以在 查詢資料的同時對資料進行處理。遊標分為顯式遊標和隱式遊標兩種。一、顯式遊標使用顯示遊標需要遵循聲明遊標——>開啟遊標——>讀取資料 ——>關閉遊標四個步驟。1、聲明遊標定義的方法如下:declare cursor
Time of Update: 2017-02-27
使用者自訂函數是儲存在資料庫中的代碼塊,可以把值返回到調用程式。函數的參數有3種類型:(1)in參數類型:表示輸入給函數的參數,該參數只能用於傳值,不能被賦值。(2)out參數類型:表示參數在函數中被賦值,可以傳給函數調用程式,該參數只能用於賦值,不能 用於傳值。(3)in out參數類型:表示參數既可以傳值,也可以被賦值。1.函數的建立文法格式: create [or replace] function functionName (