国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > Oracle > 正文

使用Oracle9i的新特征-停頓(QUIESCING)數(shù)據(jù)庫(kù)

2024-08-29 13:49:13
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

  
原作者:Sameer Wadhwa

停頓(Quiescing)一個(gè)數(shù)據(jù)庫(kù)是一個(gè)強(qiáng)大的新特征,使得DBA可以完成一些數(shù)據(jù)庫(kù)處于受限模式(restricted mode)才能完成的一些操作。使用這個(gè)特征,當(dāng)以sys或system帳戶登陸后,DBA可以執(zhí)行查詢,PL/SQL,和進(jìn)行其它的一些事務(wù)。 而所有其它用戶的會(huì)話都將處于暫停(suspended)的狀態(tài),一旦DBA把數(shù)據(jù)庫(kù)置回到正常模式,用戶的這些會(huì)話又將會(huì)自動(dòng)繼續(xù)運(yùn)行了。



圖 1a:數(shù)據(jù)庫(kù)處于正常狀態(tài) .



圖 1b: 數(shù)據(jù)庫(kù)處于狀態(tài).

圖1a是數(shù)據(jù)庫(kù)處于正常模式的系統(tǒng)狀態(tài),在這種模式中DBA和用戶的事務(wù)都是運(yùn)行著的。一些DBA的事務(wù)是被限制著的,因?yàn)閿?shù)據(jù)庫(kù)必須處于受限模式時(shí)才可以運(yùn)行這些事務(wù)。相反的方面,圖1b是數(shù)據(jù)庫(kù)處于停頓狀態(tài)的情況,在圖中,所有用戶的事務(wù)都是被阻塞(blocked)著的,而沒(méi)有重啟數(shù)據(jù)庫(kù)到受限模式,DBA的事務(wù)也毫無(wú)問(wèn)題的運(yùn)行著。

 

一旦所有活動(dòng)的會(huì)話都執(zhí)行了commit或rollback,數(shù)據(jù)庫(kù)將會(huì)被停頓。

讓我們看一下它是如何進(jìn)行的。停頓數(shù)據(jù)庫(kù)所用的主要的命令為ALTER SYSTEM QUIESCE RESTRICTED;我將首先使用SQLPLUS登陸執(zhí)行這個(gè)操作。

C:/> U:/>sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - PRodUCtion on Wed Apr 16 16:08:27 2003

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> connect sys/change_on_install as sysdba
Connected.

SQL> ALTER SYSTEM QUIESCE RESTRICTED;
ALTER SYSTEM QUIESCE RESTRICTED
*
ERROR at line 1:
ORA-25507: resource manager has not been continuously on

如上的錯(cuò)誤表明資源治理器(resource manager)是非活動(dòng)的,要使它活動(dòng)你可以這樣:

SQL> alter system set resource_manager_plan='SYSTEM_PLAN' scope=spfile sid='OR9I';

System altered.

OR9i 是我的SID.

做完這個(gè)操作你不得不重啟一下數(shù)據(jù)庫(kù)了。

SQL> show parameter RESOURCE_MANAGER_PLAN

NAME                                 TYPE        VALUE

------------------------------------ ----------- ----------------

resource_manager_plan                string      SYSTEM_PLAN

SQL> ALTER SYSTEM QUIESCE RESTRICTED;

System altered.

假如有一些未決的事務(wù)需要提交或回滾的話,先前的那條命令將會(huì)掛起而等待事務(wù)的完成。如想確定是哪些用戶的會(huì)話沒(méi)提交或回滾,你可以用如下的語(yǔ)句。

SELECT S.SID,S.SERIAL#,S.MACHINE,S.TERMINAL,S.USERNAME
FROM V$session S WHERE S.SID IN
(SELECT SID FROM V$LOCK WHERE TYPE='TX')
/

查詢的結(jié)果將會(huì)提供充足的信息使你能夠要求那些用戶提交、回滾或終止他們的事務(wù)。更壞一點(diǎn)的情況是你可以殺掉這些會(huì)話,會(huì)話將被被自動(dòng)回滾。系統(tǒng)處于停頓狀態(tài)后,你就可以不受其它用戶的干擾進(jìn)行工作了,完成工作后你可以用如下命令解除這種停頓的狀態(tài):

SQL> ALTER SYSTEM UNQUIESCE;

System altered.
情景1:
事務(wù)順序

用戶會(huì)話

DBA 會(huì)話

(1)

Connected with SCOTT

SQL> update emp3 set

ename='John'

where ename='samir';

Connected with SYS

(2)

 

SQL> ALTER SYSTEM QUIESCE RESTRICTED;

 

等待用戶SCOTT完成事務(wù).

(3)

SQL> commit;

 

Commit complete.

 

(4)

 

System altered.

第一種情景表明,在所有活動(dòng)的事物完成前DBA是不能停頓數(shù)據(jù)庫(kù)的。
一旦數(shù)據(jù)庫(kù)停頓了,庫(kù)對(duì)其它的用戶呈現(xiàn)的是停止(halt)或非活動(dòng)(inactive)的狀態(tài)。然后當(dāng)數(shù)據(jù)庫(kù)變?yōu)檎顟B(tài)后,所有的數(shù)據(jù)塊和暫停的事務(wù)又繼續(xù)運(yùn)行了。

情景 2:

事務(wù)順序

用戶 會(huì)話

DBA 會(huì)話

(1)

Connected with Scott User .

Connected with SYS.

SQL> ALTER SYSTEM QUIESCE RESTRICTED;

System altered.

(2)

Select * from EMP;

wait for result

 

(3)

 

SQL> ALTER SYSTEM UNQUIESCE;

System altered.

 

EMPNO   ENAME   SALARY

---------    ----------   ----------

1       Sasa    1000

2       John    5000

3       Hema    7000

User can see the results.

 

情景2表明它如何影響了用戶的會(huì)話。簡(jiǎn)而言之,此時(shí)系統(tǒng)對(duì)于最終用戶是臨時(shí)的無(wú)效。
通常的一些問(wèn)題:
 (Q)做為DBA的你如何檢查你的數(shù)據(jù)庫(kù)是什么狀態(tài)呢?

(A)你可以檢查V$INSTANCE視圖中的ACTIVE_STATE這上字段。

SQL> SELECT ACTIVE_STATE FROM V$INSTANCE;

ACTIVE_ST

---------

NORMAL

ACTIVE_STATE有如下幾個(gè)可能值:

Active_state

描述
Normal
數(shù)據(jù)庫(kù)處于正常狀態(tài)

QUIESCING

DATABASE wants to QUIESCED but waiting for active running transactions to finish.

數(shù)據(jù)庫(kù)要想停頓,但要等待活動(dòng)的運(yùn)行事務(wù)完成。

 

 

Quiesced

數(shù)據(jù)庫(kù)處于停頓的狀態(tài)了.

 

(Q)怎樣確定哪些連接著庫(kù)的會(huì)話在等待停頓著的數(shù)據(jù)庫(kù)呢?

(A)可以用如下的查詢來(lái)確定:

SELECT SID,EVENT,TOTAL_WAITS,TIME_WAITED "TIME WAITED[100 OF SEC]",

AVERAGE_WAIT FROM V$SESSION_EVENT

WHERE EVENT='wait for possible QUIESCE finish'

/

SQL> 

SID EVENT                              TOTAL_WAITS            Time Waited[100 of Sec] AVERAGE_WAIT

--- ---------------------------------- -----------            ----------------------- ------------

  6 wait for possible QUIESCE finish           412                             126532          307

"wait for possible QUIESCE finish"這個(gè)事件表明會(huì)話正等著“正停頓”的數(shù)據(jù)庫(kù)以至于它不能進(jìn)行它的事物。庫(kù)停頓后這些會(huì)話將呈現(xiàn)hung的狀態(tài)。

 (Q)在停頓數(shù)據(jù)庫(kù)之前,對(duì)于資源治理器計(jì)劃(resource manager plan) 需要做什么設(shè)定?

(A)  當(dāng)你停頓了數(shù)據(jù)庫(kù),INTERNAL_QUIESCE資源計(jì)劃被激活了。除SYS_GROUPS其它所有的資源組中的ACTIVE_SESS_POOL_P1應(yīng)被設(shè)置為0。因SYS和SYSTEM用戶都屬于SYS_GROUPS組,所以只有它們可以連接到數(shù)據(jù)庫(kù)。

要查看細(xì)節(jié)的信息可以查詢DBA_RSRC_PLAN_DIRECTIVES這個(gè)視圖。


記著如下幾點(diǎn):
處于停頓狀態(tài)的數(shù)據(jù)庫(kù)只有SYS和SYSTEM是有效的用戶來(lái)執(zhí)行維護(hù)的工作;其它有DBA權(quán)限的用戶也被視為一般的用戶。 在停頓的數(shù)據(jù)庫(kù)中備份數(shù)據(jù)文件(泠備,拷貝數(shù)據(jù)文件)是無(wú)效的。假如庫(kù)中有“活動(dòng)”的事務(wù),庫(kù)是不能被停頓的。.
需要啟動(dòng)數(shù)據(jù)庫(kù)以設(shè)置資源計(jì)劃
停頓數(shù)據(jù)是9i的新特征,因此之前的版本中是不能用的。
結(jié)論:

停頓數(shù)據(jù)庫(kù)是一個(gè)強(qiáng)大的特征使DBA不必重啟數(shù)據(jù)庫(kù)就可以執(zhí)行一些非凡的維護(hù)工作。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 山东| 民和| 阿克陶县| 景泰县| 柳林县| 阿拉善左旗| 辉南县| 丹阳市| 德钦县| 九龙城区| 中牟县| 龙胜| 喀喇| 灵川县| 越西县| 西充县| 湖北省| 浦东新区| 五莲县| 浮山县| 雷波县| 广河县| 鄂托克前旗| 松桃| 武冈市| 闻喜县| 福海县| 正定县| 黑龙江省| 霍林郭勒市| 南岸区| 京山县| 文登市| 通辽市| 宁明县| 古浪县| 陇川县| 攀枝花市| 大化| 军事| 石河子市|