您好,登錄后才能下訂單哦!
博主QQ:819594300
博客地址:http://zpf666.blog.51cto.com/
有什么疑問(wèn)的朋友可以聯(lián)系博主,博主會(huì)幫你們解答,謝謝支持!
前言:前面我們學(xué)習(xí)過(guò)微軟的sqlserver,還有甲骨文公司的mysql,也理解了數(shù)據(jù)庫(kù)系統(tǒng)的作用,這兩種數(shù)據(jù)庫(kù)管理系統(tǒng)適用于軟件,網(wǎng)站,游戲等后臺(tái)數(shù)據(jù)庫(kù),例如我們?cè)趯W(xué)習(xí)mysql的時(shí)候搭建過(guò)動(dòng)態(tài)網(wǎng)站。但oracle屬于非常安全、完善的大型數(shù)據(jù)庫(kù)管理軟件,在電信、銀行、證券等大型應(yīng)用場(chǎng)合擁有著絕對(duì)的優(yōu)勢(shì)。那么今天就給搭建介紹oracle的安裝和基本的使用。Oracle可以安裝到windows和linux系統(tǒng)上,但企業(yè)更多采用在linux上安裝,接下來(lái)就以redhat6.5為例。
一、安裝redhat6.5
1)語(yǔ)言選擇中文簡(jiǎn)體(為了更好的支持oracle中文版)
2)選擇“開(kāi)發(fā)”中的所有選項(xiàng)(開(kāi)發(fā)里面的5個(gè)選項(xiàng)全部打√)
二、安裝oracle的準(zhǔn)備工作
1、系統(tǒng)及配置要求
1)確認(rèn)linux系統(tǒng)的版本
2)物理內(nèi)存:必須高于1G
物理內(nèi)存應(yīng)不少于1GB,對(duì)于VMWARE虛擬機(jī)建議不少于1200MB.對(duì)于系統(tǒng)中的交換分區(qū)設(shè)置,應(yīng)參以下約定:物理內(nèi)存為1GB~2GB時(shí),交換分區(qū)為物理內(nèi)存的1.5~2倍;物理內(nèi)存為2GB~16GB時(shí),交換分區(qū)與物理內(nèi)存大小相同;物理內(nèi)存超過(guò)16GB時(shí),交換分區(qū)使用16GB就可以了。
3)硬盤(pán)空間:企業(yè)版需要5.65G,還要確保/tmp目錄所在的分區(qū)空間不少于1G,建議總的空間給8G以上
4)確定主機(jī)名之后修改hosts文件(安裝好oracle之后再修改主機(jī)名會(huì)導(dǎo)致數(shù)據(jù)庫(kù)啟動(dòng)失?。?/span>
2、配置yum,安裝支持包
還需要安裝pdksh包,但是Redhat6.5光盤(pán)中的ksh存在兼容性沖突,所以需要單獨(dú)安裝pdksh-5.2.14-37.el5_8.1.x86_64.rpm,使用rpm安裝即可。
3、調(diào)整內(nèi)核參數(shù)
內(nèi)核參數(shù)調(diào)整體現(xiàn)在/etc/sysctl.conf文件中。主要包括對(duì)內(nèi)存調(diào)度、端口范圍、打開(kāi)文件數(shù)、I/O請(qǐng)求等相關(guān)的一些設(shè)置,相關(guān)數(shù)值不可低于安裝要求。修改完畢后通過(guò)執(zhí)行sysctl –p命令使新配置立即生效。
各參數(shù)詳解:
fs.aio-max-nr:
此參數(shù)限制并發(fā)未完成的請(qǐng)求,應(yīng)該設(shè)置避免I/O子系統(tǒng)故障。
fs.file-max:
該參數(shù)決定了系統(tǒng)中所允許的文件句柄最大數(shù)目,文件句柄設(shè)置代表linux系統(tǒng)中可以打開(kāi)的文件的數(shù)量。
kernel.shmall:
該參數(shù)控制可以使用的共享內(nèi)存的總頁(yè)數(shù)。Linux共享內(nèi)存頁(yè)大小為4KB,共享內(nèi)存段的大小都是共享內(nèi)存頁(yè)大小的整數(shù)倍。一個(gè)共享內(nèi)存段的最大大小是16G,那么需要共享內(nèi)存頁(yè)數(shù)是16GB/4KB=16777216KB /4KB=4194304(頁(yè)),也就是64Bit系統(tǒng)下16GB物理內(nèi)存,設(shè)置kernel.shmall = 4194304才符合要求.
kernel.shmmax:
是核心參數(shù)中最重要的參數(shù)之一,用于定義單個(gè)共享內(nèi)存段的最大值。設(shè)置應(yīng)該足夠大,設(shè)置的過(guò)低可能會(huì)導(dǎo)致需要?jiǎng)?chuàng)建多個(gè)共享內(nèi)存段,這樣可能導(dǎo)致系統(tǒng)性能的下降。至于導(dǎo)致系統(tǒng)下降的主要原因?yàn)樵趯?shí)例啟動(dòng)以及ServerProcess創(chuàng)建的時(shí)候,多個(gè)小的共享內(nèi)存段可能會(huì)導(dǎo)致當(dāng)時(shí)輕微的系統(tǒng)性能的降低(在啟動(dòng)的時(shí)候需要去創(chuàng)建多個(gè)虛擬地址段,在進(jìn)程創(chuàng)建的時(shí)候要讓進(jìn)程對(duì)多個(gè)段進(jìn)行“識(shí)別”,會(huì)有一些影響),但是其他時(shí)候都不會(huì)有影響。
官方建議值:
32位linux系統(tǒng):可取最大值為4GB(4294967296bytes)-1byte,即4294967295。建議值為多于內(nèi)存的一半,所以如果是32為系統(tǒng),一般可取值為4294967295。
64位linux系統(tǒng):可取的最大值為物理內(nèi)存值-1byte,建議值為多于物理內(nèi)存的一半,例如,如果為12GB物理內(nèi)存,可取12*1024*1024*1024-1=12884901887。
kernel.shmmni:
該參數(shù)是共享內(nèi)存段的最大數(shù)量。shmmni缺省值4096,一般肯定是夠用了。
kernel.sem:
以kernel.sem = 250 32000 100 128為例:
250是參數(shù)semmsl的值,表示一個(gè)信號(hào)量集合中能夠包含的信號(hào)量最大數(shù)目。
32000是參數(shù)semmns的值,表示系統(tǒng)內(nèi)可允許的信號(hào)量最大數(shù)目。
100是參數(shù)semopm的值,表示單個(gè)semopm()調(diào)用在一個(gè)信號(hào)量集合上可以執(zhí)行的操作數(shù)量。
128是參數(shù)semmni的值,表示系統(tǒng)信號(hào)量集合總數(shù)。
net.ipv4.ip_local_port_range:
表示應(yīng)用程序可使用的IPv4端口范圍。
net.core.rmem_default:
表示套接字接收緩沖區(qū)大小的缺省值。
net.core.rmem_max:
表示套接字接收緩沖區(qū)大小的最大值。
net.core.wmem_default:
表示套接字發(fā)送緩沖區(qū)大小的缺省值。
net.core.wmem_max:
表示套接字發(fā)送緩沖區(qū)大小的最大值。
4、oracle用戶(hù)要求
Oracle需要固定的運(yùn)行用戶(hù)oracle,安裝組oinstall,管理組dba,這些賬號(hào)需要提前建立好。此外用來(lái)存放oracle程序及數(shù)據(jù)庫(kù)文件的基本目錄/opt/oracle也應(yīng)該提前創(chuàng)建好。
1)建立用戶(hù)和組
2)建立相關(guān)目錄
5、Oracle11g的安裝任務(wù)應(yīng)以運(yùn)行用戶(hù)oracle的身份執(zhí)行,需適當(dāng)調(diào)整oracle用戶(hù)的環(huán)境配置以便滿足要求。Oracle11g安裝界的語(yǔ)言類(lèi)型取決于環(huán)境變量LANG,若希望用中文安裝界面,則應(yīng)確保LANG變量的值為”zh_CN.UTF-8”。中文安裝界面有時(shí)會(huì)因缺少字體、字體配置不當(dāng)?shù)仍驅(qū)е陆缑鎭y碼。這時(shí)可以改用”en_US.UTF-8”英文環(huán)境以回避類(lèi)似問(wèn)題。
6、為oracle用戶(hù)設(shè)置Shell限制:為了優(yōu)化性能,需要添加oracle用戶(hù)的限制參數(shù)。進(jìn)程會(huì)話限制可以采用pam_limits認(rèn)證模塊來(lái)實(shí)現(xiàn),通過(guò)修改登錄程序login的PAM設(shè)置以啟用該認(rèn)證。
修改/etc/security/limits.conf,將用戶(hù)oracle能夠打開(kāi)的進(jìn)程數(shù)、進(jìn)程使用的文件數(shù)加載。
7、配置oracle用戶(hù)資源限制,不配置也不會(huì)影響oracle數(shù)據(jù)庫(kù)的成功安裝,但是考慮到若有糟糕的sql語(yǔ)句對(duì)服務(wù)器資源的無(wú)限占用,導(dǎo)致長(zhǎng)時(shí)間對(duì)用戶(hù)請(qǐng)求無(wú)響應(yīng),建議提前限制oracle用戶(hù)資源。
8、解決中文亂碼問(wèn)題
在RHEL6.5中安裝oracle11g時(shí),中文安裝界面亂碼,解決方法:
在Linux命令提示符下執(zhí)行以下命令,把字體庫(kù)安裝到相應(yīng)位置即可
9、關(guān)閉防火墻和selinux,并設(shè)置永久ip地址和主機(jī)名(主機(jī)名和IP在前面都已經(jīng)完成)
以上所有的準(zhǔn)備工作完成之后一定要重新啟動(dòng)系統(tǒng)
三、正式安裝oracle
1、下載oracle11g軟件包到系統(tǒng)/home/oracle中,并解壓縮軟件包
2、授權(quán)允許用戶(hù)oracle使用圖形終端,例如執(zhí)行:xhost + oracle@localhost,表示允許用戶(hù)oracle從本機(jī)訪問(wèn),或者執(zhí)行xhost + 表示取消所有限制,這里執(zhí)行xhost +即可。
3、執(zhí)行安裝程序
4、配置安全更新
5、安裝選項(xiàng),選擇“創(chuàng)建和配置數(shù)據(jù)庫(kù)”
6、在系統(tǒng)類(lèi)中選擇“服務(wù)器類(lèi)”
7、網(wǎng)格選項(xiàng)中選擇“單實(shí)例數(shù)據(jù)庫(kù)安裝”
8、安裝類(lèi)型選擇“典型安裝”。如果為各種管理賬號(hào)分別設(shè)置口令,或者選擇語(yǔ)言版本,設(shè)置自動(dòng)備份,存儲(chǔ)管理等,則應(yīng)選擇“高級(jí)安裝”。
9、典型安裝的配置,必須設(shè)置管理員口令,其它參數(shù)采用默認(rèn)值,系統(tǒng)將自動(dòng)創(chuàng)建3個(gè)用戶(hù),分別是:超級(jí)管理員sys,system和數(shù)據(jù)庫(kù)所有者sysman,當(dāng)選擇高級(jí)安裝時(shí),可以為3個(gè)用戶(hù)分別設(shè)置口令,否則將使用同一個(gè)管理口令。
10、創(chuàng)建產(chǎn)品清單,將清單目錄修改為/opt/oracle/oralnventory,以便oracle用戶(hù)有權(quán)限寫(xiě)入oracle數(shù)據(jù)庫(kù)的清單信息。
11、先決條件檢查及概要,出現(xiàn)下面的程序包狀態(tài)失敗,因?yàn)檫@些包是32位的包,而我們的系統(tǒng)是64位的,所以不用理會(huì),點(diǎn)擊“全部忽略”。然后點(diǎn)擊“下一步”。
可以保存響應(yīng)文件,以后安裝oracle時(shí)可以使用這個(gè)腳本執(zhí)行安裝,就不用配置這么多了。(保存為/home/oracle/db.rsp文件,“.rsp文件是oracle數(shù)據(jù)庫(kù)的應(yīng)答響應(yīng)文件,可用來(lái)免除安裝過(guò)程中的手動(dòng)交互環(huán)節(jié)”)
12、正在安裝中......
13、當(dāng)彈出“口令管理”的窗口時(shí),單擊“口令管理”按鈕,將用戶(hù)scott解鎖,修改完成后,單擊“確定”按鈕。
14、完成安裝
文件復(fù)制及相關(guān)部署結(jié)束之后,會(huì)彈出“執(zhí)行配置腳本”對(duì)話框,根據(jù)提示切換為root用戶(hù)并以此執(zhí)行腳本,如下所示。
最后單擊“確定”按鈕,會(huì)提示訪問(wèn)https://oracleserver:1158/em/,使用此地址訪問(wèn)OEM(企業(yè)管理器)平臺(tái),以便對(duì)oracle數(shù)據(jù)庫(kù)實(shí)例進(jìn)行管理。
四、驗(yàn)證安裝結(jié)果
1、訪問(wèn)OEM平臺(tái)(OEM平臺(tái)可以進(jìn)行圖像化管理oracle,比較方便)。
在瀏覽器中輸入:https://oracleserver:1158/em/,輸入用戶(hù)名:sys,密碼123456,連接身份選擇SYSDBA
2、使用sqlplus命令行訪問(wèn)oracle數(shù)據(jù)庫(kù)
在命令行界面中輸入:sqlplus sys/123456 as sysdba
或者:
1)執(zhí)行HELPINDEX命令查看所有可以使用的命令
2)執(zhí)行SHOWUSER可以查看當(dāng)前登錄的用戶(hù)
五、配置oracle和OEM隨機(jī)啟動(dòng)
完成oracle11g數(shù)據(jù)庫(kù)的安裝后,相關(guān)服務(wù)器會(huì)自動(dòng)啟用,但并不表示下次開(kāi)機(jī)后oracle服務(wù)器仍然可用。下面將介紹oracle的基本服務(wù)組件,以及如何編寫(xiě)服務(wù)腳本來(lái)控制oracle數(shù)據(jù)庫(kù)系統(tǒng)的自動(dòng)運(yùn)行。
根據(jù)上面的安裝過(guò)程,oracle11g的數(shù)據(jù)庫(kù)軟件將安裝在變量ORACLE_HOME所北定的位置。例如/opt/oracle/product/11.2.0/dbhome_1/,而各種服務(wù)器組件程序(也包括sqlplus命令)正是位于其中的bin子目錄下。
Oracle11g數(shù)據(jù)庫(kù)的基本服務(wù)組件如下所述:(注:oracle服務(wù)組件最好以oracle用戶(hù)身份運(yùn)行如:su - oracle)
lsnrctl:監(jiān)聽(tīng)器程序,用來(lái)提供數(shù)據(jù)庫(kù)訪問(wèn),默認(rèn)監(jiān)聽(tīng)TCP 1521端口。
dbstart、dbshut:數(shù)據(jù)庫(kù)控制程序,用來(lái)啟動(dòng)、停止數(shù)據(jù)庫(kù)實(shí)例。
emctl:管理器控制工具,用來(lái)控制OEM平臺(tái)的開(kāi)啟與關(guān)閉,OEM平臺(tái)通過(guò)1158端口提供HTTPS訪問(wèn),5520端口提供TCP訪問(wèn)。
為了方便執(zhí)行oracle11g的服務(wù)組件程序,建議對(duì)所有用戶(hù)的環(huán)境配置作進(jìn)一步的優(yōu)化調(diào)整、補(bǔ)充PATH路徑、oracle終端類(lèi)型等變量設(shè)置。除此以外,還應(yīng)該修改/etc/oratab配置文件,以便運(yùn)行dbstart時(shí)自動(dòng)啟用數(shù)據(jù)庫(kù)實(shí)例。
用root用戶(hù)來(lái)修改
1、修改/etc/oratab,修改內(nèi)容如下:
2、修改/etc/rc.local文件,在文件末尾增加如下:
3、建立oracle服務(wù)的啟動(dòng)腳本:(可以不做)
雖然通過(guò)各種服務(wù)組件程序能夠啟動(dòng)、停止整個(gè)oracle11g數(shù)據(jù)庫(kù)系統(tǒng),但顯然還不夠方便,在RHEL6服務(wù)器中,更好的做法是將相關(guān)操作編寫(xiě)為服務(wù)腳本,交給chkconfig工具來(lái)管理,從而實(shí)現(xiàn)隨系統(tǒng)開(kāi)、關(guān)機(jī)自動(dòng)啟動(dòng)、停止oracle數(shù)據(jù)庫(kù)。
vi/etc/init.d/oracle ,輸入如下內(nèi)容:
給腳本設(shè)置權(quán)限并添加為系統(tǒng)服務(wù)
添加好oracle服務(wù)后,就可以通過(guò)腳本的start、stop、status、restart參數(shù)來(lái)控制oracle數(shù)據(jù)庫(kù)的啟動(dòng)、停止、查看狀態(tài)、重啟了。
六、常見(jiàn)系統(tǒng)控制命令
1、執(zhí)行”lsnrctl start”命令可以啟動(dòng)oracle監(jiān)聽(tīng)器。
2、執(zhí)行”lsnrctl status”命令可以查看oracle監(jiān)聽(tīng)器的狀態(tài)。
3、執(zhí)行”emctl stop dbconsole”命令可以關(guān)閉OEM管理控制臺(tái)。
4、執(zhí)行”dbshut $ORACLE_HOME”命令可以停止數(shù)據(jù)庫(kù)實(shí)例。
5、執(zhí)行”dbstart $ORACLE_HOME”命令可以啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例。
6、使用sqlplus命令工具時(shí),若以超級(jí)管理員sys登錄,則在”SQL>”環(huán)境中執(zhí)行”STARTUP;”、”SHUTDOWN IMMEDIATE;”指令也可以啟用、關(guān)閉默認(rèn)的數(shù)據(jù)庫(kù)實(shí)例。
七、配置oracle命令行可以翻頁(yè)和清屏
1、下載3個(gè)包:
1)IO-Tty-1.07.tar.gz
2)Term-ReadLine-Gnu-1.16.tar.gz
3)uniread-1.01.tar.gz
2、安裝
1)解壓縮
2)安裝第一個(gè)包
3)安裝第二個(gè)包
4)安裝第三個(gè)包
3、登錄oracle:在命令前加 uniread
原來(lái)登錄是: sqlplus sys/123456 as sysdba
現(xiàn)在是: unireadsqlplus sys/123456 as sysdba(如果這個(gè)命令在root用戶(hù)里面無(wú)法用,就切換到oracle用戶(hù)下用即可)
八、創(chuàng)建數(shù)據(jù)庫(kù)
如果在安裝oracle產(chǎn)品時(shí)選擇不建立數(shù)據(jù)庫(kù),那么要使用oracle系統(tǒng)就必須先創(chuàng)建數(shù)據(jù)庫(kù),如果在安裝oracle產(chǎn)品時(shí)選擇建立數(shù)據(jù)庫(kù),也可以再創(chuàng)建第二個(gè)數(shù)據(jù)庫(kù)。
創(chuàng)建數(shù)據(jù)庫(kù)有兩種方法:一種通過(guò)圖形界面;另一種采用create database命令,下面介紹圖形界面的方法。
在linux中,運(yùn)行數(shù)據(jù)庫(kù)配置助手(DBCA),執(zhí)行$ORACLE_HOME/bin目錄下執(zhí)行DBCA
1、執(zhí)行netca啟用監(jiān)聽(tīng)的方法(如果沒(méi)有啟用需要做這一步)(為了使客戶(hù)端能連接到oracle實(shí)例,以及有些命令也需要啟用監(jiān)聽(tīng))
或者使用命令啟動(dòng)監(jiān)聽(tīng):
2、運(yùn)行DBCA
注意:建議一臺(tái)服務(wù)器上只創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),安裝oracle的時(shí)候我們創(chuàng)建過(guò)一個(gè)orcl數(shù)據(jù)庫(kù),平時(shí)做實(shí)驗(yàn)使用orcl即可。(當(dāng)然,我們需要學(xué)會(huì)創(chuàng)建新的數(shù)據(jù)庫(kù))
補(bǔ)充:連接新建立的數(shù)據(jù)庫(kù)(把原來(lái)BENET數(shù)據(jù)庫(kù)的監(jiān)聽(tīng)器listener1換成新的監(jiān)聽(tīng)器listener2)
1)打開(kāi)dbca配置數(shù)據(jù)庫(kù)監(jiān)聽(tīng)
2)選擇數(shù)據(jù)庫(kù)BDQN
3)將數(shù)據(jù)庫(kù)BENET注冊(cè)給監(jiān)聽(tīng)器
(其實(shí)也中間有個(gè)BUG,就是先點(diǎn)共享服務(wù)模式-完成-確定-取消)
4)啟用監(jiān)聽(tīng)
5)連接到BENET數(shù)據(jù)庫(kù)
九、啟動(dòng)關(guān)閉數(shù)據(jù)庫(kù)
1、數(shù)據(jù)庫(kù)的啟動(dòng)
啟動(dòng)(startup)一個(gè)數(shù)據(jù)庫(kù)需要3個(gè)步驟
1)啟動(dòng)oracle實(shí)例
2)由實(shí)例安裝數(shù)據(jù)庫(kù)
3)打開(kāi)數(shù)據(jù)庫(kù)
在startup命令中,可以通過(guò)不同的選項(xiàng)來(lái)控制數(shù)據(jù)庫(kù)的不同的啟動(dòng)步驟。
NOMOUNT選項(xiàng):
nomount:已經(jīng)通過(guò)參數(shù)文件知道控制文件在哪個(gè)位置,但是還沒(méi)有讀取控制文件。主要的作用就是啟動(dòng)一個(gè)實(shí)例,讀取init.ora初始化參數(shù)文件,啟動(dòng)后臺(tái)進(jìn)程,初始化全局SGA
MOUNT選項(xiàng):
讀取了控制文件,通過(guò)控制文件知道了其他文件(數(shù)據(jù)文件和日志文件),此時(shí)并沒(méi)有讀取數(shù)據(jù)文件和日志文件,這個(gè)狀態(tài)叫mount狀態(tài)。啟動(dòng)實(shí)例并且安裝了數(shù)據(jù)庫(kù),但沒(méi)有打開(kāi)數(shù)據(jù)庫(kù)。這種打開(kāi)方式常在數(shù)據(jù)庫(kù)維護(hù)操作中使用,例如對(duì)數(shù)據(jù)文件更名,改變重做日志及打開(kāi)歸檔方式等,在這種打開(kāi)方式下,除了可以看到SGA 系統(tǒng)列表以外,系統(tǒng)還會(huì)給出“數(shù)據(jù)庫(kù)裝載完畢”提示。
Open選項(xiàng):
讀取完控制文件之后,找到了數(shù)據(jù)文件和日志文件,數(shù)據(jù)庫(kù)就處于OPEN狀態(tài)了。
startupnomount|mount|open
shudownnormal|immedieate|transactional|abort
注意:如果僅僅執(zhí)行startup命令,將會(huì)完成啟動(dòng)實(shí)例,安裝實(shí)例和打開(kāi)數(shù)據(jù)庫(kù)的所有3個(gè)步驟,這是系統(tǒng)出了可以看到前面startup mount方式下所有提示外,還會(huì)給出一個(gè)“數(shù)據(jù)庫(kù)已經(jīng)打開(kāi)”的提示,此時(shí),數(shù)據(jù)庫(kù)系統(tǒng)處于正常的工作狀態(tài),可以接收用戶(hù)請(qǐng)求。
如果使用startup nomount 命令或者startup mount命令,必須采用alter database命令執(zhí)行打開(kāi)數(shù)據(jù)庫(kù)操作,例如:如果以startup nomount方式打開(kāi)數(shù)據(jù)庫(kù),也就是說(shuō)實(shí)例已經(jīng)啟動(dòng),但是數(shù)據(jù)庫(kù)沒(méi)有安裝和打開(kāi),這是必須運(yùn)行下面的兩條命令,數(shù)據(jù)庫(kù)才能正確啟動(dòng)。
ALTER DATABASE MOUNT;
ALTERDATABASE OPEN;
如果以startup mount方式啟動(dòng)數(shù)據(jù)庫(kù),只需要運(yùn)行下面一條命令即可打開(kāi)數(shù)據(jù)庫(kù)
ALTERDATABASE OPEN
2、執(zhí)行startup命令
注意:
oracle11g數(shù)據(jù)庫(kù)在執(zhí)行dbca或者調(diào)整sga后重啟oracle的時(shí)候可能會(huì)出現(xiàn)ORA-00845MEMORY_TARGET not supported on this system 錯(cuò)誤。
究其原因就是Linux系統(tǒng)的shm的大小比SGA設(shè)置的小,造成的,距離來(lái)說(shuō),SGA設(shè)置4G,而shm可能只有1G
解決辦法:
調(diào)整shm的大小,具體操作如下:
vi/etc/fstab
修改如下行的設(shè)置
tmpfs/dev/shm tmpfs defaults 0 0
改成
tmpfs/dev/shm tmpfs defaults,size=6G 0 0
保存退出
重新mount下shm使其生效
mount-o remount /dev/shm
3、關(guān)閉數(shù)據(jù)庫(kù)
4、開(kāi)始startup nomount狀態(tài)
5、修改數(shù)據(jù)庫(kù)到open狀態(tài)
總結(jié):startup這一條命令等于“startupnomount”+“ alter databasemount;”+“alter database open;”這三條命令。
6、數(shù)據(jù)庫(kù)的關(guān)閉
normal:這是默認(rèn)選項(xiàng),使用該選項(xiàng)時(shí),不允許任何新的用戶(hù)連接,但是允許繼續(xù)當(dāng)前的所有連接,只有所有用戶(hù)(自愿的)退出登錄時(shí),數(shù)據(jù)庫(kù)才能真正的關(guān)閉。
通常,正常的數(shù)據(jù)庫(kù)關(guān)閉是沒(méi)有意義的,即使只剩下database control在運(yùn)行,也總是存在未退出登錄的用戶(hù)。也許關(guān)閉一個(gè)數(shù)據(jù)庫(kù)需要幾天或更長(zhǎng)的事件(如果用戶(hù)一直沒(méi)有自己關(guān)閉)
immediate:使用這個(gè)選項(xiàng)時(shí),不允許任何新的用戶(hù)連接,當(dāng)前的所有連接的會(huì)話都被終止。任何活動(dòng)的事務(wù)都會(huì)都將回滾,隨后數(shù)據(jù)庫(kù)會(huì)被關(guān)閉。是一種常用的關(guān)閉數(shù)據(jù)庫(kù)方式,快速關(guān)閉數(shù)據(jù)庫(kù)。
transactional:使用這個(gè)選項(xiàng)時(shí),不允許任何新的用戶(hù)連接,沒(méi)有存在于某個(gè)事務(wù)中的現(xiàn)有會(huì)話被終止,允許當(dāng)前位于某個(gè)事務(wù)中的會(huì)話在完成該事務(wù)之后終止。一但所有會(huì)話終止,數(shù)據(jù)就會(huì)被關(guān)閉(使用shutdown immediate)
abort:就oracle而言,使用這個(gè)選項(xiàng)相當(dāng)于斷電。實(shí)例被立即終止。此時(shí),任何數(shù)據(jù)都不會(huì)被寫(xiě)入磁盤(pán)。但是在下一次啟動(dòng)數(shù)據(jù)庫(kù)的時(shí)候,速度比較慢(需要實(shí)例恢復(fù))。建議在以下情況使用這種方式。
1)數(shù)據(jù)庫(kù)一直處于非正常的工作狀態(tài),不能用shutdownnormal或者shutdown immediate命令關(guān)閉。
2)需要立即關(guān)閉數(shù)據(jù)庫(kù)
3)在啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例時(shí)遇到問(wèn)題
十、使用Navicat for Oracle工具遠(yuǎn)程圖形化管理oracle
1、在win7宿主機(jī)上安裝軟件Navicat for Oracle。
下面的全是下一步即可。
2、新建連接
3、點(diǎn)擊高級(jí)---角色選擇sysdba,位置選擇圖片設(shè)置的位置。
4、查看數(shù)據(jù)庫(kù)
十一、Sql語(yǔ)句以及基本操作
1、使用scott用戶(hù)連接數(shù)據(jù)庫(kù)服務(wù)器
如果鎖定了scott,則需要解鎖
修改密碼并且登錄服務(wù)器
2、查看scott用戶(hù)的數(shù)據(jù)庫(kù)下所有的表
3、新建表products
4、查看表products的結(jié)構(gòu)
Descproducts
5、設(shè)置自動(dòng)提交事物
Set autocommit on
6、格式化字段
1)在圖形化查看emp表。
2)在sqlplus查看emp表
上圖看出來(lái)布局很亂
3)格式化
4)再次查詢(xún)
舉例說(shuō)明格式化問(wèn)題:
SQL> conn sys/123.abcas sysdba;
已連接。
SQL>selectfile_name,tablespace_name from dba_data_files;
SQL>col file_name fora55;
SQL>coltablespace_name for a10
SQL>selectfile_name,tablespace_name from dba_data_files;
FILE_NAME TABLESPACE
-----------------------------------------------------------------
/u01/app/oracle/oradata/orcl/users01.dbf USERS
/u01/app/oracle/oradata/orcl/undotbs01.dbf UNDOTBS1
/u01/app/oracle/oradata/orcl/sysaux01.dbf SYSAUX
/u01/app/oracle/oradata/orcl/system01.dbf SYSTEM
/u01/app/oracle/oradata/orcl/example01.dbf EXAMPLE
目前默認(rèn)一行可以顯示80字符,超過(guò)80字符就會(huì)換行。
SQL>show linesize;
linesize 80
SQL>set linesize 60;
可以查看以下顯示效果:
SQL>selectfile_name,tablespace_name from dba_data_files;
一次默認(rèn)顯示14行
SQL>col username fora30
SQL>select usernamefrom dba_users;
一次默認(rèn)顯示14行
SQL>showpagesize;
pagesize 14
修改默認(rèn)顯示的行為100
SQL>set pagesize 100
SQL>select usernamefrom dba_users;
以上的col file_name for a10、linesize、pagesize的設(shè)置只在當(dāng)前會(huì)話中有效,斷開(kāi)連接之后就不會(huì)再有效果了??梢酝ㄟ^(guò)修改$ORACLE_HOME/sqlplus/admin/下的glogin.sql實(shí)現(xiàn)
[oracle@orclsrv ~]$ cd /u01/app/oracle/product/11.2.0/dbhome_1/sqlplus/admin/
[oracle@orclsrv admin]$ls
glogin.sql help libsqlplus.def plustrce.sqlpupbld.sql
[oracle@orclsrv admin]$
[oracle@orclsrvadmin]$vimglogin.sql
添加常用的一些參數(shù)
setpagesize 100
setlinesize 120
coldname for a20
colloc for a15
colfile_name for a55
coltablespace_name fora10
col name for a20
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。