Linux静默安装oracle
文章來源:https://blog.51cto.com/meiling/1783490
1.操作系統及Oracle版本
Linux版本:red_hat release6.2 (Final)
Oracle版本:Oracle Database11g Release 2 (11.2.0.1.0) for Linux x86-64 (linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip)
?
2.硬件檢測:
物理內存不少于1G
硬盤可以空間不少于5G
swap分區空間不少于2G
支持256色以上顯卡
cpu主頻不小于550mHZ
?
cat /etc/issue
uname -r (版本)
grep MemTotal /proc/meminfo?(內存大小)
grep SwapTotal /proc/meminfo?(交換區大小)
grep "model name" /proc/cpuinfo?(CPU信息)
free?(可用內存)
?
3.主機名確認無誤
vi /etc/hosts
IP hostname(主機名)
?
service iptables stop
setenforce=0
?
如果交換空間不夠:
dd if=/dev/zero of=/test bs=1G count=4
mkswap -f /test
swapon /test
free -m
一、下載安裝相關依賴安裝包:
yum install -y binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33.i686 gcc gcc-c++ glibc.i686 glibc glibc-devel glibc-devel.i686 pdksh libgcc.i686 libgcc libstdc++.i686 libstdc++ libstdc++-devel.i686 libstdc++-devel libaio.i686 libaio libaio-devel.i686 libaio-devel make sysstat unixODBC unixODBC.i686 unixODBC-devel unixODBC-devel.i686 libXext.i686 libXext elfutils-libelf-devel unzip
二、內核參數修改
vi /etc/sysctl.conf
在文件末尾加上以下內容:
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 536870912
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
立即執行修改:
?sysctl -p
三、編輯vi /etc/pam.d/login文件:
vi /etc/pam.d/login
在文件末尾添加以下內容:
session??required????? pam_limits.so?????
四、修改用戶的SHELL的限制,修改/etc/security/limits.conf文件
vi /etc/security/limits.conf
在文件末尾加上以下內容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
五、修改?/etc/profile?限制其他用戶使用:
vi /etc/profile
在文件末尾加上以下內容:
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
使設置生效
source /etc/profile
六、創建相應用戶及用戶組:
groupadd oinstall???? //創建安裝組
groupadd dba?????????? //創建管理組
useradd -g oinstall -G dba -d /data/oracle?oracle????? //創建運行用戶
passwd oracle????????? //設置oracle用戶的密碼
修改目錄權限:
chown -R oracle:oinstall /data/oracle
chmod 755 -R /data/oracle
切換到oracle用戶下,解壓:
[oracle@just ~]$ unzip linux.x64_11gR2_database_1of2.zip
[oracle@just ~]$ unzip linux.x64_11gR2_database_2of2.zip
七、設置oracle環境變量:
su - oracle
vi ~/.bash_profile
在最后加上以下內容:
export ORACLE_BASE=/data/oracle
export ORACLE_SID=orcl
注意,除了ORACLE_BASE和ORACLE_SID,(/etc/profile和.bash_profile中)不設置任何oracle相關環境變量(ORACLE_HOME, PATH,LD_LIBRARY_PATH等)
使設置生效
source /data/oracle/.bash_profile
檢查環境變量:
env
同時,在使用靜默安裝的時候會檢查DISPLAY的設置,如果經常說檢查DISPLAY不行的話,到root用戶下執行“xhost +?你的ip:0.0”
八、靜默安裝軟件
8.1?復制響應文件模板
# su – oracle
mkdir etc //創建個目錄
cp /data/oracle/database/response/* /data/oracle/etc/
設置響應文件權限
chmod 700 /data/oracle/etc/*.rsp(注意所有者,oinstall)
8.2?靜默安裝Oracle軟件
su - oracle
修改安裝Oracle軟件的響應文件/data/oracle/etc/db_install.rsp
?
oracle.install.option=INSTALL_DB_SWONLY ????//安裝類型,只裝數據庫軟件
ORACLE_HOSTNAME=test ??????? ?????????????????//主機名稱(hostname查詢)
UNIX_GROUP_NAME=oinstall ?????? ????????????//?安裝組
INVENTORY_LOCATION=/data/oracle/oraInventory ?//INVENTORY目錄(不填就是默認值)
SELECTED_LANGUAGES=en,zh_CN,zh_TW??? ?????????//?選擇語言
ORACLE_HOME=/data/oracle/product/11.2.0/db_1 ??// oracle_home
ORACLE_BASE=/data/oracle ?? ???????????????????// oracle_base
oracle.install.db.InstallEdition=EE ?????????// oracle版本
oracle.install.db.isCustomInstall=false ? ? ?//自定義安裝,否,使用默認組件
oracle.install.db.DBA_GROUP=dba ?????? ???? ?//dba用戶組
oracle.install.db.OPER_GROUP=oinstall ???????//oper用戶組
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE???????//數據庫類型
oracle.install.db.config.starterdb.globalDBName=orcl ? ? ? ??//globalDBName
oracle.install.db.config.starterdb.SID=orcl? //SID
oracle.install.db.config.starterdb.memoryLimit=81920?????? ??//自動管理內存的內存(M)
oracle.install.db.config.starterdb.password.ALL=oracle??????//設定所有數據庫用戶使用同一個密碼
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false(手動寫了false)
DECLINE_SECURITY_UPDATES=true ?????//設置安全更新(貌似是有bug,這個一定要選true,否則會無限提醒郵件地址有問題,終止安裝。PS:不管地址對不對)
開始靜默安裝
cd database
./runInstaller -silent -responseFile /data/oracle/etc/db_install.rsp
安裝中,如果提示[WARNING]不必理會,此時安裝程序仍在進行,如果出現[FATAL],則安裝程序已經停止了。
查看安裝日志信息了解安裝進度
cd $ORACLE_BASE/oraInventory/logs
tail -f installActions*.log
出現類似如下提示表示安裝完成:
#-------------------------------------------------------------------
/usr/oracle/oraInventory/orainstRoot.sh
/usr/oracle/product/11.2.0/db_1/root.sh
To execute the configuration scripts:
1. Open a terminal window
2. Log in as "root"
3. Run the scripts
4. Return to this window and hit"Enter" key to continue
?
Successfully Setup Software.
#-------------------------------------------------------------------
使用root用戶執行腳本
這里是有兩個腳本要執行,跑一下就好
su - root
/data/oracle/product/11.2.0/db_1/root.sh
/data/oracle/oraInventory/orainstRoot.sh
vi? /opt/oracle/.bash_profile
最后添加上面下面內容
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin
export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE/lib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export LIBPATH=${CLASSPATH}:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib
export ORACLE_OWNER=oracle
export SPFILE_PATH=$ORACLE_HOME/dbs
export ORA_NLS10=$ORACLE_HOME/nls/data
執行source .bash_profile之后,netca和dbca命令就會出現
到這里,oracle11g的數據庫實例軟件就算是裝好了,接下來配置數據庫實例的基本參數文件~
8.3?靜默配置監聽
vi etc/netca.rsp
[GENERAL]
RESPONSEFILE_VERSION="11.2"
CREATE_TYPE="CUSTOM"
INSTALL_TYPE=""custom"????"安裝的類型("typical—典型","minimal—最小" or "custom—自定義")
LISTENER_NUMBER=1 ????????監聽器數量
LISTENER_NAMES={"orcl"} ??監聽器的名稱列表
LISTENER_PROTOCOLS={"TCP;1521"}?監聽器使用的通訊協議列表
LISTENER_START=""orcl""?????????監聽器啟動的名稱
然后運行:
netca /silent /responsefile /data/oracle/etc/netca.rsp(注:參數如果用-silent–responseFile是不可執行的,會出錯,后面的監聽路徑必須指定所在絕對路徑)
正在對命令行參數進行語法分析:
?參數"silent"= true
?參數"responsefile"= /etc/netca.rsp
?完成對命令行參數進行語法分析。
?Oracle Net Services?配置:
?完成概要文件配置。
?Oracle Net?監聽程序啟動:
??正在運行監聽程序控制:
?/data/oracle/product/11.2.0/db_1/bin/lsnrctlstart LISTENER
?監聽程序控制完成。
??監聽程序已成功啟動。
??監聽程序配置完成。
??成功完成?Oracle Net Services?配置。退出代碼是0
成功運行后,在/data/oracle/product/11.2.0/db_1/network/admin目錄下生成sqlnet.ora和listener.ora兩個文件。
?通過netstat-tlnp?命令,看到
?tcp?0?? 0 :::1521??????? :::*????? LISTEN????? 5477/tnslsnr
?說明監聽器已經在1521端口上開始工作了。
8.4?靜默建立新庫(同時也建立一個對應的實例)
修改/etc/dbca.rsp,設置如下:
[GENERAL]
?RESPONSEFILE_VERSION = "11.2.0"? ????//不能更改
?OPERATION_TYPE = "createDatabase"
?GDBNAME = "orcl"? ?????????????//全局數據庫的名字=SID+主機域名
?SID= "orcl"??? ????????????????????//對應的實例名字
?TEMPLATENAME = "General_Purpose.dbc"????//建庫用的模板文件
?SYSPASSWORD = "123456"?? ???????????? ?//SYS管理員密碼
?SYSTEMPASSWORD = "123456"? ????????????//SYSTEM管理員密碼
?DATAFILEDESTINATION = /data/oracle/oradata?//數據文件存放目錄
?RECOVERYAREADESTINATION=/data/oracle/ flash_recovery_area????//恢復數據存放目錄
?CHARACTERSET = "ZHS16GBK"???//字符集,重要!!!?建庫后一般不能更改,所以建庫前要確定清楚。(CHARACTERSET = "AL32UTF8"
NATIONALCHARACTERSET= "UTF8")
?TOTALMEMORY = "5120"????//oracle內存5120MB
?然后靜默運行:
?$dbca -silent -responseFile etc/dbca.rsp
?復制數據庫文件
?1%?已完成
?3%?已完成
?11%?已完成
?18%?已完成
?26%?已完成
?37%?已完成
?正在創建并啟動Oracle?實例
?40%?已完成
?45%?已完成
?50%?已完成
?55%?已完成
?56%?已完成
?60%?已完成
?62%?已完成
?正在進行數據庫創建
66%?已完成
?70%?已完成
?73%?已完成
?85%?已完成
?96%?已完成
?100%已完成
?有關詳細信息,?請參閱日志文件"/data/oracle/cfgtoollogs/dbca/orcl/orcl.log"。
?查看日志文件
?$cat /data/oracle/cfgtoollogs/dbca/wang/wang.log
?復制數據庫文件
?DBCA_PROGRESS : 1%
?DBCA_PROGRESS : 3%
?DBCA_PROGRESS : 11%
?DBCA_PROGRESS : 18%
?DBCA_PROGRESS : 26%
?DBCA_PROGRESS : 37%
?正在創建并啟動Oracle?實例
?DBCA_PROGRESS : 40%
?DBCA_PROGRESS : 45%
?DBCA_PROGRESS : 50%
DBCA_PROGRESS : 55%
?DBCA_PROGRESS : 56%
?DBCA_PROGRESS : 60%
?DBCA_PROGRESS : 62%
?正在進行數據庫創建
?DBCA_PROGRESS: 66%
?DBCA_PROGRESS : 70%
?DBCA_PROGRESS : 73%
?DBCA_PROGRESS : 85%
?DBCA_PROGRESS : 96%
?DBCA_PROGRESS : 100%
?數據庫創建完成。有關詳細信息,?請查看以下位置的日志文件:
?/data/oracle/cfgtoollogs/dbca/orcl。
數據庫信息:
全局數據庫名:orcl.test
系統標識符?(SID):orcl
轉載于:https://www.cnblogs.com/888888-/p/10653330.html
總結
以上是生活随笔為你收集整理的Linux静默安装oracle的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 页面乱码及页面传值出现乱码
- 下一篇: 记一次Linux服务器因redis漏洞的