Linux下Oracle数据库的搭建(新手)
最近由于需要安裝了幾臺服務器 ,由于網(wǎng)上找不到一些過程中遇到的問題,所以把解決方法寫出來吧 !
首先安裝數(shù)據(jù)庫服務器? 如題裝的是Oracle
?
? 系統(tǒng)環(huán)境是Redhat 6.5 x86 64位虛擬化服務器
?
? 首先 要確定需要安裝 的版本? 我們要求的是11g? 最新的是12c
??硬件要求
? ?物理內(nèi)存至少2G
查看命令:
grep?MemTotal?/proc/meminfo? ?交換分區(qū):至少1G,最好是物理內(nèi)存的2倍
查看命令:
grep?SwapTotal?/proc/meminfo? ?硬盤空閑區(qū)至少4G
查看命令:df?-k
? 然后 是系統(tǒng)的支持庫 也就是安裝所需包。
??
make3.8+
binutils-2.15.92+
gcc-3.4.6+
libaio-0.3+
glibc-2.3.4+
compat-libstdc++33+
elfutils-libelf-0.97+
elfutils-libelf-devel-0.97+
gilbc-common-2.3+
glibc-devel-2.3+
glibc-headers-2.3.4
gcc-c++3.4
libaio-devel-0.3+
libgcc-3.4+
libstdc++3.4+
libstdc++-devel3.4+
sysstat-5.0.5+
unixODBC2.2.11+
unixODBC-devel2.2.11+
pdksh-5.2.1.4
expat-1.95.7+
后面是系統(tǒng)內(nèi)核參數(shù)
vi? /etc/sysctl.conf添加或修改如下的行:
本人實際配置環(huán)境中,紅色部分是需要修改行,藍色部分為添加行。
kernel.shmall?=?2097152
kernel.shmmax?=?2147483648
kernel.shmmni?=?4096
kernel.sem?=?250?32000?100?128
fs.file-max?=?65536
net.ipv4.ip_local_port_range?=?1024?65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144
?????????查看當前內(nèi)核參數(shù)的值
????
????????????????修改/etc/host.conf
????????????
增加下面內(nèi)容,如果沒有oracle?的監(jiān)聽器無法啟動
????????
7.0.0.1?localhost????????????????為了提高在linux系統(tǒng)上運行軟件的性能,必須對oracle用戶設置下列shell 限定。
打開文件數(shù)和進程數(shù)的限制,加入下面的行到文件/etc/security/limits.conf
加入下面的行到文件/etc/pam.d/login
創(chuàng)建安裝oracle 所需的組和用戶
????????以下操作需要使用root賬戶創(chuàng)建。
創(chuàng)建oinstall用戶組
創(chuàng)建dba用戶組
創(chuàng)建oracle用戶
初始化oracle用戶密碼
創(chuàng)建Oracle安裝目錄
????本示例中,Oracle安裝路徑為:/home/Oracle/product/11.2.0/dbhome
????創(chuàng)建oracle安裝目錄
修改目錄所屬用戶為oracle用戶
修改目錄權(quán)限
設置oracle用戶環(huán)境變量
????注意以下命令為,必需以oracle用戶身分登錄:
修改/home/oracle/.bash_profile文件,添加以下行
檢查設置的環(huán)境變量
用oracle用戶運行runInstaller 安裝
配置oracle為自啟動服務
以下操作使用root用戶,
1.1?vi?/etc/rc.d/init.d/oracle,復制以下內(nèi)容:
#!/bin/bash
#?chkconfig:?2345?66?36
#?/etc/rc.d/init.d/oracle
#?description:?starts?the?oracle?database
#
ORA_HOME=/oracle/product/10.2/db_1
ORA_OWNER=oracle
case?"$1"?in
??start)
????????echo?-n?"Starting?Oracle?Databases:?"
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????date?+"!?%T?%a?%D?:?Starting?Oracle?Databases?as?part?of?system?up."?>>?/var/log/oracle
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????su?-?$ORA_OWNER?-c?"$ORA_HOME/bin/dbstart"?>>?/var/log/oracle
????????echo?"Done."
????????echo?-n?"Starting?Oracle?Listeners:?"
????????su?-?$ORA_OWNER?-c?"$ORA_HOME/bin/lsnrctl?start"?>>?/var/log/oracle
????????echo?"Done."
????????echo?""
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????date?+"!?%T?%a?%D?:?Finished."?>>?/var/log/oracle
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????touch?/var/lock/subsys/oracle
????????;;
??stop)
????????echo?-n?"Shutting?Down?Oracle?Listeners:?"
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????date?+"!?%T?%a?%D?:?Shutting?Down?Oracle?Databases?as?part?of?system?down."?>>?/var/log/oracle
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????su?-?$ORA_OWNER?-c?"$ORA_HOME/bin/lsnrctl?stop"?>>?/var/log/oracle
????????echo?"Done."
????????rm?-f?/var/lock/subsys/oracle
????????echo?-n?"Shutting?Down?Oracle?Databases:?"
????????su?-?$ORA_OWNER?-c?"$ORA_HOME/bin/dbshut"?>>?/var/log/oracle
????????echo?"Done."
????????echo?""
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????date?+"!?%T?%a?%D?:?Finished."?>>?/var/log/oracle
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????;;
?restart)
????????echo?-n?"Restarting?Oracle?Databases:?"
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????date?+"!?%T?%a?%D?:?Restarting?Oracle?Databases?as?part?of?system?up."?>>?/var/log/oracle
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????su?-?$ORA_OWNER?-c?"$ORA_HOME/bin/dbshut"?>>?/var/log/oracle
????????su?-?$ORA_OWNER?-c?"$ORA_HOME/bin/dbstart"?>>?/var/log/oracle
????????echo?"Done."
????????echo?-n?"Restarting?Oracle?Listeners:?"
????????su?-?$ORA_OWNER?-c?"$ORA_HOME/bin/lsnrctl?stop"?>>?/var/log/oracle
????????su?-?$ORA_OWNER?-c?"$ORA_HOME/bin/lsnrctl?start"?>>?/var/log/oracle
????????echo?"Done."
????????echo?""
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????date?+"!?%T?%a?%D?:?Finished."?>>?/var/log/oracle
????????echo?"---------------------------------------------------------------------------------"?>>?/var/log/oracle
????????touch?/var/lock/subsys/oracle
????????;;
??*)
??echo?"Usage:?oracle?{?start?|?stop?|?restart?}"
??exit?1
esac
exit?0
1.2?修改/etc/rc.d/init.d/oracle執(zhí)行權(quán)限
chmod??755?/etc/rc.d/init.d/oracle
1.3?添加oracle服務
chkconig??--add?oracle
1.4?設置oracle服務自啟動
chkconfig?oracle?on
1.5?啟動、關閉、重啟oracle命令
啟動oracle數(shù)據(jù)庫:
service??oracle??start
關閉oracle數(shù)據(jù)庫:
service??oracle??stop
重啟oracle數(shù)據(jù)庫
service??oracle?restart
完成之后需要配置監(jiān)聽 推薦使用圖形化工具? 運行 netmgr (在$ORACLE_HOME/bin下)
然后重新加載監(jiān)聽重啟就可以了 lsnrctl?reload lsnrctl?stop lsnrctl?start轉(zhuǎn)載于:https://blog.51cto.com/comfan/1690219
總結(jié)
以上是生活随笔為你收集整理的Linux下Oracle数据库的搭建(新手)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java Core系列之Concurre
- 下一篇: iOS开发--正则表达式