IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當前所在位置: 首頁數(shù)據(jù)庫Oracle → oracle的啟動方式和相關(guān)的命令匯總

oracle的啟動方式和相關(guān)的命令匯總

時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(1)

  本文主要是對oracle的啟動方式和相關(guān)的命令參數(shù)進行一個匯總,用以加深印象。

  Oracle的啟動方式:

  startup nomount

  startup mount

  startup open (startup的默認選項)

  其他常用的參數(shù):read only ,read write ,force,restrict

  這些參數(shù)可以一起使用,比如 startup 與 startup open read write 是一樣的效果。

  Oracle的啟動過程:啟動實例 -> 裝載數(shù)據(jù)庫 -> 打開數(shù)據(jù)庫

  與之對應(yīng)的讀取相應(yīng)文件的順序: 參數(shù)文件 -> 控制文件 -> 數(shù)據(jù)文件

  我們驗證一下這些步驟的區(qū)別:

  startup nomount

  使用nomount方式啟動數(shù)據(jù)庫時,表示只啟動數(shù)據(jù)庫實例,不裝載數(shù)據(jù)庫,不打開數(shù)據(jù)庫

  這時只讀取參數(shù)文件,主要有兩部分工作:一是分配內(nèi)存SGA區(qū),二是啟動Oracle后臺進程

  如下我們修改oracle參數(shù)文件的名稱,并以nomount 的方式啟動數(shù)據(jù)庫

  這里需要將pfile,spfile 都進行修改,數(shù)據(jù)庫默認使用spfile啟動,在找不到spfile時用pfile啟動。


  [oracle@localhost?dbs]$?pwd
  /oracle/orc10g/product/10.1.0/db_1/dbs
  [oracle@localhost?dbs]$?mv?initorcl.ora?initorcl1.ora
  [oracle@localhost?dbs]$?mv?spfileorcl.ora?spfileorcl1.ora
  SYS@orcl>shutdown?abort
  ORACLE?instance?shut?down.
  SYS@orcl>startup?nomount
  ORA-01078:?failure?in?processing?system?parameters
  LRM-00109:?could?not?open?parameter?file?'/oracle/orc10g/product/10.1.0/db_1/dbs/initorcl.ora'
  SYS@orcl>

  #保持參數(shù)文件正確,修改控制文件名稱


  [oracle@localhost?orcl]$?pwd
  /oracle/orc10g/oradata/orcl
  [oracle@localhost?orcl]$?mv?control01.ctl?control01a.ctl
  [oracle@localhost?orcl]$?mv?control02.ctl?control02a.ctl
  [oracle@localhost?orcl]$?mv?control03.ctl?control03a.ctl
  .....
  SYS@orcl>startup?nomount
  ORACLE?instance?started.
  Total?System?Global?Area?167772160?bytes
  Fixed?Size?778212?bytes
  Variable?Size?61874204?bytes
  Database?Buffers?104857600?bytes
  Redo?Buffers?262144?bytes
  SYS@orcl>

  在nomount的方式下修改控制文件名稱,并沒有報錯。說明在nomount的方式下,并沒有讀取控制文件。

  繼續(xù)以上的步驟,我們以mount的方式啟動:


  SYS@orcl>alter?database?mount;
  alter?database?mount
  *
  ERROR?at?line?1:
  ORA-00205:?error?in?identifying?controlfile,?check?alert?log?for?more?info

  裝載數(shù)據(jù)庫時,需要讀取控制文件確定數(shù)據(jù)文件的位置。

  繼續(xù)上面的例子,我們將控制文件修改正確,使數(shù)據(jù)庫可以正確的找到控制文件,

  我們修改數(shù)據(jù)文件的名稱.


  [oracle@localhost?orcl]$?mv?tp_test.dbf?tp_test1.dbf
  .....
  SYS@orcl>startup?mount
  ORACLE?instance?started.
  Total?System?Global?Area?167772160?bytes
  Fixed?Size?778212?bytes
  Variable?Size?61874204?bytes
  Database?Buffers?104857600?bytes
  Redo?Buffers?262144?bytes
  Database?mounted.

  雖然我修改了數(shù)據(jù)文件,但是在mount的方式下,并沒有報錯。說明在mount的方式下,啟動過程只讀取了參數(shù)文件和控制文件。

  下面我們打開數(shù)據(jù)庫。


  SYS@orcl>alter?database?open
  2?;
  alter?database?open
  *
  ERROR?at?line?1:
  ORA-01157:?cannot?identify/lock?data?file?5?-?see?DBWR?trace?file
  ORA-01110:?data?file?5:?'/oracle/orc10g/oradata/orcl/tp_test.dbf'

  提示我們找不到tp_test.dbf這個文件了。

  至此我們大概的了解了數(shù)據(jù)庫的啟動過程以及啟動過程中每一步驟的所做的工作和讀取的文件。

  總結(jié)如下:oracle按照如下過程啟動數(shù)據(jù)庫

  nomount

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

  啟動實例 | mount

  (參數(shù)文件) |---------------

  | 裝載數(shù)據(jù)庫 | open

  (控制文件) |-----------

  | 打開數(shù)據(jù)庫

  (數(shù)據(jù)文件)

  1.nomount方式下還沒有讀取控制文件,該選項用于在數(shù)據(jù)庫的控制文件全部損壞,需要重新創(chuàng)建數(shù)據(jù)庫控制文件或創(chuàng)建一個新的數(shù)據(jù)庫時使用。

  2.mount 選項下并沒有打開數(shù)據(jù)文件,該選項可以用來修改數(shù)據(jù)庫的運行模式或進行數(shù)據(jù)庫恢復(fù)。

關(guān)鍵詞標簽:oracle的啟動方式

相關(guān)閱讀

文章評論
發(fā)表評論

熱門文章 Oracle中使用alter table來增加,刪除,修改列的語法 Oracle中使用alter table來增加,刪除,修改列的語法 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 誤刪Oracle數(shù)據(jù)庫實例的控制文件 誤刪Oracle數(shù)據(jù)庫實例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索 為UNIX服務(wù)器設(shè)置Oracle全文檢索

相關(guān)下載

    人氣排行 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 Oracle中使用alter table來增加,刪除,修改列的語法 ORACLE SQL 判斷字符串是否為數(shù)字的語句 ORACLE和SQL語法區(qū)別歸納(1) oracle grant 授權(quán)語句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法