Time of Update: 2017-02-27
問題描述: 在處理一般的資料記錄中,對於數字類型的欄位,在oracle的排序中,預設把null值做為大於任何數位類型,當然對於varchar2類型的欄位,預設也是該處理方式,但是客戶要求排序的過程中,需要把null的欄位預設排在前邊(從小-->大)。一般的order by xxxx,無法解決。 問題解決:方案1:可以使用複雜的使用sql:select * from(select a.*,rownum as my_sys_rownum from (select
Time of Update: 2017-02-27
1、什麼是審計審計(Audit)用於監視使用者所執行的資料庫操作,審計記錄可存在資料字典表(稱為審計記錄:儲存在system資料表空間中的 SYS.AUD$表中,可通過視圖dba_audit_trail查看)或作業系統審計記錄中(預設位置為$ORACLE_BASE/admin/$ORACLE_SID/adump/)。。預設情況下審計是沒有開啟的。當資料庫的審計是使能的,在語句執行階段產生審計記錄。審計記錄包含有審計的操作、使用者執行的操作、操作的日期和時間等資訊。不管你是否開啟資料庫的審計功能,
Time of Update: 2017-02-27
1、編寫產生備份指令碼的指令碼#cold backcupremark set sql*plus variable to manipulate output //注釋set feedback off heading off verify off trimspool off echo off time offset pagesize 0 linesize 200remark set sql*plus
Time of Update: 2017-02-27
1、備份的意義1)保護資料,避免因為各種故障而遺失資料2、基本術語介紹Mean Time Between Failure --MTBFMean Time To Repair --MTTRMean Time To Failure --MTTF(1)MTBF——全稱是Mean Time
Time of Update: 2017-02-27
Oracle的11gr2版本中,並沒有對資料泵做出多大的改動,主要是增加了對原始版本參數的支援,並且去掉了一些小的限制。這一篇介紹資料泵對版本的支援。在11.2中,Oracle增加了版本的功能,而資料泵也支援對指定版本的匯出,或將對象匯入到指定的版本中。SQL> conn yangtk/yangtk已串連。SQL> select sys_context('USERENV', 'CURRENT_EDITION_NAME') from dual;SYS_CONTEXT('USERENV'
Time of Update: 2017-02-27
Oracle的11gr2版本中,並沒有對資料泵做出多大的改動,主要是增加了對原始版本參數的支援,並且去掉了一些小的限制。這一篇介紹資料泵匯入新增的DATA_OPTIONS參數。在11.2之前,資料泵的匯入只提供了一個DATA_OPTIONS——SKIP_CONSTRAINT_ERRORS,而在11.2中,DATA_OPTIONS又增加了一個可用的值:DIABLE_APPEND_HINT。一般來說我們希望資料泵使用直接路徑的方式匯入,因為匯入的效率會很高。但是有的時候,我們
Time of Update: 2017-02-27
Oracle的11gr2版本中,並沒有對資料泵做出多大的改動,主要是增加了對原始版本參數的支援,並且去掉了一些小的限制。這一篇介紹資料泵對錶模糊比對匯出的改進。Oracle的資料泵支援表名的模糊比對方式匯出,比如:bash-3.00$ expdp yangtk/yangtk directory=d_output dumpfile=t_test.dp tables=t%Export: Release11.1.0.6.0 - 64bit Production on星期二, 08 9月, 2009 1
Time of Update: 2017-02-27
Oracle的11gr2版本中,並沒有對資料泵做出多大的改動,主要是增加了對原始版本參數的支援,並且去掉了一些小的限制。這一篇介紹資料泵對錶匯出方式的改進。在11gr1和以前的版本中,以表模式的匯出有一個限制,所有匯出的表必須處於同一個SCHEMA中,這使得備份不同的SCHEMA下的個別表變得很不方便:bash-3.00$ expdp yangtk/yangtk directory=d_output dumpfile=t.dp tables=yangtk.t test.tExport:
Time of Update: 2017-02-27
Oracle的11gr2版本中,並沒有對資料泵做出多大的改動,主要是增加了對原始版本參數的支援,並且去掉了一些小的限制。這一篇介紹資料泵的Legacy模式。在11.2中推出的這個功能主要是EXP/IMP工具要逐漸地推出曆史舞台了。雖然無論從功能上還是從效能上,資料泵匯入匯出都要優於傳統的匯出匯入工具EXP/IMP,但是如果使用者包含了大量的指令碼調用EXP,那麼全部遷移到EXPDP方式就會非常麻煩。而資料庫的LEGACY模式就是為了能將傳統的匯出、匯入方式平滑的遷移到資料泵方式下。[oracle
Time of Update: 2017-02-27
(1)編寫熱備份指令碼(雙重spool)set feedback off pagesize 0 heading off verify off linesize 100 trimspool on echo off time offdefine bakdir='/disk1/backup/anny/hot_bak'define bakscp='/disk1/backup/anny/hot_cmd.sql'define spo='&bakdir/hot_bak.lst'prompt
Time of Update: 2017-02-27
案例5:將資料檔案恢複到新的位置1、類比環境SQL> create table lxtb01(id int) tablespace lx01;SQL> insert into lxtb01 values(1);1 row created.SQL> insert into lxtb01 values(2);1 row created.SQL> select * from lxtb01;ID----------12SQL> commit;Commit complete.
Time of Update: 2017-02-27
案例4:recover datafile——建立的資料表空間,沒有備份,datafile被刪除恢複步驟:起庫,通過V$recover_file 查看需要恢複的檔案,由於沒有備份,只能將資料檔案offline,進行資料檔案重建,再進行recover datafile ,online即可(1)類比環境SQL> create tablespace cuug2 datafile '/u01/app/oracle/oradata/anny/cuug01.dbf'
Time of Update: 2017-02-27
案例3:(recover tablespace ,database open狀態)——database在open 狀態下恢複資料檔案(除了system tablespace)(1) 類比環境:06:10:52 SQL> insert into scott.t01 values (4);1 row created.06:13:12 SQL> insert into scott.t01 values (5);1 row created.06:13:13
Time of Update: 2017-02-27
案例2: recover tablespace(恢複資料表空間(刪除了tablespace的所有的datafile))在關庫狀態下刪除資料檔案時,這樣恢複:轉儲datafile,使丟失的datafile離線, recover tablespace(1)類比環境SQL> conn scott/tigerConnected.SQL> col tname for a30SQL> select * from tab;TNAME &
Time of Update: 2017-02-27
1、完全恢複通過備份、歸檔日誌、current redo ,將database恢複到failure 前的最後一次commit 狀態。(通常用於介質失敗)——歸檔模式1)完全恢複2)不完全恢複——非歸檔模式1)恢複到最後一次備份2、instance recover 和 media recover 區別:——instance recover :instance 沒有正常關閉 ,由smon
Time of Update: 2017-02-27
Oracle Database 10g中採用了資料泵(Data Dump)技術,使DBA或開發人員可以將資料庫中繼資料(對象定義)和資料快速移動到另一個oracle資料庫中。一、 資料泵匯出匯入(EXPDP和IMPDP)的作用:1、實現邏輯備份和邏輯恢複。2、在資料庫使用者之間移動對象。3、在資料庫之間移動對象4、實現資料表空間搬移。二、
Time of Update: 2017-02-27
實現最大保護模式,可以先實現最大效能模式,然後再轉換為最大保護模式。一、三種保護模式最大效能(maximize performance):這是data guard預設的保護模式。primay上的事務commit前不需要從standby上收到反饋資訊,該模式在primary故障時可能遺失資料,但standby對primary的效能影響最小。最大可用(maximize
Time of Update: 2017-02-27
PRIMARY資料庫和STANDBY資料庫採用的都是RAC 11.1.0.6 for Solaris10 sparc,共用儲存PRIMARY資料庫採用VOLUMN CLUSTER MANAGER,而STANDBY資料庫使用ASM。在部署之前,首先檢查目前的PRIMARY資料庫是否滿足切換後邏輯STANDBY的角色,發現目前PRIMARY資料庫還沒有建立STANDBY LOGFILE,因此首先建立PRIMARY資料庫的STANDBY LOGFILE:root@newtrade1 # cd
Time of Update: 2017-02-27
從11.2開始,如果資料庫鏈建立時使用者名稱密碼有誤,或者需要更改資料庫鏈驗證設定,不需要將資料庫鏈刪除後重建了,Oracle提供了ALTER DATABASE LINK的文法。這隻是一個很小的改動,但是使得資料庫鏈的操作方便了許多。沒有必要為了輸入錯誤或是更改了使用者名稱密碼而重建資料庫鏈了。SQL> create database link test2 connect to test3 identified by password4 using '1
Time of Update: 2017-02-27
PRIMARY資料庫和STANDBY資料庫採用的都是RAC 11.1.0.6 for Solaris10 sparc,共用儲存PRIMARY資料庫採用VOLUMN CLUSTER MANAGER,而STANDBY資料庫使用ASM。FAILOVER切換用於主庫停用情況。這種情況相對比較簡單,不需要太多的準備工作,不過為了類比,首先將PRIMARY資料庫關閉:SQL> select instance_name, status from gv$instance;INSTANCE_NAME