日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle 9i 只读模式,我的oracle 9i学习日志(6)--Starting Up and shutting down a Database

發布時間:2023/12/10 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle 9i 只读模式,我的oracle 9i学习日志(6)--Starting Up and shutting down a Database 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Starting Up a Database

1、NOMOUNT

這個狀態下oracle server完成下列任務:

a.讀取初始化參數文件;

b.為SGA分配內存;

c.啟動后臺進程;

d.打開alertSID.log文件和跟蹤文件

數據庫必須被命名,即初始化文件或在startup命令里指定DB_NAME的值。

2、MOUNT

關聯一個數據庫與在nomount啟動的instance;定位并打開按參數文件指定的control files;讀取數據文件和重做日志文件的名字和狀態。但在這個階段不會確認數據文件和重做日志文件的存在。

在這個階段只能做一些指定數據庫維護工作,如:重命名數據文件、開啟或關閉歸檔模式、數據恢復(這些操作只能在此狀態下做)。

3、OPEN

打開數據庫文件和重做日志文件。這時數據庫就可以被正常訪問。這個階段會確認相關文件能否被打開和數據庫記錄的一致性,否則會報錯。如果有必要SMON將開始恢復工作。

4、STARTUP Command

STARTUP [FORCE] [RESTRICT] [PFILE=filename][OPEN[RECOVER][database]|MOUNT|NOMOUNT]

force:強制啟動或關閉(相當于執行shutdown abort)正在運行的instance,并重新啟動。常在數據庫無法正常啟動(可能是由于上次關閉instance后內存空間分配不正常所致)的情況下使用。?

restrict:只允許有RESTRICTED SESSION特權的用戶訪問

pfile:指定啟動的pfile文件。

open recover db0:啟動時恢復數據。

nomount/mount:啟動數據庫至nomount或mount狀態。

5、將數據庫從nomount狀態轉變成mount狀態或從mount狀態轉變為open狀態:ALTER DATABASE { MOUNT | OPEN }。注意:不能從nomount狀態直接轉變為open狀態,啟動順序只能是這樣:shutdown->nomount->mount->open->shutdown。

6、Restricted Mode

在限制模式下,只有擁有限制會話特權的用戶可以登錄。

進入限制模式有兩種方式:STARTUP RESTRICT? 或?? ALTER SYSTEM ENABLE RESTRICTED SESSION;

啟用或禁用restrict模式:ALTER SYSTEM [ {ENABLE|DISABLE} RESTRICTED SESSION ]。

7、終止一個會話

用于在將數據庫置于restrict模式下時可能要終止其他用戶的會話,或管理員主動終止某個用戶的會話。

ALTER SYSTEM KILL SESSION 'integer1,integer2'

? integer1: Value of the SID column in the V$SESSION view

? integer2: Value of the SERIAL# column in the V$SESSION view

終止會話過程:

a.回滾用戶當前事務

b.釋放當前鎖定的表或行

c.釋放保留給客戶的資源

8、只讀模式

在mount狀態下用下面命令可以切換到只讀模式:

ALTER DATABASE OPEN? READ ONLY;

在mount狀態下用下面命令可以切換到一般模式:

ALTER DATABASE OPEN READ WRITE;

只讀模式只是不產生redo log file,所以只要不涉及產生重做數據的操作都可以做,如:數據庫恢復、數據庫文件的offline和online 等。

注意:只讀模式和一般模式不能互相切換。

問題:

SQL> alter database open read only;

alter database open read only

*

ERROR at line 1:

ORA-16005: database requires recovery

ALTER DATABASE OPEN [READ WRITE| READ ONLY]

解決方案:SQL> startup open recover lty(數據庫名字)

Shutting Down the Database

注:A = ABORT???? I = IMMEDIATE???? T = TRANSACTIONAL???? N = NORMAL

命令:SHUTDOWN [NORMAL | TRANSACTIONAL | IMMEDIATE | ABORT ]

shutdown normal:不建立新連接;將redo buffers里的內容寫入磁盤;關閉instance前必須所有等待用戶主動斷開連接;

查看未提交的事務:

SQL> select addr,status from v$transaction;

ADDR? STATUS

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

59AF4CF4 ACTIVE

shutdown immediate:不建立新連接;中斷正在執行的sql語句;回滾未提交的事務;斷開在線用戶;將redo buffers里的內容寫入磁盤;關閉instance。

shutdown transactional:不建立新連接;客戶端無法發起新的事務;客戶端事務處理完成后斷開客戶端連接;將redo buffers里的內容寫入磁盤;關閉instance。

shutdown abort:立即關閉instance;redo buffers里的內容不會寫入磁盤;下次啟動會自動執行數據庫恢復程序。

總結

以上是生活随笔為你收集整理的oracle 9i 只读模式,我的oracle 9i学习日志(6)--Starting Up and shutting down a Database的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。