1. 程式人生 > >恢復db_recovery_file_dest_size引數為預設值“0”方法

恢復db_recovery_file_dest_size引數為預設值“0”方法

  db_recovery_file_dest_size引數的作用是限制閃回恢復區可存放檔案總大小。一旦將引數db_recovery_file_dest_size設定為非零值後“很難”恢復為預設值“0”。這裡我給出兩種可以將此引數恢復為預設值“0”的方法,一種是“迂迴策略”,一種是reset方法。

1.檢視預設情況下db_recovery_file_dest_size引數值
db_recovery_file_dest_size引數的預設值是“0”。
[email protected]> show parameter db_recovery_file_dest_size

NAME                                 TYPE        VALUE

------------------------------------ ----------- -------------
db_recovery_file_dest_size           big integer 0

[email protected]> col name for a20
[email protected]> select * from v$recovery_file_dest;

NAME  SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES
----- ----------- ---------- ----------------- ---------------

                0          0                 0               0

2.將db_recovery_file_dest_size引數調整為非零值

[email protected]> alter system set db_recovery_file_dest_size=4g;

System altered.

[email protected]> show parameter db_recovery_file_dest_size

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------
db_recovery_file_dest_size           big integer 4G
[email protected]> select * from v$recovery_file_dest;

NAME  SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES
----- ----------- ---------- ----------------- ---------------
       4294967296          0                 0               0

3.嘗試將db_recovery_file_dest_size引數修改為“0”
[email protected]> alter system set db_recovery_file_dest_size=0;
alter system set db_recovery_file_dest_size=0
*
ERROR at line 1:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-19803: Parameter DB_RECOVERY_FILE_DEST_SIZE is out of range (1 -
18446744073709551614)

  報錯資訊非常顯然,db_recovery_file_dest_size引數大小必須介於1~18446744073709551614之間,也就是說不可以調整為其預設值“0”。

  有朋友說,是不是可以嘗試使用scope=spfile方式調整此引數。注意,也是不可以的。驗證如下。
[email protected]> alter system set db_recovery_file_dest_size=0 scope=spfile;

System altered.

  此處貌似修改成功,但是這樣調整後資料庫將無法重新啟動,報錯資訊如下。
[email protected]> startup;
ORA-19803: Parameter DB_RECOVERY_FILE_DEST_SIZE is out of range (1 - 18446744073709551614)

  一樣的報錯原因,db_recovery_file_dest_size引數大小必須介於1~18446744073709551614之間。

4.迂迴處理方法
  既然使用常規方法無法達到我們將db_recovery_file_dest_size引數調整為“0”的目的,那我們應該如何應對這個需求呢。
  經過嘗試,可以通過pfile迂迴的達到恢復的目的。
1)使用當前的spfile生成pfile
[email protected]> create pfile from spfile;

File created.

2)使用vi命令將pfile中的db_recovery_file_dest_size引數資訊刪除掉
[[email protected] ~]$ vi $ORACLE_HOME/dbs/initPROD.ora
……
*.db_recovery_file_dest_size=4294967296
……

  注:如果經過上面scope=spfile方法調整過的話,pfile中的資訊如下:
*.db_recovery_file_dest_size=0
  方法是一樣的,將整行資訊刪除掉。

3)停止資料庫並生成spfile,並用spfile啟動資料庫
[email protected]> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
[email protected]> create spfile from pfile;

File created.

[email protected]> startup;
ORACLE instance started.

Total System Global Area  314572800 bytes
Fixed Size                  1219184 bytes
Variable Size             109053328 bytes
Database Buffers          201326592 bytes
Redo Buffers                2973696 bytes
Database mounted.
Database opened.

4)檢視修改成果
[email protected]> show parameter db_recovery_file_dest_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- -----------
db_recovery_file_dest_size           big integer 0

[email protected]> col name for a20
[email protected]> select * from v$recovery_file_dest;

NAME   SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES
------ ----------- ---------- ----------------- ---------------
                 0          0                 0               0
目的達到。

5.使用直截了當的reset方法

相關推薦

恢復db_recovery_file_dest_size引數預設0方法

  db_recovery_file_dest_size引數的作用是限制閃回恢復區可存放檔案總大小。一旦將引數db_recovery_file_dest_size設定為非零值後“很難”恢復為預設值“0”。這裡我給出兩種可以將此引數恢復為預設值“0”的方法,一種是“迂迴策略”,一種是reset方法。1.檢視預設

儲存過程+呼叫儲存過程+無/帶參的儲存過程+in引數+out引數+int out引數+引數設定預設

儲存過程 1儲存過程是一組為了完成特定功能的SQL語句集 2儲存過程編譯後儲存在資料庫中 3執行儲存過程比執行儲存過程封裝的SQl語句集更有效率 4不能指定declare關鍵字 5: OUT 和 IN OUT 的形參不能有預設表示式,只有in引數可以設

儲存過程引數的時間預設解決方法

在資料庫中建立儲存過程的時候,引數的預設值是必須為常量或NULL的,因此對於希望將時間型別引數的預設值設為當前時間的朋友來說,就會出現操作不當的情況了。解決方法很簡單,只需將其預設值設定延後就可以了。如:CREATE PROCEDURE TEST    @TestDate D

在Java中如何實現方法引數預設

Java與C++不同不支援方法中的引數帶預設值,但是有方法來實現該功能的,這就需要使用函式過載 看下面的程式碼例項: public void TestParameter(int level)

JS方法引數預設報錯 Uncaught SyntaxError:Unexpected token =

釋出的網頁,自己跑完全沒問題,到了使用者那出了問題,js報錯為: Uncaught SyntaxError: Unexpecte

檢視jvm中的各種引數以及預設

1 標準引數 標準引數(-),所有的JVM實現都必須實現這些引數的功能,而且向後相容;  通過命令 java即可檢視  如下 where options include: -d32 use a 32-bit data model if

初始化表單(保留搜尋提交之後下拉選框預設方法

做的專案某頁面需要有一個搜尋,希望在我選擇下拉選框的某個值提交,返回結果之後,之前提交的值預設selected。 html程式碼如下: <form class="well form-inline margin-top-20" id="form" meth

一種比較好的JNI Java和C++相互傳遞引數和返回方法

序言 以前在Android上做移動多媒體開發的時候,有很多需要在Java和C++相互傳遞引數的Case,以前因為時間卡的緊,一直沒有去修復這一類的問題,因為能用,沒有出什麼問題,也就沒有想什麼優化方案。最近自己有一些閒暇時間折騰點小玩意兒,也需要從Java和C++之間相互傳遞引數。想

missForest一種非引數的缺失填補方法

介紹 對於處理現實中的資料時,我們常常會遇到缺失值,這裡我們將介紹一種缺失值的填補方法missForest,這是利用隨機森林來填補缺失值的非引數方法,他可以適用於任何型別的資料(連續、離散)。其他類似的缺失值填補方法還有MICE,在這裡不做介紹。 方法

C#呼叫非託管函式引數Void* 時,方法

This sample demonstrates how to pass data to an unmanaged function that expects a void pointer as an argument. The sample provides two solutions. The Voi

Easyui中combobox獲取頁面重新整理前的預設

在考核系統中,對於combobox使用了很多,真是讓人歡喜讓人悲呀...這是幾點使用的心得  1. 級聯選單。    Easyui中combobox的級聯選單還是很方便使用的。,拖放兩個combobo

iOS: NSUserDefaults 要注意的地方 尤其首次設定預設方法

NSUserDefaults用於儲存一些app setting。當你關閉app之後再開啟後,之前儲存的setting依然可以從NSUserDefaults裡讀取。注意:密碼最好不要儲存在NSUserDefaults裡,要儲存也必須用AES/DES加密儲存,更安全的方法是

ES6 函式引數預設

基本用法 在ES6之前,不能直接為函式的引數指定預設值,只能採取變通的方法。 function log(x,y){ y = y||'world'; console.log(x,y); } log('kkk');//kkk world 這種寫

DatePicker元件設定預設 setFieldsValue方法 (BraftEditor富文字編輯器 )

其實用setFieldsValue或者獲取setState方法都可以設定DatePicker的預設值。 setState方法: <FormItem label="日期選擇框"> {getFieldDecorator('date', { initialVal

List 泛型,傳遞引數子類,呼叫方法接收父類問題總結

list<子類> child list<父類> fatherpublic void xxx(? extends list<父類>){} 呼叫方法接受引數為list<父類>,public void xxx(? extends

Sqlite3的自增長欄位設定初始0

sqlite3記錄被清除之後,如果表中有自增長欄位,下次再插入資料,會繼續延續之前自增長欄位的歷史記錄。 清除方法: 在Sqlite3建立帶自增長欄位的表時,Sqlite3會建立這個表存放自增長序列: “sqlite_sequence” 可以用Create、Read

ES6-函式的擴充套件-函式引數預設

1)基本用法 ES6 之前,不能直接為函式的引數指定預設值。 function log(x, y) { y = y || 'World'; console.log(x, y); } log('Hello') // Hello World log('Hello'

mybatis配置常用引數預設

<settings> <setting name="cacheEnabled" value="true"/> <setting name="lazyLoadingEnabled" value="true"/> <setting name="multiple

C函式與彙編函式之間引數及返回傳遞方法

AAPCS對ARM結構的一些標準做了定義,在這裡我們只重點介紹函式呼叫部分,如圖8所示,AAPCS為ARM的R0~R15暫存器做了定義,明確了它們在函式中的職責: 圖 8 AAPCS關於ARM暫存器的定義 一、函式呼叫時的規則如下: 1、 父函式與子

如何檢視jvm中的各種引數以及預設

1 標準引數 標準引數(-),所有的JVM實現都必須實現這些引數的功能,而且向後相容; 通過命令 java即可檢視 如下 where options include: -d32 use a 32-bit data model