oracle数据库恢复参数文件位置,Oracle数据库的参数文件备份与恢复
Oracle數據庫的參數文件包含兩個文件:
一個是spfile二進制文件名字為spfilesid.ora(其中sid=你數據庫的實例名稱)。
另一個是pfile文本文件的參數文件,名字為initsid.ora(其中sid=你數據庫的實例名稱)。
默認情況下數據庫是只有一個參數文件的,那就是spfile,它是一個二進制文件,通常情況下,我們是無法查看與編輯它的,如果要查看與編輯它的話,我們應startup open打開數據庫,用create pfile from spfile;語句來通過spfile創建pfile,再用vi工具修改這個新文件pfile,(例如:cd $ORACLE_BASE/product/10.1.0/db_1/dbs; 再用vi initora10.ora(這里用實例為ora10) 再后通過你修改后的pfile去創建最新的spfile, 用create spfile from pfile;這樣新的spfile就產生了。
所以一個新的數據庫實例創建我們首要參數文件。
通過上面所說的create pfile from spfile來備份我們的參數文件;如查spfile壞掉了我們可以通過pfile來啟動數據庫;方法如下
$create pfile from spfile;
$shutdown immediate;
$cd $ORACLE_BASE/product/10.1.0/db_1/dbs;
在這個現在現在是有兩個參數文件的一個initora10.ora(pfile),一個spfileora10.ora)
$rm -rf spfileora10.ora
$mv initora10.ora initora10.ora.back(為什么還要移動這個pfile呢,為了實驗明顯就得把他也改名或移走,因為如果數據庫在有pfile的情況下,就算spfile壞掉了,數據庫也是能啟來的,數據庫會第一去找spfile再找pfile,所以我們把兩個都干掉。看數據庫還能啟來嗎???
$startup open這個時間就會報錯:
報這個錯后。實際數據庫就等于沒有連接到數據庫了要是重新連接就得
$sqlplus / as sydba;
現在我們要指定由pfile啟動數據庫
$startup open pfile=/u01/app/oracle/product/10.1.0/db_1/dbs/initora10.ora.back;
哈哈這下數據庫就啟來了
我們現在是用的pfile啟動的數據庫所以還得創建spfile
$create spfile from pfile;
這時會說找不到pfile因為我們改名改了名字所以在創建spfile的時間也得指定全路徑與文件名:
這樣下次啟動數據庫,他就找得到spfile了;
總結
以上是生活随笔為你收集整理的oracle数据库恢复参数文件位置,Oracle数据库的参数文件备份与恢复的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java kcp,重新认识KCP - o
- 下一篇: 怎么设置php.ini允许sql语句插入