1. 程式人生 > >oracle資料庫的靜默(Quiesce)狀態

oracle資料庫的靜默(Quiesce)狀態

一、靜默狀態(quiesce state)的用處

1、在資料庫靜默狀態的時候,只允許dba(這裡dba指sysdba或sysoper)執行資料庫操作;
2、在oracle9i及之前,要達到靜默狀態的功能,只能重啟資料庫到限制模式(restricted mode);

二、將資料庫設定為靜默狀態的方法是使用"ALTER SYSTEM QUIESCE RESTRICTED"語句。
這個語句會等待所有active session變為noactive 狀態時完成。

[@[email protected]]

1、用scott使用者,開啟一個事務,不提交

[email protected]
[/home/oracle]> sqlplus scott/tiger

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Mar 10 10:17:36 2010

Copyright (c) 1982, 2005, Oracle. All rights reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
[email protected]
> update emp set sal=sal+1 where empno=7934;

1 row updated.
[email protected]>

2、用sys使用者發起將資料庫設定為靜默狀態的語句,發現這個語句處於等待狀態

[email protected][/home/oracle]> sqlplus / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Mar 10 10:23:13 2010

Copyright (c) 1982, 2005, Oracle. All rights reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

[email protected]
> alter system quiesce restricted;

3、scott使用者提交事務

這裡提交語句不會返回結果,因為只要語句一執行,資料庫馬上進入了靜默狀態,只有資料庫切換到正常狀態後,這裡才會顯示結果

[email protected]> commit;

4、二.2步驟sys使用者提交的語句成功,資料庫進入靜默狀態

System altered.

[email protected]>

三、當資料庫處於靜默狀態的時候,非dba使用者的操作(如登入),將處於等待狀態,直到資料庫切換到正常狀態後才能完成

[email protected]> conn scott/tiger

四、查詢資料庫是否處於靜默狀態的方法

[email protected]> select active_state from v$instance;

ACTIVE_ST
---------
QUIESCED

五、將資料庫由非靜默狀態切換到正常狀態,步驟"二.3"和步驟"三"處於等待狀態的操作完成

[email protected]> alter system unquiesce;

System altered.

--end--

相關推薦

oracle資料庫靜默(Quiesce)狀態

一、靜默狀態(quiesce state)的用處 1、在資料庫靜默狀態的時候,只允許dba(這裡dba指sysdba或sysoper)執行資料庫操作; 2、在oracle9i及之前,要達到靜默狀態的功能,只能重啟資料庫到限制模式(restricted mode); 二、將資料庫設定為靜默狀態的方法是使

檢視Oracle資料庫例項啟動狀態

SQL> conn / as sysdba 已連線到空閒例程。 SQL> startup nomount ORACLE 例程已經啟動。 Total System Global Area 534462464 bytes Fixed Size 21

ORACLE資料庫的三種狀態:RESTRICT、QUIESCE和SUSPEND

bash-2.03$ srvctl status db -d testracInstance testrac1 is running on node racnode1Instance testrac2 is running on node racnode2Instance testrac3 is runnin

oracle】dual在資料庫不同啟動狀態其欄位數

dual在資料庫不同啟動狀態其欄位數 不經意間在《oracle DBA工作日記》看到dual這個系統表在資料庫nomount、mount、open狀態其欄位不一樣,驗證後記錄如下: --關閉資料庫   SQL> shutdown immediate Database cl

OEL7 0 上靜默安裝oracle資料庫

                OEL7.0 上靜默安裝oracle資料庫 靜默安裝本人使用的也比較少,基本上不需要使用靜默安裝。就算是文字安裝的系統,也使用Xmanager 來重定向圖形化。但是萬事總有個例外的,比如在MAC 作業系統上,貌似沒有Xmananger , 那該上虛擬機器如果只裝了文字介面就只能

Linux 安裝 Oracle 11g——靜默建立資料庫(RAC)

dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbName orcl -sid orcl -sysPassword

oracle資料庫軟體的靜默安裝

  OUI的安裝方式便捷、直觀,但是有時候出於一些原因(PS:網路等原因),無法在伺服器上使用OUI的方式,此時就只有用命令列來進行安裝了。 1、配置核心引數(root使用者) vim /etc/sysctl.conf kernel.shmmax = 784676864 k

利用DBCA靜默安裝oracle資料庫

在之前寫了一篇靜默安裝資料庫軟體的博文(http://blog.csdn.net/u010343795/article/details/54943355),此時也可以在reponse檔案中配置同時建立資料庫。資料庫安裝方式有很多,最常見的DBCA圖形建庫,這也是網上介紹最多

ORACLE資料庫nomount,mount以及open狀態

一.nomount:讀引數檔案,啟動例項和後臺程序 以sysdba身份登入:sqlplus / as sysdba sql>startup nomount sql>select statu

Oracle學習筆記—oracle體系架構及狀態(nomount、mount和open)簡介

位置 正常 處理 管理 共享服務器 體系 操作記錄 sysdba png oracle體系架構簡介 先來簡要了解一下Oracle數據庫體系架構以便於後面深入理解,Oracle Server主要由實例(instance)和數據庫(database)組成。實例(instance

Oracle數據庫狀態

write alt read mathjax div math oba redo mode 狀態查詢 實驗過程 SQL> startup nomount; ORACLE instance started. Total System Global Area

Oracle 11g靜默安裝

run 登錄 cluster edi 數據庫類型 al32utf8 就是 目錄 bak 1、檢查安裝包yum -y install gcc make binutils gcc-c++ compat-libstdc++-33 elfutils-libelf-devel elf

CentOS6.5內 Oracle 11GR2靜默安裝

reat man 完成後 配置文件 head temp ima arguments ali 一、修改配置文件 1.1、修改/etc/security/limits.conf文件,修改用戶的SHELL的限制。 輸入命令:vi /etc/security/limits.conf

MySQL、SQL server 、Oracle資料庫中查詢所有的資料庫,查詢指定資料庫所有表名,查詢所有的欄位的名字

MySQL中查詢所有資料庫名和表名 1.查詢所有資料庫 show databases; 2.查詢指定資料庫中所有表名 select table_name from information_schema.tables where table_schema='database_name' a

Oracle資料庫自定義函式練習

--測試函式3 CREATE OR REPLACE FUNCTION FN_TEST3 (NUM IN VARCHAR2) RETURN VARCHAR2 IS TYPE VARCHAR2_ARR IS TABLE OF VARCHAR2(300); NUMARR VARCHAR2_ARR; TEMPN

修改計算機名之後,oracle資料庫無法連線!!!

使用Oracle SQL Developer連線資料庫時,提示“執行請求的操作時遇到錯誤:IO 錯誤: The Network Adapter could not establish” 世界真奇妙,你永遠無法知道你接下來會犯什麼低階錯誤!!! 事情是這樣的,在昨天晚上

Oracle資料庫行顯示轉換成列顯示--pivot的應用

Create table tmp(types varchar(22) primary key,num int,maps int); insert into tmp (types, num, maps)values ('計劃收儲', 635, 50252909); insert into tm

Oracle資料庫分批插入資料的指令碼

1、指令碼如下: --分批提交指令碼 declare Type v_rowid is table of varchar2(100) index by binary_integer; --定義rowid型別 var_rowid v_rowid; --定義rowid變數 cursor

Oracle資料庫新增時間戳欄位的觸發器

在最近通過webservices介面同步增量資料時。發現在同步之前發現沒有獲取到增加的資料集。檢查程式碼發現發現做了update操作時,時間戳欄位沒有更新。或者insert操作時,沒有預設給時間戳欄位一個系統當前的值。所以在資料庫層面做了一個觸發器。如下SQL語句 CREATE OR REP

因為NLS_LANG 造成 Oracle資料庫丟失 中文字符集相容問題的處理.

接著上一封blog. 因為sqlplus的 亂碼問題 我修改了 登錄檔裡面 NLS_LANG 的 value值.主要改動為: NLS_LANG source: SIMPLIFIED CHINESE_CHINA.ZHS16GBK target: AMERICAN 然後 發現sqlplus的正