天天看點

修改資料庫的參數

前言:

      上一篇講解了資料庫的幾種參數檔案,本文再接再厲繼續在實驗中說明資料庫參數的修改方法和一些事項;在工作的過程中有些參數的修改直接修改了就生效,而有些參數修改了需要重新開機才能生效,在下面的實驗中也為大家介紹怎麼去檢視這個參數修改後是否需要重新開機;

1、了解資料庫參數的屬性:

腳本:

 COLUMN VALUE FORMAT a40;

 COLUMN NAME FORMAT a20;

SELECT NAME,VALUE,ISSES_MODIFIABLE,ISSYS_MODIFIABLE  FROM V$SYSTEM_PARAMETER 

修改資料庫的參數

2、參數屬性說明:

有兩個列值:

ISSES_MODIFIABLE 是指SESSION級别的修改,有兩種值FALSE和TRUE

TURE代表能對目前的SEEION生效,也隻能對目前的SESSION生效;

FALSE代表不能修改;

ISSYS_MODIFIABLE 是指SYSTEM級别的修改,有三種值FALSE、IMMEDIATE、DEFERRED;

IMMEDIATE    動态參數,且立即生效;

DEFERRED       動态參數,對以後建立的SESSION生效,仍然連接配接的SESSION保持原有屬性

FALSE                靜态參數,必須重新開機才能生效;

3、測試:

3.1 ISSES_MODIFIABLE 測試SESSION的修改

3.1.1  ISSES_MODIFIABLE 為true的測試

修改資料庫的參數

ALTER SESSION  set optimizer_index_cost_adj=100;

SELECT NAME,VALUE,ISSES_MODIFIABLE,ISSYS_MODIFIABLE  FROM V$SYSTEM_PARAMETER where name='optimizer_index_cost_adj';

3.1.2 ISSES_MODIFIABLE 為false的測試

修改資料庫的參數

SELECT NAME,VALUE,ISSES_MODIFIABLE,ISSYS_MODIFIABLE  FROM V$SYSTEM_PARAMETER where name='db_files';

ALTER SESSION  set   db_files=210;

3.2 ISSYS_MODIFIABLE  測試SYSTEM的修改

 3.2.1 ISSYS_MODIFIABLE為IMMEDIDATE的測試

修改資料庫的參數

3.2.2  ISSYS_MODIFIABLE為DEFERRED的測試

在目前session下面修改參數,并删除表

A) SELECT NAME,VALUE,ISSES_MODIFIABLE,ISSYS_MODIFIABLE  FROM V$SYSTEM_PARAMETER where name='recyclebin';

show parameter recyclebin; ------檢查參數recyclebin的屬性;

修改資料庫的參數

---------顯示目前的recyclebin屬性;

C) ALTER SYSTEM  SET recyclebin=OFF DEFERRED ------ 修改目前的參數;

D) 删除JOHN下面的表A1;

E)經檢視該表還在資源回收筒中;-------說明目前session的recyclebin未生效

切換退出目前session并重新登陸,并删除表;

修改資料庫的參數

官網對DEFERRED的解釋:

The ALTER SYSTEM statement without the DEFERRED keyword modifies the global value of the parameter for all sessions in the instance, for the duration of the instance (until the database is shut down). The value of the following initialization parameters can be changed with ALTER SYSTEM:

3.2.3  ISSYS_MODIFIABLE為FALSE的測試

SELECT NAME,VALUE,ISSES_MODIFIABLE,ISSYS_MODIFIABLE  FROM V$SYSTEM_PARAMETER where name='memory_max_target';

修改資料庫的參數

說明:對于ISSYS_MODIFIABLE為FALSE的參數,隻能在修改的時候指定scope=spfile,并隻能在重新開機後才能生效;

4、幾個參數的使用總結如下:

參數類型

scope=spfile

scope= memory

scope= both

deferred

靜态參數

重新開機資料庫生效

不允許使用

動态參數(immediate)

立即生效,重新開機資料庫失效

立即生效,重新開機資料庫依然有效

動态參數(deferred)

允許使用

........................................................................................................................................................................本文作者:JOHN 

ORACLE技術部落格:ORACLE 獵人筆記               資料庫技術群:367875324 (請備注ORACLE管理 )  

........................................................................................................................................................................