欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Oracle 安裝和卸載問(wèn)題收集(集合篇)第5/6頁(yè)

 更新時(shí)間:2009年06月25日 16:45:01   作者:  
在安裝過(guò)程中出現(xiàn)的一些問(wèn)題的解決辦法。值得收藏與學(xué)習(xí)。比如在安裝的時(shí)候如果有中文的路徑則會(huì)出現(xiàn)類(lèi)似這樣的提示:加載數(shù)據(jù)庫(kù)時(shí)出錯(cuò):areasQueries

日期亂碼
Oracle Server的設(shè)置如下
NLS_CHARACTERSET WE8ISO8859P1
NLS_LANGUAGE AMERICAN
NLS_NCHAR_CHARACTERSET AL16UTF16
機(jī)器上的注冊(cè)表
NLS_LANGUAGE AMERICAN_AMERICA.WE8ISO8859P1
問(wèn)題:
Java程序傳日期到Oracle的function里,經(jīng)過(guò)lower(to_char(xsched_date,'DY'))函數(shù)后,日期變成了亂碼。請(qǐng)問(wèn):
1. 我的字符集應(yīng)當(dāng)怎樣設(shè)置呢?
2. server的 NLS_CHARACTERSET 和 NLS_NCHAR_CHARACTERSET 不一樣,沒(méi)關(guān)系吧?NLS_NCHAR_CHARACTERSET 是什么意思?
解答:
1 先查看有關(guān)字符集的信息
SQL>col value$ format a40
SQL> select * from nls_database_parameters;
SQL> select * from V$NLS_PARAMETERS;
2 查得的主要對(duì)應(yīng)client端的顯示
SQL> select * from sys.props$ WHERE NAME='NLS_LANGUAGE';
//可以把'AMERICAN' 改為'SIMPLIFIED CHINESE ',不過(guò)這個(gè)于本問(wèn)題無(wú)關(guān)
3修改字符集
SQL> select * from sys.props$ WHERE NAME='NLS_CHARACTERSET';
//把你機(jī)器上的WE8ISO8859P1改為
SQL>UPDATE sys.PROPS$ SET VALUE$='ZHS16GBK' WHERE NAME='NLS_CHARACTERSET';
SQL>commit;
4 NLS_NCHAR_CHARACTERSET AL16UTF16 其中的UTF16為ZHS16GBK的子集,可顯示大多數(shù)漢字。
更改字符集
最好不要修改 props$表,可能會(huì)引起不正常的工作。
如果是客戶(hù)端 ,修改注冊(cè)表即可;
服務(wù)器端 "alter database character set 字符集"即可
Oracle客戶(hù)端打包安裝問(wèn)題
我的程序是C/S架構(gòu)的,所以客戶(hù)端電腦都要安裝ORACLE的客戶(hù)端程序,不知道有沒(méi)有辦法,將ORACLE的客戶(hù)端安裝程序打包進(jìn)我的安裝程序,進(jìn)行自動(dòng)安裝。
解答:
1.其實(shí)ORACLE的安裝很簡(jiǎn)單,你先安裝一套客戶(hù)端,然后把這些文件打包(從ORACLE_HOME開(kāi)始全部取出),把注冊(cè)表中的ORACLE部分導(dǎo)出。然后自己編寫(xiě)一個(gè)安裝程序,把這些文件按照某個(gè)路徑拷貝(不要修改相對(duì)路徑),如果你安裝的ORACLE_HOME改變了,就修改REG中的ORACLE_hone參數(shù),然后將REG文件裝入。這些都可以通過(guò)編寫(xiě)程序來(lái)實(shí)現(xiàn)。
2.實(shí)際上Oracle驅(qū)動(dòng)微軟也有,主要就缺那個(gè)網(wǎng)絡(luò)服務(wù)名,用Filemon.exe軟件跟蹤一下,看看要用到些什么東西。
無(wú)法確定主機(jī)IP錯(cuò)誤
問(wèn)題:
Win2003+Oracle 9iR2
安裝的時(shí)候告訴我無(wú)法確定主機(jī)的IP,忽略后又報(bào)了幾次,最后還是不能安裝
解答:修改hosts文件。確認(rèn)nslookup命令可以正確執(zhí)行
沒(méi)有域名時(shí)設(shè)置Oracle9i中全局?jǐn)?shù)據(jù)庫(kù)名
set globle_name=false
雙網(wǎng)卡連接外網(wǎng)問(wèn)題
問(wèn)題:
服務(wù)器雙網(wǎng)卡,一個(gè)內(nèi)部用,一個(gè)通外網(wǎng),裝ORACLE8I,客戶(hù)端連接服務(wù)器,當(dāng)把外網(wǎng)網(wǎng)線(xiàn)拔掉,連接正常,把外網(wǎng)網(wǎng)線(xiàn)插上,連不上。
解答:把內(nèi)部網(wǎng)的網(wǎng)關(guān)去掉,再在上面加一個(gè)NETBEUI協(xié)議這樣就可以了。
Oracle9i數(shù)據(jù)庫(kù)的企業(yè)版和標(biāo)準(zhǔn)版的區(qū)別
Oracle9i數(shù)據(jù)庫(kù)的企業(yè)版和標(biāo)準(zhǔn)版最主要的區(qū)別在于企業(yè)版有更強(qiáng)大的并行和分布式處理能力,標(biāo)準(zhǔn)版是專(zhuān)為開(kāi)發(fā)、部署和管理部門(mén)級(jí) Internet 應(yīng)用程序而設(shè)計(jì)的數(shù)據(jù)庫(kù)管理系統(tǒng),是用于傳統(tǒng)的部門(mén)級(jí)應(yīng)用程序的一流數(shù)據(jù)庫(kù)。而應(yīng)用超出部門(mén)級(jí)標(biāo)準(zhǔn)或訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的人較多時(shí),則應(yīng)當(dāng)選用企業(yè)版。
標(biāo)準(zhǔn)版包含下列組件: Jserver Enterprise Edition
InterMedia
Enterprise Manager
Workflow Standard Edition
Standard Management Pack
Object Option
Networking kit
Object for OLE
Distributed Option
64 bit Option
ODBC Driver
Sql*Plus
OCI
企業(yè)版包括標(biāo)準(zhǔn)版中所有組件,并且還含有下列額外的組件:
Jserver Enterprise Edition
InterMedia
Object Option
Networking kit
Object for OLE
Advance Replication Option
Distributed Option
Parallel Query Option
SQL*Plus
VIR
Workflow Enterprise Edition
Advanced backup & recovery
Connection Pool
64 bit Option
ODBC Driver
OCI
Enterprise Manager
Enterprise Backup Utility
另請(qǐng)參考http://www.Oracle.com.cn/cgi-bin/topic_show.cgi?id=117&h=1&bpg=13&age=0
Oracle與IIS地址沖突
問(wèn)題:
我的機(jī)器的系統(tǒng)盤(pán)是 c 盤(pán),Oracle8i也安裝在c盤(pán),以前我把我的網(wǎng)站在“控制面板----管理工具——Internet服務(wù)管理器”中已經(jīng)設(shè)置好了IIS的配置,所以在以前一打開(kāi)http://127.0.0.1/就可以看見(jiàn)我的網(wǎng)站,自從安裝了Oracle8i后,在打開(kāi)http://127.0.0.1/時(shí),顯示的是關(guān)于Oracle的一個(gè)頁(yè)面,在IIS中的默認(rèn)WEB站點(diǎn)已經(jīng)“停止”了,當(dāng)我再重新啟動(dòng)的時(shí)候,說(shuō)是“地址已被使用!”。我不知道該怎樣恢復(fù)成以前的情形。
解答:在服務(wù)管理里面停止ORACLE HTTP服務(wù)
一個(gè)控制文件被損壞,如何啟動(dòng)
系統(tǒng)環(huán)境:
1、操作系統(tǒng):Windows 2000 Server,機(jī)器內(nèi)存128M
2、數(shù)據(jù)庫(kù):Oracle 8i R2 (8.1.6) for NT 企業(yè)版
3、安裝路徑:C:\ORACLE錯(cuò)誤現(xiàn)象:因硬盤(pán)有壞道,一個(gè)控制文件損壞了,或人工誤刪一個(gè)控制文件,控制面板的Oracle相關(guān)服務(wù)可以啟動(dòng)成功,但用SQL*Plus無(wú)法連接,顯示以下錯(cuò)誤
ORA-01034: ORACLE not available解決方法:
C:\>svrmgrl
svrmgrl>connect internal
svrmgrl>shutdown abort修改init.ora(C:\Oracle\admin\oradb\pfile\init.ora)文件,使無(wú)法使用的控制文件不在control_files參數(shù)中定義修改前
control_files = ("C:\Oracle\oradata\oradb\control01.ctl", "C:\Oracle\oradata\oradb\control02.ctl",
"C:\Oracle\oradata\oradb\control03.ctl")
修改后
control_files = ("C:\Oracle\oradata\oradb\control01.ctl", "C:\Oracle\oradata\oradb\control02.ctl")svrmgrl>startup
注意:最少要有兩個(gè)控制文件的存在,即使一個(gè)也可以正常應(yīng)用。
某個(gè)數(shù)據(jù)文件損壞,如何打開(kāi)數(shù)據(jù)庫(kù)——ORA-01033: ORACLE initialization or shutdown in progress錯(cuò)誤
系統(tǒng)環(huán)境:
1、操作系統(tǒng):Windows 2000 Server,機(jī)器內(nèi)存128M
2、數(shù)據(jù)庫(kù): Oracle 8i R2 (8.1.6) for NT 企業(yè)版
3、安裝路徑:C:\ORACLE
錯(cuò)誤現(xiàn)象:
因誤操作,數(shù)據(jù)庫(kù)中某一數(shù)據(jù)文件被誤刪,
控制面板的Oracle相關(guān)服務(wù)顯示已啟動(dòng),但用SQL*Plus無(wú)法連接,
顯示以下錯(cuò)誤
ORA-01033: ORACLE initialization or shutdown in progress
模擬現(xiàn)象:
create tablespace test datafile
'c:\test.ora' size 5M
AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED
default storage (initial 128K next 1M pctincrease 0)
/
關(guān)閉所有服務(wù)stop.bat
net stop "OracleWebAssistant0"
net stop "OracleOraHome81TNSListener"
net stop "OracleServiceORADB"
shutdown
在操作系統(tǒng)中刪除test.ora文件
重新啟動(dòng)服務(wù)start.bat
net start "OracleWebAssistant0"
net start "OracleOraHome81TNSListener"
net start "OracleServiceORADB"
服務(wù)里OracleServiceORADB顯示已啟動(dòng),但用SQL*Plus無(wú)法連接,
顯示ORA-01033: ORACLE initialization or shutdown in progress
解決方法:
先讓該數(shù)據(jù)文件脫機(jī),就可以打開(kāi)數(shù)據(jù)庫(kù)
C:\>svrmgrl
svrmgrl>connect internal
svrmgrl>shutdown
svrmgrl>startup mount
--ARCHIVELOG模式命令,文件名要大寫(xiě)
svrmgrl>alter database datafile 'C:\TEST.ORA' offline;
--NOARCHIVELOG模式命令
svrmgrl>alter database datafile 'C:\TEST.ORA' offline drop;
svrmgrl>alter database open;
--查詢(xún)數(shù)據(jù)文件聯(lián)、脫機(jī)狀態(tài)
SQL> select file#,name,status from v$datafile;
SQL> drop tablespace test;
表空間已丟棄。
丟失聯(lián)機(jī)日志文件
分兩種情況處理
1、丟失的是非活動(dòng)的日志文件;
2、丟失的是當(dāng)前激活的日志文件。
如果是第一種情況,而發(fā)生故障的日志文件組又具有多個(gè)成員,可以先將數(shù)據(jù)庫(kù)shutdown,然后用操作系統(tǒng)命令將損壞日志文件組中好的日志成員文件把損壞的成員文件覆蓋(在同一個(gè)日志成員組中的所有日志文件的各為鏡象的),如果其物理位置不可用可將其拷貝到新的驅(qū)動(dòng)器上,使用alter database rename file ‘xxxx' to ‘xxxx'改變文件位置,之后啟動(dòng)數(shù)據(jù)庫(kù),如果正常馬上進(jìn)行一個(gè)冷備份。如果損壞的日志組中只有一個(gè)日志成員,先mount上數(shù)據(jù)庫(kù),將其轉(zhuǎn)換為noarchivelog模式,執(zhí)行alter database add logfile member ‘xxx' to group ‘x'給相關(guān)組增加一個(gè)成員,再執(zhí)行alter database drop logfile member ‘bad_file'將損壞的日志文件刪除,由于數(shù)據(jù)庫(kù)的結(jié)構(gòu)發(fā)生變動(dòng)需要備份控制文件,之后將數(shù)據(jù)庫(kù)改回archivelog模式,做一個(gè)冷備份。
如果丟失的是當(dāng)前激活的日志文件,數(shù)據(jù)庫(kù)又沒(méi)有鏡像而且當(dāng)前日志組中所有成員均變?yōu)椴豢捎?。首先將?shù)據(jù)庫(kù)shutdown abort,從最近的一次全備份中恢復(fù)所有的數(shù)據(jù)文件,將數(shù)據(jù)庫(kù)啟動(dòng)到mount狀態(tài)。如果原來(lái)的日志文件物理位置不可用,使用alter database rename file ‘xxx' to ‘xxx'改變文件的存放位置。然后,使用recover database until cancel命令來(lái)恢復(fù)數(shù)據(jù)庫(kù),直到提示最后一個(gè)歸檔日志運(yùn)用完之后,輸入cancel。之后用alter database open resetlogs打開(kāi)數(shù)據(jù)庫(kù),如果沒(méi)有問(wèn)題,立即進(jìn)行一個(gè)冷備份。注意!所有包含在損壞的redo log中的信息將會(huì)丟失,也就是說(shuō)數(shù)據(jù)庫(kù)崩潰前已經(jīng)提交的數(shù)據(jù)有可能會(huì)丟失。這對(duì)于某些要求很高的應(yīng)用將會(huì)損失慘重,因此應(yīng)盡量使每個(gè)日志組具有多個(gè)日志成員,并且放置在不同的驅(qū)動(dòng)器上防止發(fā)生介質(zhì)故障。
需要升級(jí)或者購(gòu)買(mǎi)服務(wù)了嗎
問(wèn)題:
管理我單位的數(shù)據(jù)庫(kù)服務(wù)器,配置是: Compaq Alpha Es40 +512M+單800Mhz CPU. 只跑ORACLE數(shù)據(jù)庫(kù)。
因?yàn)閷?duì)本單位的需求在系統(tǒng)設(shè)計(jì)的時(shí)候不很明確,以上配置是供貨商根據(jù)我單位當(dāng)時(shí)的計(jì)算機(jī)應(yīng)用情況配置的,Compaq的工程師在安裝的時(shí)候說(shuō)機(jī)器很好,就是內(nèi)存和CPU的配置小了點(diǎn),我不太明白影響大不大。
沒(méi)想到的是,業(yè)務(wù)需求的增長(zhǎng)大大超過(guò)了當(dāng)初的預(yù)期,在最開(kāi)始的時(shí)候客戶(hù)端的PC數(shù)量只有不超過(guò)50臺(tái),不久很快就超過(guò)了100臺(tái),我把unix系統(tǒng)下的單用戶(hù)進(jìn)程數(shù)量調(diào)到了200,心想這應(yīng)該沒(méi)多大問(wèn)題了吧,結(jié)果是好景不長(zhǎng),不到半年200也不夠了,我現(xiàn)在把最大進(jìn)程數(shù)調(diào)到了400。我想請(qǐng)教一下,Oracle服務(wù)器是不是為每一個(gè)客戶(hù)端在服務(wù)器單獨(dú)開(kāi)一個(gè)進(jìn)程?一臺(tái)服務(wù)器能夠聯(lián)接的客戶(hù)端數(shù)量相對(duì)于內(nèi)存的大小在理論上是不是有個(gè)參考的經(jīng)驗(yàn)值?有的話(huà)大概是多少?
解答:
1.Oracle服務(wù)器可以分為專(zhuān)用服務(wù)器和共享服務(wù)器兩種。專(zhuān)用服務(wù)器為每個(gè)客戶(hù)端進(jìn)程開(kāi)啟一個(gè)服務(wù)器端進(jìn)程;共享服務(wù)器則開(kāi)啟數(shù)個(gè)服務(wù)器端進(jìn)程,為所有的客戶(hù)端程序服務(wù);
一般來(lái)說(shuō),采用專(zhuān)用服務(wù)器的話(huà),你可以按照每個(gè)并發(fā)連接數(shù)需要2m內(nèi)存來(lái)簡(jiǎn)單計(jì)算。512M內(nèi)存相對(duì)連接數(shù)較多,處理量較大的系統(tǒng)是不太夠的。Oracle9i 安裝就推薦512m內(nèi)存了。
Oracle的設(shè)計(jì)思路是假設(shè)機(jī)器具有無(wú)限能力,在過(guò)去不怎么樣,因?yàn)闄C(jī)器性能差,但是隨著技術(shù)的發(fā)展,機(jī)器的能力倍增,而且代價(jià)也大大降低,花很少的錢(qián)就可以買(mǎi)到很好的機(jī)器了,現(xiàn)在看來(lái),這種開(kāi)發(fā)思路是極其成功的。
2.共享服務(wù)并不意味著不占用內(nèi)存,只是采用共享池模式,將連接數(shù)據(jù)庫(kù)但暫時(shí)沒(méi)有數(shù)據(jù)作的用戶(hù)進(jìn)程掛起,若并發(fā)用戶(hù)數(shù)量多而且頻繁時(shí),會(huì)降低系統(tǒng)性能。
另Oracle數(shù)據(jù)庫(kù)使用內(nèi)存最多的應(yīng)該是SGA區(qū),多數(shù)配置合理的系統(tǒng)中SGA區(qū)會(huì)占到系統(tǒng)內(nèi)存的1/3甚至1/2以上,不合理的SGA區(qū)配置會(huì)極大地影響數(shù)據(jù)庫(kù)性能。至于SGA區(qū)大小和劃分與應(yīng)用系統(tǒng)的數(shù)據(jù)量、客戶(hù)端數(shù)量、數(shù)據(jù)處理和程序代碼等相關(guān)。
根據(jù)我從事數(shù)據(jù)庫(kù)工作的經(jīng)驗(yàn),2G內(nèi)存應(yīng)該是需要的,而且貴單位的數(shù)據(jù)庫(kù)很可能需要優(yōu)化。
3.我覺(jué)得大家忽略了一點(diǎn):系統(tǒng)負(fù)載不僅與用戶(hù)數(shù)有關(guān),更多的與交易量相關(guān)。
數(shù)據(jù)庫(kù)中注冊(cè)用戶(hù)表可能達(dá)到幾千萬(wàn)條,在創(chuàng)建時(shí)注意些什么設(shè)置
對(duì)超級(jí)大表,首先要注意的是存儲(chǔ)參數(shù)的設(shè)定,估計(jì)一下行數(shù)據(jù)量,對(duì)表最終的存儲(chǔ)空間要求大致估算以下,建表時(shí)設(shè)定好(next_extent和max_extents參數(shù),以免最后表超過(guò)max_extents而無(wú)法擴(kuò)展),pct_increase參數(shù)一定要設(shè)定為0,否則以后next_extent會(huì)呈幾何級(jí)數(shù)增長(zhǎng)。
如果該表數(shù)據(jù)變化(增加、刪除、修改)頻繁,需要設(shè)定 PCT_FREE和PCT_USED參數(shù)(參數(shù)定義和用法請(qǐng)查找資料);如果空間足夠的話(huà),最好在字段定義中不使用VARCHAR2數(shù)據(jù)類(lèi)型,當(dāng)前沒(méi)有數(shù)據(jù)也讓數(shù)據(jù)庫(kù)預(yù)留出空間,減少修改數(shù)據(jù)制造的數(shù)據(jù)碎片。
對(duì)超級(jí)大表的檢索、*** 作,主要靠索引,如何建好索引、用好索引是系統(tǒng)開(kāi)發(fā)人員的職責(zé)。超級(jí)大表的檢索首先應(yīng)該與主表分在不同的表空間(最好是不同的存儲(chǔ)介質(zhì)),其次超級(jí)大表的檢索也會(huì)占很大的空間,檢索的存儲(chǔ)參數(shù)也是要設(shè)定好的。
對(duì)超級(jí)大表而言,一點(diǎn)點(diǎn)結(jié)構(gòu)設(shè)計(jì)的不合理,甚至一句糟糕的程序代碼就可能使整個(gè)系統(tǒng)的性能讓人無(wú)法忍受。有些原則要記?。涸诔?jí)大表上,不要存在與其他數(shù)據(jù)表的約束關(guān)系,約束關(guān)系可以通過(guò)程序代碼實(shí)現(xiàn);對(duì)超級(jí)大表,不要隨意與其他數(shù)據(jù)表進(jìn)行關(guān)聯(lián),除非通過(guò)主鍵(至少是索引列)關(guān)聯(lián)且where條件能使用到索引;
如果你用到了ORACLE 8,對(duì)超級(jí)大表進(jìn)行分區(qū)是非常有價(jià)值的。
重裝Oracle服務(wù)器后,恢復(fù)以前的數(shù)據(jù)系統(tǒng)環(huán)境
1、操作系統(tǒng):Windows 2000 Server,機(jī)器內(nèi)存128M
2、數(shù)據(jù)庫(kù): Oracle 8i R2 (8.1.6) for NT 企業(yè)版
3、安裝路徑:C:\ORACLE
說(shuō)明:
恢復(fù)的前提是要保留以下全部文件:
初始化參數(shù)文件INIT.ORA
所有數(shù)據(jù)文件
所有重做日志文件(聯(lián)機(jī)日志、歸檔日志)
所有控制文件
internal密碼文件
步驟:
1、重新安裝數(shù)據(jù)庫(kù)時(shí),創(chuàng)建和原有數(shù)據(jù)庫(kù)相同的名字
2、shutdown
3、停掉NT上所有Oracle服務(wù),刪除新建數(shù)據(jù)庫(kù)中的所有新建文件(和以上那些類(lèi)似的文件)
4、將所有以上文件拷貝回原目錄
5、startup
日文系統(tǒng)改成英文的辦法
在注冊(cè)表中改一個(gè)鍵值。
具體如下:把HKEY_LOCAL_MACHINE -> SOFTWARE -> ORACLE -> HOME0 -> NLS_LANG 的健值改成 AMERICAN_AMERICA.WE8ISO8859P1,然后就正常了。

相關(guān)文章

最新評(píng)論