連接ORACLE數(shù)據(jù)庫(kù)有兩種方式:數(shù)據(jù)庫(kù)名和服務(wù)名,數(shù)據(jù)庫(kù)名的更改要使用重建控制文件的方式更改.alter database backup controlfile to trace后更改其中數(shù)據(jù)庫(kù)名為新名,運(yùn)行該文件

成都創(chuàng)新互聯(lián)公司公司2013年成立,先為達(dá)茂旗等服務(wù)建站,達(dá)茂旗等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為達(dá)茂旗企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
如果要更改目錄,在上面的Trace文件中將文件目錄改為新的文件目錄名稱重建或在mount階段使用alter database rename datafile一一將文件更改過(guò)來(lái).
1.???????? 準(zhǔn)備
原數(shù)據(jù)庫(kù)的實(shí)例名為linuxdb,控制文件、數(shù)據(jù)文件、聯(lián)機(jī)日志文件存放在/home/oracle/ora9/oradata/linuxdb目錄,將所有的文件拷貝到另外一個(gè)目錄/home/oracle/ora9/oradata/dbtest。
再將linuxdb 的初始化文件也復(fù)制一份出來(lái),執(zhí)行如下的sql:
Create pfile='/home/oracle/ora9/oracle/dbs/pfiledbtest.ora' from spfile='/home/oracle/ora9/oracle/dbs/spfilelinuxdb.ora';
我們將修改實(shí)例名為dbtest。
下面我們開始一步一步地進(jìn)行處理。
2.???????? 加載初始化文件
打開pfiledbtest.ora文件,修改對(duì)應(yīng)的dump屬性的路徑名,實(shí)例名字,控制文件路徑等。
然后執(zhí)行如下命令:
[oracle@localhost oracle]$ export ORACLE_SID=dbtest
[oracle@localhost oracle]$ sqlplus "/ as sysdba"
SQL*Plus: Release 9.2.0.4.0 - Production on Mon Aug 17 16:57:36 2009
Copyright (c) 1982, 2002, Oracle Corporation.? All rights reserved.
Connected to an idle instance.
SQL startup pfile='/home/oracle/ora9/oracle/dbs/pfiledbtest.ora' nomount
ORACLE instance started.
Total System Global Area? 236000356 bytes
Fixed Size?????????????????? 451684 bytes
Variable Size???????????? 201326592 bytes
Database Buffers?????????? 33554432 bytes
Redo Buffers???????????????? 667648 bytes
SQL
這樣加載初始化文件就成功了。
下面接著進(jìn)行,加載控制文件。
3.???????? 加載控制文件
先執(zhí)行如下命令。
SQL alter database mount;
alter database mount
*
ERROR at line 1:
ORA-00205: error in identifying controlfile, check alert log for more info
好像是控制文件的路徑不對(duì),修改初始文件再次加載。
SQL alter database mount;
alter database mount
*
ERROR at line 1:
ORA-01103: database name 'LINUXDB' in controlfile is not 'DBTEST'
根據(jù)錯(cuò)誤信息提示,是實(shí)例名字不一致,但是控制文件是二進(jìn)制的,用vi打開之后沒法編輯,只能通過(guò)用重建控制文件可以解決。
在/home/oracle/ora9/oradata/dbtest目錄下刪除老的三個(gè)控制文件。然后開始重建控制文件。
SQL CREATE CONTROLFILE SET DATABASE "DBTEST" RESETLOGS FORCE LOGGING NOARCHIVELOG
2?? MAXLOGFILES 16
3?? MAXLOGMEMBERS 3
4?? MAXDATAFILES 100
5?? MAXINSTANCES 8
6?? MAXLOGHISTORY 292
7?? LOGFILE
8?? GROUP 1 '/home/oracle/ora9/oradata/dbtest/redo01.log' SIZE 50M,
9?? GROUP 2 '/home/oracle/ora9/oradata/dbtest/redo02.log' SIZE 50M,
10?? GROUP 3 '/home/oracle/ora9/oradata/dbtest/redo03.log' SIZE 50M
11?? DATAFILE
12?? '/home/oracle/ora9/oradata/dbtest/cwmlite01.dbf',
13?? '/home/oracle/ora9/oradata/dbtest/devbase_20090408.dbf',
14?? '/home/oracle/ora9/oradata/dbtest/drsys01.dbf',
15?? '/home/oracle/ora9/oradata/dbtest/example01.dbf',
16?? '/home/oracle/ora9/oradata/dbtest/indx01.dbf',
17?? '/home/oracle/ora9/oradata/dbtest/odm01.dbf',
18?? '/home/oracle/ora9/oradata/dbtest/system01.dbf',
19?? '/home/oracle/ora9/oradata/dbtest/tools01.dbf',
20?? '/home/oracle/ora9/oradata/dbtest/undotbs01.dbf',
21?? '/home/oracle/ora9/oradata/dbtest/users01.dbf',
22?? '/home/oracle/ora9/oradata/dbtest/xdb01.dbf'
23?? CHARACTER SET ZHS16GBK;
CREATE CONTROLFILE SET DATABASE "DBTEST" RESETLOGS FORCE LOGGING NOARCHIVELOG
*
ERROR at line 1:
ORA-01503: CREATE CONTROLFILE failed
ORA-01990: error opening password file '/home/oracle/ora9/oracle/dbs/orapw'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3
根據(jù)錯(cuò)誤提示,是缺少密碼驗(yàn)證文件,用下面的命令創(chuàng)建密碼文件。
$cd $ORACLE_HOME/dbs
orapwd password=chenli file=orapwdbtest
SQL CREATE CONTROLFILE SET DATABASE 'dbtest' RESETLOGS FORCE LOGGING NOARCHIVELOG
2?? MAXLOGFILES 16
3?? MAXLOGMEMBERS 3
4?? MAXDATAFILES 100
5?? MAXINSTANCES 8
6?? MAXLOGHISTORY 292
7?? LOGFILE
8?? GROUP 1 '/home/oracle/ora9/oradata/dbtest/redo01.log' SIZE 50M,
9?? GROUP 2 '/home/oracle/ora9/oradata/dbtest/redo02.log' SIZE 50M,
10?? GROUP 3 '/home/oracle/ora9/oradata/dbtest/redo03.log' SIZE 50M
11?? DATAFILE
12?? '/home/oracle/ora9/oradata/dbtest/cwmlite01.dbf',
13?? '/home/oracle/ora9/oradata/dbtest/devbase_20090408.dbf',
14?? '/home/oracle/ora9/oradata/dbtest/drsys01.dbf',
15?? '/home/oracle/ora9/oradata/dbtest/example01.dbf',
16?? '/home/oracle/ora9/oradata/dbtest/indx01.dbf',
17?? '/home/oracle/ora9/oradata/dbtest/odm01.dbf',
18?? '/home/oracle/ora9/oradata/dbtest/system01.dbf',
19?? '/home/oracle/ora9/oradata/dbtest/tools01.dbf',
20?? '/home/oracle/ora9/oradata/dbtest/undotbs01.dbf',
21?? '/home/oracle/ora9/oradata/dbtest/users01.dbf',
22?? '/home/oracle/ora9/oradata/dbtest/xdb01.dbf'
23?? CHARACTER SET ZHS16GBK;
Control file created.
現(xiàn)在創(chuàng)建成功了。
創(chuàng)建控制文件成功了,下面重新啟動(dòng)數(shù)據(jù)庫(kù)。
SQL startup nomount
ORACLE instance started.
Total System Global Area? 236000356 bytes
Fixed Size?????????????????? 451684 bytes
Variable Size???????????? 201326592 bytes
Database Buffers?????????? 33554432 bytes
Redo Buffers???????????????? 667648 bytes
SQL alter database mount;
Database altered.
SQL alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
SQL alter database open RESETLOGS;
Database altered.
查看表中的記錄,正確的。
修改實(shí)例名成功。
4.???????? 總結(jié)
由上面的操作可以看到,在數(shù)據(jù)庫(kù)維護(hù)中,最重要的是數(shù)據(jù)文件,初始化文件可以從別的實(shí)例拷貝過(guò)來(lái),然后修改。控制文件可以重新創(chuàng)建,只要數(shù)據(jù)文件正確,就可以重建初始化文件和控制文件之后,恢復(fù)數(shù)據(jù)庫(kù)。
遇到的錯(cuò)誤:
ERROR at line 1:
ORA-01503: CREATE CONTROLFILE failed
ORA-00200: controlfile could not be created
ORA-00202: controlfile: '/home/ora/ora9/oradata/dbtest/control01.ctl'
ORA-27040: skgfrcre: create error, unable to create file
Linux Error: 2: No such file or directory
請(qǐng)查看初始化文件中,控制文件的路徑是正確,控制文件的路徑上的目錄是否有權(quán)限創(chuàng)建文件,如果這些問(wèn)題都解決了,那么應(yīng)該能成功創(chuàng)建控制文件。
修改數(shù)據(jù)庫(kù)名很麻煩。
一般情況下,不需要修改數(shù)據(jù)庫(kù)名稱。但如果修改了數(shù)據(jù)庫(kù)名,客戶機(jī)就必須重新進(jìn)行網(wǎng)絡(luò)服務(wù)名的配置,才能連接到數(shù)據(jù)庫(kù)
改實(shí)例名啊?
還有人改這個(gè)?
建議,導(dǎo)出數(shù)據(jù),如果新建一個(gè)實(shí)例,新實(shí)例名為你的需要改的新名字,然后把輸入導(dǎo)入到新實(shí)例中。
準(zhǔn)確無(wú)誤后,刪除舊實(shí)例。
連接ORACLE數(shù)據(jù)庫(kù)有兩種方式:數(shù)據(jù)庫(kù)名和服務(wù)名,數(shù)據(jù)庫(kù)名的更改要使用重建控制文件的方式更改.alter database backup controlfile to trace后更改其中數(shù)據(jù)庫(kù)名為新名,運(yùn)行該文件
如果要更改目錄,在上面的Trace文件中將文件目錄改為新的文件目錄名稱重建或在mount階段使用alter database rename datafile一一將文件更改過(guò)來(lái).
分享標(biāo)題:oracle怎么改庫(kù)名,數(shù)據(jù)庫(kù)怎么修改庫(kù)名
文章URL:http://chinadenli.net/article37/dsegcpj.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站改版、全網(wǎng)營(yíng)銷推廣、建站公司、網(wǎng)站設(shè)計(jì)公司、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)