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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

oracle立即关闭数据库,Oracle数据库的起步和关闭

發布時間:2024/9/27 数据库 82 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle立即关闭数据库,Oracle数据库的起步和关闭 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Oracle數據庫的啟動和關閉

要啟動和關閉數據庫,必須要以具有Oracle 管理員權限的用戶登陸,通常也就是以具有SYSDBA權限的用戶登陸,啟動一個數據庫需要三個步驟:

1、 創建一個Oracle實例(非安裝階段)

2、 由實例安裝數據庫(安裝階段)

3、 打開數據庫(打開階段)

在Startup命令中,可以通過不同的選項來控制數據庫的不同啟動步驟。

1、STARTUP NOMOUNT

NONOUNT選項僅僅創建一個Oracle實例。讀取init.ora初始化參數文件、啟動后臺進程、初始化系統全局區(SGA)。Init.ora文件定義了實例的配置,包括內存結構的大小和啟動后臺進程的數量和類型等。實例名根據Oracle_SID設置,不一定要與打開的數據庫名稱相同。當實例打開后,系統將顯示一個SGA內存結構和大小的列表,如下所示:

SQL> startup nomount

ORACLE 例程已經啟動。

Total System Global Area 35431692 bytes

Fixed Size 70924 bytes

Variable Size 18505728 bytes

Database Buffers 16777216 bytes

Redo Buffers 77824 bytes

2、STARTUP MOUNT

該命令創建實例并且安裝數據庫,但沒有打開數據庫。Oracle系統讀取控制文件中關于數據文件和重作日志文件的內容,但并不打開該文件。這種打開方式常在數據庫維護操作中使用,如對數據文件的更名、改變重作日志以及打開歸檔方式等。在這種打開方式下,除了可以看到SGA系統列表以外,系統還會給出"數據庫裝載完畢"的提示。

在此期間可以:

重命名數據文件;

添加、撤消或重命名重做日志文件;

啟動和禁止重做日志歸檔;

執行全部的數據庫恢復。

3、STARTUP

該命令完成創建實例、安裝實例和打開數據庫的所有三個步驟。此時數據庫使數據文件和重作日志文件在線,通常還會請求一個或者是多個回滾段。這時系統除了可以看到前面Startup Mount方式下的所有提示外,還會給出一個"數據庫已經打開"的提示。此時,數據庫系統處于正常工作狀態,可以接受用戶請求。

如果采用STARTUP NOMOUNT或者是STARTUP MOUNT的數據庫打開命令方式,必須采用ALTERDATABASE命令來執行打開數據庫的操作。例如,如果你以STARTUP NOMOUNT方式打開數據庫,也就是說實例已經創建,但是數據庫沒有安裝和打開。這是必須運行下面的兩條命令,數據庫才能正確啟動。

ALTER DATABASE MOUNT;

ALTER DATABASE OPEN;

而如果以STARTUP MOUNT方式啟動數據庫,只需要運行下面一條命令即可以打開數據庫:

ALTER DATABASE OPEN.

4、其他打開方式

除了前面介紹的三種數據庫打開方式選項外,還有另外其他的一些選項。

(1) STARTUP RESTRICT

這種方式下,數據庫將被成功打開,但僅僅允許一些特權用戶(具有DBA角色的用戶)才可以使用數據庫。這種方式常用來對數據庫進行維護,如數據的導入/導出操作時不希望有其他用戶連接到數據庫操作數據。

在此期間可以:

執行結構維護,如重建索引;

執行數據庫文件的導入導出;

執行數據裝載

(2) STARTUP FORCE

該命令其實是強行關閉數據庫(shutdown abort)和啟動數據庫(startup)兩條命令的一個綜合。該命令僅在關閉數據庫遇到問題不能關閉數據庫時采用。

(3) ALTER DATABASE OPEN READ ONLY;

該命令在創建實例以及安裝數據庫后,以只讀方式打開數據庫。對于那些僅僅提供查詢功能的產品數據庫可以采用這種方式打開。

對于數據庫的關閉,有四種不同的關閉選項

1、SHUTDOWN NORMAL

這是數據庫關閉SHUTDOWN命令的確省選項。也就是說如果你發出SHUTDOWN這樣的命令,也即是SHUTDOWN NORMAL的意思。

發出該命令后,任何新的連接都將再不允許連接到數據庫。在數據庫關閉之前,Oracle將等待目前連接的所有用戶都從數據庫中退出后才開始關閉數據庫。采用這種方式關閉數據庫,在下一次啟動時不需要進行任何的實例恢復。但需要注意一點的是,采用這種方式,也許關閉一個數據庫需要幾天時間,也許更長。

2、SHUTDOWN IMMEDIATE

這是我們常用的一種關閉數據庫的方式,想很快地關閉數據庫,但又想讓數據庫干凈的關閉,常采用這種方式。

當前正在被Oracle處理的SQL語句立即中斷,系統中任何沒有提交的事務全部回滾。如果系統中存在一個很長的未提交的事務,采用這種方式關閉數據庫也需要一段時間(該事務回滾時間)。系統不等待連接到數據庫的所有用戶退出系統,強行回滾當前所有的活動事務,然后斷開所有的連接用戶。

3、SHUTDOWN TRANSACTIONAL

該選項僅在Oracle 8i后才可以使用。該命令常用來計劃關閉數據庫,它使當前連接到系統且正在活動的事務執行完畢,運行該命令后,任何新的連接和事務都是不允許的。在所有活動的事務完成后,數據庫將和SHUTDOWN IMMEDIATE同樣的方式關閉數據庫。

4、SHUTDOWN ABORT

這是關閉數據庫的最后一招,也是在沒有任何辦法關閉數據庫的情況下才不得不采用的方式,一般不要采用。如果下列情況出現時可以考慮采用這種方式關閉數據庫。

1、數據庫處于一種非正常工作狀態,不能用shutdown normal或者shutdown immediate這樣的命令關閉數據庫;

2、需要立即關閉數據庫;

3、在啟動數據庫實例時遇到問題;

所有正在運行的SQL語句都將立即中止。所有未提交的事務將不回滾。Oracle也不等待目前連接到數據庫的用戶退出系統。下一次啟動數據庫時需要實例恢復,因此,下一次啟動可能比平時需要更多的時間。

表1可以清楚地看到上述四種不同關閉數據庫的區別和聯系。

表1 Shutdown數據庫不同方式對比表

關閉方式

A

I

T

N

允許新的連接

×

×

×

×

等待直到當前會話中止

×

×

×

等待直到當前事務中止

×

×

強制CheckPoint,關閉所有文件

×

其中:A-Abort I-Immediate T-Transaction N-Nornal

總結

以上是生活随笔為你收集整理的oracle立即关闭数据库,Oracle数据库的起步和关闭的全部內容,希望文章能夠幫你解決所遇到的問題。

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