国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > Oracle > 正文

UNIX和WINDOWS2000上的ORACLE的差異 PartII

2024-08-29 13:49:25
字體:
供稿:網(wǎng)友

  
 

Ian Adam ,SAIC Ltd
David Stien,SAIC Ltd

翻譯:Fenng
PartII

數(shù)據(jù)庫啟動(dòng)與關(guān)閉

在windows 2000上數(shù)據(jù)庫可以通過啟動(dòng)相關(guān)的服務(wù)打開。通過控制面板的服務(wù)選項(xiàng)或者是通過命令行模式,如:

net start OracleServiceatei就可以打開相關(guān)服務(wù)。這依靠于一些注冊表參數(shù),我們在后面討論。停止相關(guān)的服務(wù),例如:net stop OracleServiceatei可以關(guān)閉一個(gè)數(shù)據(jù)庫。

在所有的平臺(tái)上,ORACLE8i實(shí)例都可以從服務(wù)治理器(或者SQL*Plus!)中通過startup命令啟動(dòng)。在Unix中,這個(gè)命令啟動(dòng)后臺(tái)進(jìn)程并且打開數(shù)據(jù)庫。它還生成了一個(gè)Unix特定文件,叫做$ORACLE_HOME/dbs/lk<DBNAME>,這是個(gè)MOUNT鎖文件[6 Metalink, 2000]。這會(huì)阻止兩個(gè)實(shí)例mount在同一數(shù)據(jù)庫上,當(dāng)不使用并行服務(wù)器的模式下,要使用不同的ORACLE_SID。原來這是個(gè)0長度文件,不過現(xiàn)在包含文本'DO NOT DELETE THIS FILE!'。不要試圖通過查看這個(gè)文件來得知是否數(shù)據(jù)庫是可用的,它不是很準(zhǔn)確的。在Windows 2000中,startup命令并不啟動(dòng)ORACLE服務(wù),不過,假如服務(wù)已經(jīng)運(yùn)行的話,這將打開數(shù)據(jù)庫。

類似的,服務(wù)治理器Server Manager的shutdown命令在任何平臺(tái)上都會(huì)關(guān)掉數(shù)據(jù)庫,不過在Windows 2000上它并不停掉服務(wù)。很有可能的情況就是ORACLE服務(wù)被啟動(dòng)但是數(shù)據(jù)庫卻關(guān)掉了。


UNIX上的數(shù)據(jù)庫的自動(dòng)啟動(dòng)與關(guān)閉

在 Unix上,ORACLE 提供了dbstart和dbshut 腳本以供使用。在linux
中ORACLE檢測文件/etc/oratab 來決定哪個(gè)數(shù)據(jù)庫自動(dòng)的啟動(dòng)/關(guān)閉。在 Solaris (和一些其他版本的Unix)中,檢查/var/opt/oracle/oratab文件。要注重:8.1.6 版本的dbstart有個(gè)bug,在8.1.7中已經(jīng)被修復(fù),察看[7 Metalink, 2000]有具體說明。

在Linux上,作為root用戶,在/etc/rc.d/init.d目錄中創(chuàng)建一個(gè)一個(gè)名為dbora的文件。這個(gè)文件將會(huì)檢查參數(shù)是否是   'start' 或者 'stop' 并且適當(dāng)?shù)膱?zhí)行 dbstart/dbshut;通常也從這個(gè)腳本啟動(dòng)listener 。再生成兩個(gè)符號聯(lián)接
/etc/rc.d/rc2.d/S99dbora 和
/etc/rc.d/rc0.d/K10dbora。數(shù)據(jù)庫在運(yùn)行級2(多用戶)時(shí)通過/etc/rc.d/rc2.d/S99dbora
啟動(dòng),在系統(tǒng)關(guān)閉到運(yùn)行級0的時(shí)候通過/etc/rc.d/rc0.d/K10dbora關(guān)閉數(shù)據(jù)庫
。在Solaris上,這個(gè)腳本的在/etc/init.d中而不是在/etc/rc.d/init.d.

要注重默認(rèn)的dbshut執(zhí)行了一個(gè)正常(normal)的關(guān)閉操作。在Unix 中可以通過編輯$ORACLE_HOME/bin/dbshut中的這一行來改變數(shù)據(jù)庫的關(guān)閉模式。


shutdown
修改成
shutdown immediate

假如啟動(dòng)一個(gè)已經(jīng)運(yùn)行的實(shí)例,dbstart 還會(huì)執(zhí)行一個(gè) shutdown abort 。在dbstart script腳本的頂部警告說 'It should ONLY be executed as part of the system boot PRocedure'。這個(gè)腳本要常被復(fù)制、修改,這樣在其它的時(shí)候使用才能足夠安全。


WINDOWS 2000上的數(shù)據(jù)庫自動(dòng)的啟動(dòng)與關(guān)閉

在以前的版本(8i)中,當(dāng)oracle的啟動(dòng)被一個(gè)額外的服務(wù)ORACLEStartSID處理,服務(wù)器的啟動(dòng)和關(guān)閉的時(shí)候ORACLE不能被自動(dòng)的干凈的關(guān)掉。從ORACLE8i開始,stop/start功能成為了主要的ORACLE服務(wù),并通過注冊表控制。注重當(dāng)ORADIM用于創(chuàng)建或者修改實(shí)例的時(shí)候,自動(dòng)的在注冊表中設(shè)定這些值。這些設(shè)置在HKEY_LOCAL_MACHINE OFTWARE/ORACLE/HOMEID鍵值下。

ID 號從0開始,每有一個(gè)額外的ORACLE home遞增。

-----------------------------------------------------------------
參數(shù)                          描述
-----------------------------------------------------------------
ORA_SID_AUTOSTART       設(shè)定為TRUE的時(shí)候
             (默認(rèn)值),ORACLEServiceSID啟動(dòng)的時(shí)候啟動(dòng)數(shù)據(jù)
              庫。

ORA_SID_PFILE           設(shè)定INIT.ORA參數(shù)文件的全路徑。
ORA_SHUTDOWN           當(dāng)設(shè)定為TRUE的時(shí)候,在當(dāng)前任何ORACLE
              home下的任何數(shù)據(jù)庫將shutdown。
ORA_SID_SHUTDOWN      設(shè)定為TRUE的時(shí)候,關(guān)閉標(biāo)記SID值的ORACLE8i數(shù)據(jù)庫。
-----------------------------------------------------------------
假如
SHUTDOWN參數(shù)設(shè)定為FALSE,停掉ORACLEServiceSID將會(huì)abort的方式關(guān)閉實(shí)例,下次啟動(dòng)的
時(shí)候要進(jìn)行實(shí)例恢復(fù)。


下面的可選參數(shù)可以在注冊表中設(shè)為合適的值

-----------------------------------------------------------------
參數(shù)                                  描述
-----------------------------------------------------------------ORA_SID_SHUTDOWNTYPE        指明數(shù)據(jù)庫關(guān)閉模式Aabort),

                            I (immediate), N (normal)。
                            假如你不設(shè)定這個(gè)參數(shù)的話,
                默認(rèn)的模式是 I (immediate)。
ORA_SID_SHUTDOWN_TIMEOUT      在一個(gè)SID停止前等待的最大時(shí)間。
-----------------------------------------------------------------

 

操作系統(tǒng)認(rèn)證

OS認(rèn)證在兩個(gè)平臺(tái)間是相似的,參數(shù)文件中設(shè)定os_authent_prefix
參數(shù),創(chuàng)建用戶都標(biāo)記為externally。在Windows2000中創(chuàng)建用戶要指定大寫的域名并且用戶名要在 "" 中,否則不起作用。假如你在注冊表中把 OSAUTH_PREFIX_DOMAIN 設(shè)定成FALSE的話,你可以忽略掉域。客戶機(jī)和服務(wù)器的機(jī)器還需要在sqlnet.ora中包含sql net.authentication_services=(nts)這一行。

在 Windows 2000 中,可以答應(yīng)一個(gè)域用戶登陸到一個(gè)遠(yuǎn)程pc上,無需提供額外的密碼就可以連接到數(shù)據(jù)庫中。參見[2 K elly III,2000]可以得到具體內(nèi)容。


LISTENER

在 Windows 2000上面 listener作為一個(gè)服務(wù)實(shí)現(xiàn)的,所以listener可以通過啟動(dòng) ORACLETNSListener 服務(wù)來啟動(dòng)。兩種平臺(tái)上listener都可以從lsnrctl命令控制。在Unix上lsnrctl start啟動(dòng) listener 進(jìn)程;在 Windows
2000啟動(dòng) ORACLETNSListener 服務(wù)就可以。 假如listener第一次啟動(dòng)的時(shí)候沒有ORACLETNSListener服務(wù)將創(chuàng)建它。假如從你的計(jì)算機(jī)中刪除ORACLE的話,listener 服務(wù)要手工從注冊表中刪除。
 
在兩個(gè)平臺(tái)上的listener都可以監(jiān)聽不同版本的數(shù)據(jù)庫。在win2000中,
在LISTENER.ORA中不需要ORACLE_HOME參數(shù)(在UNIX中要使用到的),因?yàn)槊總€(gè)SID在SERVER中是唯一的。listener可以從注冊表中得到正確的ORACLE_HOME。

ORACLE8i 有個(gè)特性叫服務(wù)器注冊,pmon自動(dòng)對listener注冊信息。這意味著Net8 listener可以無需在listener.ora文件中設(shè)置就可以監(jiān)聽一個(gè)數(shù)據(jù)庫。不過這樣做的話,Enterprise Manager要直到啟動(dòng)后才可以連接到數(shù)據(jù)庫。所以這個(gè)例子不能用來啟動(dòng)一個(gè)遠(yuǎn)程的實(shí)例。通常最好在listener.ora中設(shè)置所有的實(shí)例以避免沖突,尤其在一個(gè)有多位DBA的站點(diǎn)中,,可以避免我們提到的 Enterprise Manager 問題。


加長的SID名字

Windows NT上的ORACLE 7 實(shí)例名字有著4個(gè)字符長的限制,這可能會(huì)產(chǎn)生很晦澀的實(shí)例名--慶幸的是在8i中SID名字已經(jīng)加長了。
不過在包括命名服務(wù)的幾個(gè)場合中使用太長的實(shí)例名字也不總是很有用。在Windows 2000上面有個(gè)bug,限制了實(shí)例名字最長15個(gè)字符。

----------------------------------------------------------------
        Unix                        NT
----------------------------------------------------------------
      數(shù)據(jù)庫名    實(shí)例名       數(shù)據(jù)庫名      實(shí)例名
----------------------------------------------------------------
ORACLE7    8        8        8              4
ORACLE8    8        8        8            4
ORACLE8i    8      64        8            64
----------------------------------------------------------------


數(shù)據(jù)庫的創(chuàng)建

當(dāng)你在安裝過程中的時(shí)候選擇創(chuàng)建ORACLE 8i數(shù)據(jù)庫,數(shù)據(jù)庫生成助手就會(huì)通過ORACLE Universal Installer
自動(dòng)運(yùn)行。在安裝后它也可以作為一個(gè)單獨(dú)的工具手工運(yùn)行。用它還可以手工的輸入SID代替默認(rèn)的ORCL,默認(rèn)的情況下,不在ORACLE_HOME下面創(chuàng)建數(shù)據(jù)庫,完全遵循OFA的意圖。

建議你運(yùn)行Database Creation Assistant,不過在最后一頁選擇Save information to a batch file(保存信息到一個(gè)批處理文件中),再點(diǎn)擊"完成"按鈕。這會(huì)產(chǎn)生幾個(gè)腳本。從不同的平臺(tái)對比它們的內(nèi)容很有趣的。在Unix 和
Windows上的內(nèi)容很相似,除了windows上對oradim的調(diào)用不同。第一次對它的調(diào)用產(chǎn)生了一個(gè)與ORACLE 數(shù)據(jù)庫相關(guān)聯(lián)的ORACLE服務(wù):

D:/ORACLE/Ora817/bin/oradim -new -sid ATEI -intpwd man -startmode manual -pfile
"D:/ORACLE/admin/atei/pfile/initatei.ora"

第二次對oradim的調(diào)用把服務(wù)更改為自動(dòng)啟動(dòng):

D:/ORACLE/Ora817/bin/oradim -edit -sid atei -startmode auto

可以用這些文件作為創(chuàng)建其它數(shù)據(jù)庫的模版。若你不使用上面建議的方式創(chuàng)建數(shù)據(jù)庫的話,Database Creation Assistant 生成的這些文件和目錄沒什么大用處。在使用這些腳本創(chuàng)建額外的數(shù)據(jù)庫之前,這些文件和目錄不得實(shí)現(xiàn)創(chuàng)建。非凡注明一下,腳本假定一個(gè)密碼文件已經(jīng)存在,密碼文件可以用orapwd命令預(yù)創(chuàng)建[2 H Kelly III, 2000]。


 

Database Creation Assistant創(chuàng)建的目錄:

Windows 2000

ORACLE_BASE = D:/oracle

Unix

ORACLE_BASE = /db01/app/oracle

ORACLE_BASE/oradata/atei

$ORACLE_BASE/oradata/eighti

ORACLE_BASE/oradata/atei/archive

$ORACLE_BASE/oradata/eighti/archive

ORACLE_BASE/admin/atei

$ORACLE_BASE/admin/eighti

還有這些子文件夾

sadhoc  bdump  cdump  create  eXP  pfile  udump


 

通過Database Creation Assistant創(chuàng)建/改動(dòng)的文件:

Windows 2000

ORACLE_HOME = D:/oracle/ora817

Unix

ORACLE_HOME = /db01/app/oracle/prodUCt/8.1.7

ORACLE_HOME/database/PWDatei.ora

$ORACLE_HOME/dbs/orapweighti.ora

ORACLE_BASE/admin/atei/pfile/initatei.ora

$ORACLE_BASE/admin/eighti/pfile/initeighti.ora

ORACLE_HOME/database/initatei.ora

包含一行

IFILE='d:/oracle/admin/atei/pfile/initatei.ora‘

$ORACLE_HOME/dbs/initeighti.ora

符號鏈接到:

/db01/app/oracle/admin/eighti/pfile/initeighti.ora

添加到 tnsnames.ora的條目

添加到 tnsnames.ora的條目

添加到 listener.ora的條目

添加到 listener.ora的條目

windows沒有相關(guān)的操作

添加項(xiàng)目到oratab

通過Database Creation Assistant創(chuàng)建的腳本:

Windows 2000

Unix

注釋

atei.bat

eighti

調(diào)用其它腳本,在Windows上還可以調(diào)用ORADIM

ateirun.sql

eightirun.sh

包含創(chuàng)建數(shù)據(jù)庫的語句

ateirun1.sql

eightirun1.sh

創(chuàng)建表空間/ 創(chuàng)建回滾段

不創(chuàng)建系統(tǒng)中的第二個(gè)回滾段

N/a

eightirun2.sh

額外的腳本(如,catproc),
這些在Windows上從ateirun1.sql中運(yùn)行

ateisqlplus.sql

eightisqlplus.sh

添加 SQL*Plus 幫助

@c:/oracle/ora817 qlplus/admin/help/helpbld.sql helpus.sql

ateialterTablespace.sql

eightialterTablespace.sh

為SYSTEM用戶更改默認(rèn)的和臨時(shí)的表空間

 

ateireplicate.sql

ateijava.sql

ateiordinst.sql

ateiiMedia.sql

ateidrsys.sql

ateicontext.sql

ateispatial1.sql

ateitimeseries.sql

ateivirage.sql

eightireplicate.sh

eightijava.sh

eightiordinst.sh

eightiiMedia.sh

eightidrsys.sh

eighticontext.sh

eightispatial1.sh

eightitimeseries.sh

eightivirage.sh

各種腳本,只有在你選擇相應(yīng)的選項(xiàng)的時(shí)候才會(huì)生成。



遠(yuǎn)程掛接的文件系統(tǒng),如UNIX上的NFS和Windows 2000上UNC,在兩個(gè)平臺(tái)上都不支持。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 尼玛县| 江都市| 陕西省| 天门市| 安国市| 深州市| 深水埗区| 遂川县| 象山县| 黄平县| 都昌县| 长汀县| 安图县| 抚松县| 云霄县| 秦皇岛市| 饶河县| 汽车| 苍溪县| 平果县| 卢龙县| 顺昌县| 南部县| 长宁县| 仁布县| 东海县| 娱乐| 丹凤县| 英吉沙县| 霍林郭勒市| 太仓市| 胶南市| 门源| 克拉玛依市| 射阳县| 遵义县| 龙岩市| 慈溪市| 运城市| 黑河市| 慈溪市|