您好,登錄后才能下訂單哦!
oracle數(shù)據(jù)庫(kù)是一個(gè)相對(duì)龐大的應(yīng)用軟件,對(duì)服務(wù)器的系統(tǒng)類型,內(nèi)存和交換分區(qū)、硬盤(pán)空間、內(nèi)核參數(shù)、軟件環(huán)境、用戶環(huán)境等都有相應(yīng)的要求。只有滿足了必備的條件,才能確保oracle 12c安裝成功,運(yùn)行穩(wěn)定。
部署oracle 12c對(duì)系統(tǒng)的要求:
- 防火墻需要放行相關(guān)流量,oracle默認(rèn)端口號(hào)是5500;
- SELinux必須關(guān)閉;
- 內(nèi)核選擇3.10及以上版本;
- 物理內(nèi)存;必須高于1G,交換空間,當(dāng)物理內(nèi)存為1~2G 時(shí),交換分區(qū)為物理內(nèi)存的1.5\~2倍,當(dāng)物理內(nèi)存為2\~16G時(shí),交換分區(qū)與物理內(nèi)存大小一樣就可以,當(dāng)物理內(nèi)存超過(guò)16G時(shí),交換分區(qū)使用16GB就行了。
- 至少需要20GB的磁盤(pán)空間,如果不單獨(dú)給oracle創(chuàng)建分區(qū),那么至少要保證根分區(qū)有15GB的可用磁盤(pán)空間
以上基本是硬件的要求,接下來(lái)開(kāi)始為了可以部署oracle,還需要修改軟件方面的參數(shù)。
先下載oracle的安裝程序吧,我這里提供了一個(gè)oracle 12c的安裝文件百度網(wǎng)盤(pán)鏈接,是oracle 12c的版本,也可以去oracle中文官方網(wǎng)站,它支持oracle安裝文件的免費(fèi)下載(需要注冊(cè)賬號(hào),最新的版本是oracle 19c),找到所需的版本下載使用即可,我這里就安裝12c了。
安裝oracle數(shù)據(jù)庫(kù)前,要求規(guī)劃好主機(jī)名和IP。服務(wù)器的主機(jī)名、IP地址也應(yīng)提前確定無(wú)誤,一旦oracle數(shù)據(jù)庫(kù)安裝完成,建議不要再修改主機(jī)名,否則會(huì)導(dǎo)致數(shù)據(jù)庫(kù)啟動(dòng)失敗。一般需要執(zhí)行以下操作:
[root@localhost ~]# hostnamectl set-hostname oracle #修改主機(jī)名,并寫(xiě)入配置文件
[root@localhost ~]# bash #使主機(jī)名生效
[root@oracle ~]# echo "192.168.1.1 oracle" >> /etc/hosts #將本機(jī)主機(jī)名及IP對(duì)應(yīng)寫(xiě)入/etc/hosts文件,以便解析
#也可以通過(guò)DNS來(lái)解析,這里為了省事
[root@oracle ~]# tail -1 /etc/hosts #確認(rèn)已添加
192.168.1.1 oracle
oracle 12c的安裝過(guò)程是在圖形界面中進(jìn)行,因此建議使用帶有GNOME中文桌面環(huán)境的centos服務(wù)器,軟件開(kāi)發(fā)工具當(dāng)然也是必不可少的,可以使用yum安裝系統(tǒng)盤(pán)中的必要的軟件環(huán)境,具體如下:
[root@oracle ~]# mount /dev/cdrom /media #掛載系統(tǒng)盤(pán)
#以下是配置本地yum源
[root@oracle yum.repos.d]# cd /etc/yum.repos.d/
[root@oracle yum.repos.d]# mkdir /yum.repo.bak
[root@oracle yum.repos.d]# mv * /yum.repo.bak/
[root@oracle yum.repos.d]# vim system.repo #寫(xiě)入以下內(nèi)容
[oracle]
baseurl=file:///media
gpgcheck=0
[root@oracle yum.repos.d]# yum clean all #清除yum緩存
[root@oracle yum.repos.d]# cd
#以下是安裝一些開(kāi)發(fā)工具
[root@oracle ~]# yum -y install binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
[root@oracle ~]# vim /etc/sysctl.conf #調(diào)整內(nèi)核參數(shù),主要是內(nèi)存調(diào)度、端口范圍、打開(kāi)文件數(shù)、I/O請(qǐng)求等相關(guān)設(shè)置
..........................#省略部分內(nèi)容
#在文件末尾寫(xiě)入以下參數(shù)
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
[root@oracle ~]# sysctl -p #重新加載配置文件,確保輸出的信息沒(méi)有報(bào)錯(cuò)
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
[root@oracle ~]# groupadd -g 54321 oinstall #創(chuàng)建安裝組
[root@oracle ~]# groupadd -g 54322 dba #創(chuàng)建管理組
[root@oracle ~]# useradd -u 54321 -g oinstall -G dba oracle #創(chuàng)建運(yùn)行用戶
[root@oracle ~]# echo "123.comf" | passwd --stdin oracle #為該用戶設(shè)置密碼
[root@oracle ~]# mkdir -p /u01/app/oracle #創(chuàng)建基本目錄
[root@oracle ~]# chown -R oracle:oinstall /u01/app/ #更改屬組
[root@oracle ~]# chmod -R 755 /u01/app/oracle/ #更改權(quán)限
[root@oracle ~]# vim /home/oracle/.bash_profile #調(diào)整oracle用戶的環(huán)境變量
........................#省略部分內(nèi)容
#寫(xiě)入以下內(nèi)容
umask 022
ORACLE_BASE=/u01/app/oracle #定義基本目錄
ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1/ #定義安裝家目錄
ORACLE_SID=orcl #定義數(shù)據(jù)庫(kù)實(shí)例名稱
NLS_LANG="SIMPLIFIED CHINESE_CHINA".UTF8 #確定使用何種語(yǔ)言環(huán)境
PATH=$PATH:$ORACLE_HOME/bin
LANG=zh_CN.UTF-8
export PATH LANG NLS_LANG ORACLE_BASE ORACLE_HOME ORACLE_SID
export DISPLAY=:0.0
oracle用戶資源限制要求
進(jìn)程會(huì)話限制可以采用pam_limits認(rèn)證模塊來(lái)實(shí)現(xiàn),通過(guò)修改登錄程序login的PAM設(shè)置以啟用該認(rèn)證,然后修改/etc/security/limits.conf文件,使用戶oracle能夠打開(kāi)的進(jìn)程數(shù)、進(jìn)程使用的文件數(shù)加大。如下:
[root@oracle ~]# vim /etc/pam.d/login #修改PAM設(shè)置以便啟用該認(rèn)證
......................#省略部分內(nèi)容
#在末尾寫(xiě)入以下兩行:
session required /lib/security/pam_limits.so
session required pam_limits.so
[root@oracle ~]# vim /etc/security/limits.conf #修改該文件
......................#省略部分內(nèi)容
#在文件末尾寫(xiě)入以下內(nèi)容:
oracle soft nproc 2047 #進(jìn)程數(shù)軟限制
oracle hard nproc 16384 #進(jìn)程數(shù)硬限制
oracle soft nofile 1024 #文件數(shù)軟限制
oracle hard nofile 65536 #文件數(shù)硬限制
oracle soft stack 10240 #Oracle軟堆棧限制
[root@oracle ~]# vim /etc/profile #添加如下內(nèi)容到該文件末尾
......................#省略部分內(nèi)容
#在文件末尾寫(xiě)入以下內(nèi)容:
if [ $USER = "oracle" ];then
if [ $SHELL = "/bin/ksh" ];then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
不配置oracle用戶資源的限制,也不會(huì)影響到oracle數(shù)據(jù)庫(kù)的成功安裝,但是,若有糟糕的SQL語(yǔ)句對(duì)服務(wù)器的資源無(wú)限占用,導(dǎo)致長(zhǎng)時(shí)間對(duì)用戶請(qǐng)求無(wú)響應(yīng),則建議提前限制oracle用戶資源。
準(zhǔn)備工作至此就完成了,需要重啟系統(tǒng),重啟之后,最好再次檢查之前的配置是否生效。建議不要做臨時(shí)配置。
[root@oracle ~]# mkdir /tmp/abc #創(chuàng)建目錄,/tmp目錄下,oracle用戶才可以讀取到
[root@oracle ~]# mount /dev/cdrom /media #掛載我提供的oracle光盤(pán)鏡像文件
[root@oracle ~]# ls /media/ #確認(rèn)oracle文件存在
linuxx64_12201_database.zip
[root@oracle ~]# cd /tmp/abc #切換至/tmp/abc/目錄下
[root@oracle abc]# cp /media/linuxx64_12201_database.zip . #將安裝文件復(fù)制到當(dāng)前目錄下,文件有點(diǎn)大,請(qǐng)耐心等待
[root@oracle abc]# unzip linuxx64_12201_database.zip #解壓該安裝文件
oracle 12c的安裝主要通過(guò)runInstaller腳本進(jìn)行,訪問(wèn)網(wǎng)頁(yè)welcome.html可以查看產(chǎn)品手冊(cè),其中包括產(chǎn)品說(shuō)明、發(fā)行注記、安裝指南等文檔,為我們提供了極為豐富的幫助信息。
所有前置條件準(zhǔn)備好以后,就可以正式開(kāi)始安裝了,如果當(dāng)前的圖形桌面環(huán)境是以其他用戶的身份(如root)登錄的,則還應(yīng)添加授權(quán)以允許oracle使用圖形終端。例如:“xhost + oracle@localhost”表示允許用戶oracle從本機(jī)訪問(wèn),執(zhí)行“xhost +”表示取消所有限制。
以用戶oracle的身份登錄到centos 的圖形桌面環(huán)境,啟動(dòng)database目錄下的runInstaller腳本文件,具體操作如下(若安裝oracle 19c則需要將存放oracle 19c的目錄下都更改屬主為oracle,如解壓出來(lái)的oracle安裝文件都位于/tmp/abc目錄下,那么需要執(zhí)行命令:chown -R oracle /tmp/abc,以便更改它的屬主,否則會(huì)報(bào)錯(cuò),這里安裝的oracle 12c就不會(huì)出現(xiàn)這個(gè)問(wèn)題。):
[root@oracle ~]# xhost + #一定要以root用戶在圖形環(huán)境中操作
[root@oracle ~]# su - oracle #切換至oracle用戶
[oracle@oracle ~]$ cd /tmp/abc/database/ #切換至剛才解壓出來(lái)的oracle安裝文件目錄
[oracle@oracle database]$ ./runInstaller #執(zhí)行腳本進(jìn)行安裝,執(zhí)行該腳本后,就會(huì)啟動(dòng)oracle圖形化的安裝程序
接下來(lái)的操作基本就是在圖形化窗口上進(jìn)行操作了,如下:
執(zhí)行runInstaller腳本后打開(kāi)的窗口如下:
1、
2、
3、
4、
5、
6、
7、
8、
9、
10、
11、
12、
13、
14、在安裝過(guò)程中,會(huì)提示讓使用root身份,執(zhí)行下面的兩個(gè)腳本,此時(shí),切換一個(gè)工作區(qū),使用root登錄,將腳本名復(fù)制過(guò)去執(zhí)行以下,即可!如下:
15、使用root身份執(zhí)行上面圖中提示的腳本:
[root@oracle ~]# /u01/app/oraInventory/orainstRoot.sh
[root@oracle ~]# /u01/app/oracle/product/12.2.0/dbhome_1/root.sh
#執(zhí)行第二個(gè)腳本時(shí),會(huì)有兩次交互界面,第一次直接按回車鍵即可;
#第二次是要安裝oracle跟蹤文件分析器,可直接回車,也可輸入“yes”進(jìn)行安裝
16、
17、安裝成功,關(guān)閉即可
安裝完成后,可以通過(guò)https://oracle服務(wù)器IP:5500/em ,實(shí)現(xiàn)訪問(wèn)EM(Enterprise Manager,企業(yè)管理器)database Express 平臺(tái),以便對(duì)oracle 12c的數(shù)據(jù)庫(kù)進(jìn)行簡(jiǎn)單管理,但訪問(wèn)EM database express平臺(tái),需要flase的支持。我這里使用的Windows客戶端直接訪問(wèn)的(安裝了flase),若使用Linux自帶的火狐瀏覽器,可以下載我提供的Linux中的flase player插件,是個(gè)rpm格式的,直接執(zhí)行命令rpm -ivh進(jìn)行安裝即可。
登錄頁(yè)面如下:
上圖中提到的密碼,就是在下面這個(gè)過(guò)程中定義的口令:
登錄后的界面如下:
關(guān)于這個(gè)管理界面,就不多做介紹了,自行研究即可。
使用sqlplus命令可以在命令行界面訪問(wèn)oracle數(shù)據(jù)庫(kù),但是登錄到數(shù)據(jù)庫(kù)后,不可以使用上下鍵翻歷史命令,如果想要解決,可以進(jìn)行以下操作。
1、下載我提供的tar.gz軟件包
2、掛載系統(tǒng)盤(pán),然后執(zhí)行以下命令:
[root@oracle ~]# yum -y install ncurses* readline* #安裝依賴包
[root@oracle abc]# tar -zxvf rlwrap-0.30.tar.gz #解壓我提供的tar包
[root@oracle abc]# cd rlwrap-0.30/ #進(jìn)入解壓后的目錄
[root@oracle rlwrap-0.30]# ./configure && make && make install #編譯安裝
[root@oracle ~]# vim /home/oracle/.bash_profile #配置oracle用戶的環(huán)境變量,以便方便使用rlwrap命令
#經(jīng)過(guò)以上配置,執(zhí)行rlwrap + 原命令登錄到oracle數(shù)據(jù)庫(kù),便可以使用上下鍵翻歷史命令了
[root@oracle ~]# su - oracle #切換到oracle用戶,才可以登錄到oracle數(shù)據(jù)庫(kù)
上一次登錄:三 9月 25 16:46:42 CST 2019
[oracle@oracle ~]$ rlwrap sqlplus / as sysdba #登錄數(shù)據(jù)庫(kù)
在上面的登錄數(shù)據(jù)庫(kù)命令中,是實(shí)現(xiàn)了sys以sysdba的身份連接到本機(jī)的oracle數(shù)據(jù)庫(kù),sys用戶是oracle的最高管理員,以sys用戶登錄的時(shí)候一般要加上as sysdba,而其他用戶則不需要,若以其他用戶身份登錄oracle數(shù)據(jù)庫(kù),可以執(zhí)行命令:“[oracle@oracle ~]$ sqlplus system/oracle
”
進(jìn)入SQL環(huán)境后的簡(jiǎn)單操作(在SQL>模式下,不區(qū)分大小寫(xiě)):
SQL> help index #查看支持的指令列表
SQL> show user #查看當(dāng)前的用戶
如果在安裝oracle產(chǎn)品時(shí)不創(chuàng)建數(shù)據(jù)庫(kù),那么要使用oracle系統(tǒng)就必須先創(chuàng)建數(shù)據(jù)庫(kù)。如果在安裝oracle時(shí)選擇建立數(shù)據(jù)庫(kù),也可以再創(chuàng)建第二個(gè)數(shù)據(jù)庫(kù)(不過(guò)為了使oracle數(shù)據(jù)庫(kù)充分利用系統(tǒng)資源,建議一個(gè)服務(wù)器上只創(chuàng)建一個(gè)數(shù)據(jù)庫(kù))。
創(chuàng)建數(shù)據(jù)庫(kù)的方法有兩種:通過(guò)圖形化界面,或者采用“CREATE DATABASE”命令,這里說(shuō)一下圖形化界面創(chuàng)建數(shù)據(jù)庫(kù)的方法:
[oracle@oracle database]$ dbca #以oracle身份運(yùn)行命令dbca,會(huì)彈出一個(gè)窗口
如果沒(méi)有彈出窗口,可以參考前面的步驟,以root用戶運(yùn)行“xhost +”命令,再以oracle身份運(yùn)行“export DISPLAY=:0.0”命令。
執(zhí)行命令后會(huì)彈出以下窗口:
oracle數(shù)據(jù)庫(kù)的啟動(dòng)與關(guān)閉是日常工作之一。對(duì)于大多數(shù)oracle DBA來(lái)說(shuō),啟動(dòng)和關(guān)閉oracle數(shù)據(jù)庫(kù)最常用的方式是在命令行方式下執(zhí)行。
要啟動(dòng)和關(guān)閉數(shù)據(jù)庫(kù),必須要以具有oracle管理員權(quán)限的用戶登錄,通常以具有SYSDBA權(quán)限的用戶登錄。
啟動(dòng)一個(gè)數(shù)據(jù)庫(kù)需要三個(gè)步驟:①啟動(dòng)oracle實(shí)例(非裝載階段);②由實(shí)例裝載數(shù)據(jù)庫(kù)(裝載階段);③打開(kāi)數(shù)據(jù)庫(kù)(打開(kāi)階段)。
在startup命令中,可以使用不同的選項(xiàng)來(lái)控制數(shù)據(jù)庫(kù)的不同啟動(dòng)步驟。
1)startup nomount(該命令不常用)
nomount選項(xiàng)僅僅啟動(dòng)一個(gè)oracle實(shí)例,讀取init.ora初始化參數(shù)文件、啟動(dòng)后臺(tái)進(jìn)程、初始化SGA。當(dāng)實(shí)例啟動(dòng)后,系統(tǒng)將顯示一個(gè)SGA內(nèi)存結(jié)構(gòu)和大小的列表,如下:
[oracle@oracle ~]$ rlwrap sqlplus / as sysdba #進(jìn)入oracle數(shù)據(jù)庫(kù)
SQL> startup nomount #執(zhí)行該命令
ORACLE 例程已經(jīng)啟動(dòng)。
Total System Global Area 1593835520 bytes
Fixed Size 8793256 bytes
Variable Size 1023411032 bytes
Database Buffers 553648128 bytes
Redo Buffers 7983104 bytes
2)startup mount(某些時(shí)候會(huì)用到該命令)
startup mount 命令啟動(dòng)實(shí)例并且裝載數(shù)據(jù)庫(kù),但是沒(méi)有打開(kāi)數(shù)據(jù)庫(kù)。oracle系統(tǒng)讀取控制文件中關(guān)于數(shù)據(jù)文件和重做日志文件的內(nèi)容,但并不打開(kāi)該文件。這種打開(kāi)方式常在數(shù)據(jù)庫(kù)維護(hù)操作中使用,如對(duì)數(shù)據(jù)文件的更名、改變重做日志及打開(kāi)歸檔模式等。在這種打開(kāi)方式下,除了可以看到SGA系統(tǒng)列表以外,系統(tǒng)還會(huì)給出“數(shù)據(jù)庫(kù)裝載完畢”的提示。
SQL> alter database mount; #由于上面已經(jīng)執(zhí)行了startup nomount命令,所以再更改它的狀態(tài),就需要使用該命令
3)startup(正常時(shí)使用的命令)
startup命令完成啟動(dòng)實(shí)例,裝載數(shù)據(jù)庫(kù)和打開(kāi)數(shù)據(jù)庫(kù)三個(gè)步驟。此時(shí),數(shù)據(jù)庫(kù)使數(shù)據(jù)文件和重做日志文件在線,通常還會(huì)請(qǐng)求一個(gè)或者多個(gè)回滾段;系統(tǒng)除了可以看到前面startup mount 方式下的所有提示外,還會(huì)給出一個(gè)“數(shù)據(jù)庫(kù)已經(jīng)打開(kāi)”的提示;數(shù)據(jù)庫(kù)系統(tǒng)處于正常的工作狀態(tài),可以接收用戶的請(qǐng)求。
如果采用startup nomount或者startup mount的數(shù)據(jù)庫(kù)打開(kāi)方式,必須采用alter database命令來(lái)執(zhí)行裝載或打開(kāi)數(shù)據(jù)庫(kù)的操作。
前面兩條命令都執(zhí)行過(guò)了(startup nomount和alter database mount),所以這里再執(zhí)行下面命令,數(shù)據(jù)庫(kù)就可以說(shuō)是正確啟動(dòng)完成了。如下:
SQL> alter database open; #執(zhí)行該命令
正常來(lái)說(shuō),可以直接使用下面一條命令來(lái)正常啟動(dòng)數(shù)據(jù)庫(kù),如下:
SQL> startup #在數(shù)據(jù)庫(kù)關(guān)閉狀態(tài)下執(zhí)行該命令,數(shù)據(jù)庫(kù)會(huì)依次啟動(dòng)、裝載、打開(kāi)。
ORACLE 例程已經(jīng)啟動(dòng)。
Total System Global Area 1593835520 bytes
Fixed Size 8793256 bytes
Variable Size 1023411032 bytes
Database Buffers 553648128 bytes
Redo Buffers 7983104 bytes
數(shù)據(jù)庫(kù)裝載完畢。
數(shù)據(jù)庫(kù)已經(jīng)打開(kāi)。
對(duì)于數(shù)據(jù)庫(kù)的關(guān)閉,有四種不同的關(guān)閉選項(xiàng)。
1)shutdown normal
shutdown normal是shutdown命令的默認(rèn)選項(xiàng)。也就是說(shuō),如果用戶發(fā)出shutdown命令,即執(zhí)行shutdown normal命令。
發(fā)出該命令后,任何新的連接都將不再允許連接到數(shù)據(jù)庫(kù)。在數(shù)據(jù)庫(kù)關(guān)閉之前,oracle將等待目前連接的所有用戶都從數(shù)據(jù)庫(kù)中退出后才開(kāi)始關(guān)閉數(shù)據(jù)庫(kù)。采用這種方式關(guān)閉數(shù)據(jù)庫(kù),在下一次啟動(dòng)時(shí)不需要進(jìn)行任何的實(shí)例恢復(fù)。但需要注意的是,采用這種方式時(shí),也許關(guān)閉一個(gè)數(shù)據(jù)庫(kù)需要幾天或更長(zhǎng)的時(shí)間。
2)shutdown immediate
shutdown immediate是常用的一種關(guān)閉數(shù)據(jù)庫(kù)的方式。若即想很快地關(guān)閉數(shù)據(jù)庫(kù),又想讓數(shù)據(jù)庫(kù)“干凈”的關(guān)閉,則常采用這種方式。
發(fā)出該命令后,當(dāng)前正在被oracle處理的SQL語(yǔ)句立即中斷,系統(tǒng)中任何沒(méi)有提交的事務(wù)全部回滾。如果系統(tǒng)中存在一個(gè)很長(zhǎng)的未提交的事務(wù),那么采用這種方式關(guān)閉數(shù)據(jù)庫(kù)也需要一段時(shí)間(該事務(wù)回滾時(shí)間)。系統(tǒng)不會(huì)等待連接到數(shù)據(jù)庫(kù)的所有用戶退出系統(tǒng),而會(huì)強(qiáng)行回滾當(dāng)前所有的活動(dòng)事務(wù),然后斷開(kāi)所有的連接用戶。
3)shutdown transactional
shutdown transactional 命令常用來(lái)計(jì)劃關(guān)閉數(shù)據(jù)庫(kù),它會(huì)等待當(dāng)前連接到系統(tǒng)且正在活動(dòng)的事務(wù)執(zhí)行完畢,運(yùn)行該命令后,任何新的連接和事務(wù)都是不允許的。它所有活動(dòng)的事務(wù)執(zhí)行完成后,數(shù)據(jù)庫(kù)將以和shutdown immediate同樣的方式關(guān)閉數(shù)據(jù)庫(kù)。
4)shutdown abort
shutdown abort是關(guān)閉數(shù)據(jù)庫(kù)方式的最后選擇,是在沒(méi)有任何辦法關(guān)閉數(shù)據(jù)庫(kù)的情況下不得不采用的方式,一般不要采用。在下列情況出現(xiàn)時(shí)可以考慮采用這種方式關(guān)閉數(shù)據(jù)庫(kù)。
在啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例時(shí)遇到問(wèn)題。
發(fā)出該命令后,所有正在運(yùn)行的SQL語(yǔ)句將立即中止,所有未提交的事務(wù)將不回滾,oracle也不等待目前連接到數(shù)據(jù)庫(kù)的用戶退出系統(tǒng);下一次啟動(dòng)數(shù)據(jù)庫(kù)時(shí)需要實(shí)例恢復(fù),因此,下一次啟動(dòng)可能比平時(shí)需要更多的時(shí)間。
在關(guān)閉數(shù)據(jù)庫(kù)時(shí)最好使用shutdown immediate方式,因?yàn)檫@種方式安全且相對(duì)較快。不是萬(wàn)不得已不要使用shutdown abort 方式,因?yàn)檫@種方式會(huì)造成數(shù)據(jù)丟失,并且恢復(fù)數(shù)據(jù)庫(kù)也需要較長(zhǎng)時(shí)間。
當(dāng)oracle數(shù)據(jù)庫(kù)實(shí)例啟動(dòng)完成后,為了使客戶端用戶能連接到oracle實(shí)例,DBA還需要在oracle所在的服務(wù)器上使用lsnrctl命令啟動(dòng)監(jiān)聽(tīng)進(jìn)程。如果數(shù)據(jù)庫(kù)實(shí)例關(guān)閉,一般也要關(guān)閉監(jiān)聽(tīng)進(jìn)程。
啟動(dòng)監(jiān)聽(tīng)是oracle用戶在操作系統(tǒng)下執(zhí)行的命令,可以直接在lsnrctl后加參數(shù),也可在該命令提示符后進(jìn)行操作,具體如下:
[oracle@oracle ~]$ lsnrctl #執(zhí)行該命令
LSNRCTL for Linux: Version 12.2.0.1.0 - Production on 25-9月 -2019 21:59:04
Copyright (c) 1991, 2016, Oracle. All rights reserved.
歡迎來(lái)到LSNRCTL, 請(qǐng)鍵入"help"以獲得信息。
LSNRCTL> start #啟動(dòng)監(jiān)聽(tīng)
啟動(dòng)/u01/app/oracle/product/12.2.0/dbhome_1//bin/tnslsnr: 請(qǐng)稍候...
TNSLSNR for Linux: Version 12.2.0.1.0 - Production
系統(tǒng)參數(shù)文件為/u01/app/oracle/product/12.2.0/dbhome_1/network/admin/listener.ora
寫(xiě)入/u01/app/oracle/diag/tnslsnr/oracle/listener/alert/log.xml的日志信息
監(jiān)聽(tīng): (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle)(PORT=1521)))
監(jiān)聽(tīng): (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
正在連接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle)(PORT=1521)))
LISTENER 的 STATUS
------------------------
別名 LISTENER
版本 TNSLSNR for Linux: Version 12.2.0.1.0 - Production
啟動(dòng)日期 25-9月 -2019 21:59:12
正常運(yùn)行時(shí)間 0 天 0 小時(shí) 0 分 0 秒
跟蹤級(jí)別 off
安全性 ON: Local OS Authentication
SNMP OFF
監(jiān)聽(tīng)程序參數(shù)文件 /u01/app/oracle/product/12.2.0/dbhome_1/network/admin/listener.ora
監(jiān)聽(tīng)程序日志文件 /u01/app/oracle/diag/tnslsnr/oracle/listener/alert/log.xml
監(jiān)聽(tīng)端點(diǎn)概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
監(jiān)聽(tīng)程序不支持服務(wù)
命令執(zhí)行成功
也可以直接使用以下命令“來(lái)啟動(dòng)監(jiān)聽(tīng):
[oracle@oracle ~]$ lsnrctl start #啟動(dòng)監(jiān)聽(tīng)
[oracle@oracle ~]$ lsnrctl stop #關(guān)閉監(jiān)聽(tīng)
LSNRCTL for Linux: Version 12.2.0.1.0 - Production on 25-9月 -2019 22:00:31
Copyright (c) 1991, 2016, Oracle. All rights reserved.
正在連接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle)(PORT=1521)))
命令執(zhí)行成功
———————— 本文至此結(jié)束,感謝閱讀 ————————
免責(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)容。