在向大家詳細介紹Oracle數據采集之前,首先讓大家了解下為什麼會有數據采集,然後全面介紹Oracle數據采集。隨著社會發展,各種大型數據庫在被審計單位運用的也越來越廣泛。從大型數據中采集我們需要的數據,成為審計人員面臨的一個工作。作者從采集數據的經歷中總結了一些經驗與大家分享。
Oracle數據采集
Oracle數據采集一般采取兩種方式:
第一種方式是備份法,即利用Oracle的邏輯備份、還原功能(ExpImp),將數據備份出來,然後在本地還原;
第二種方式是直連法,即利用OLE DB或ODBC直接連接Oracle數據庫,將數據導出。
(1)備份法:充分利用了Oracle支持跨操作系統的數據備份、還原的功能。
第一步,由被審計單位科技人員利用Oracle的邏輯備份功能(Exp),將數據庫全部或部分備份出來,是一個後綴名為dmp的文件,如果有日志的話,是一個後綴名為log的文件。操作如下:exp system/manager @sJSjjj owner=system file=c:.dmp log=c:.log上述命令的意思是:將數據庫sJSjjj中用戶system下的所有數據導出,導出文件位置及文件名c:.dmp,日志文件位置及文件名c:.log。
第二步,審計人員在自己的電腦上安裝Oracle數據庫軟件(版本最好與被審計單位的Oracle數據庫版本相同),並創建相關的用戶。將取得的備份文件在自己的電腦上利用Oracle的邏輯還原功能(Imp)將數據庫還原。操作如下:imp system/sys@sJSjjj fromuser=system to user=aa file=c:.dmp上述命令的意思是:從文件c:.dmp中將用戶system下的所有數據導入到數據庫sJSjjj中用戶aa下。(因ExpImp命令的參數較多,不逐一介紹。讀者可通過exp help=y或者imp help=y命令了解ExpImp命令各項參數的用法,比如如何導入、導出部分表;如何只導入、導出數據行,忽略其他信息)。
審計人員也可以使用PL/SQL Developer這個工具軟件,該軟件也提供了Oracle數據庫的邏輯備份、還原功能,並且完全是圖形化的界面,不用輸入命令,方便審計人員的使用。完成上述工作後,余下的事情就是將本地機上的Oracle中的數據導入到審計人員使用的數據庫(以SQL Server為例)中,操作方法同(2)直連法,這裡省略。
注意事項:要求被審計單位提供邏輯備份時的日志文件,這有幾個好處,一是能夠知道數據庫使用的字符集;二是能夠初步了解數據庫中有哪些表;三是日志中提供了每張表的記錄條數,有助於我們在將數據導入其他數據庫時進行核對。
(2)直連法:通過OLE DB或ODBC直接連接Oracle數據庫,充分利用了被審計單位的管理資源。
被審計單位一般不會直接在服務器上操作Oracle數據庫,通常都是設置一台或幾台客戶端管理機,在管理機上安裝Windows操作系統和Oracle客戶端軟件並進行配置,使其能夠維護、管理Oracle數據庫,這就為審計人員為Oracle數據采集提供了另一個途徑。
◆要求被審計單位提供一台安裝了Oracle客戶端軟件並能夠訪問服務器上Oracle數據庫的電腦。
◆在這台電腦上安裝一個數據庫軟件,本文以SQL Server為例。
◆打開SQL Server的導入和導出向導,在選擇數據源一步中選擇Oracle Provider for OLE DB或者Microsoft OLE DB Provider for Oracle(一個是微軟提供的數據驅動,一個是Oracle公司提供的數據驅動,使用上沒有大的差異),點擊頁面中的“屬性”按鈕,輸入連接信息。
在輸入服務器名稱框中輸入要連接的數據庫的名稱,例如上文在本地還原的數據庫sJSjjj;在輸入登錄數據庫的信息,輸入用戶名和密碼,例如上文提到的用戶aa,密碼aa。點擊“測試連接”,可以查看連接是否成功建立。余下的步驟與一般的數據導入、導出一致,不再敘述。