在上一章我已经介绍了《基于VMware安装CentOs7的镜像》完成了我们的系统的安装,那么到了本章我将给大家介绍如何使用静默的方式安装我们的Oracle11g数据库
# vi /etc/hosts
添加以下的信息到hosts文件中:
10.10.10.129 oracledb.test
然后保存修改的信息。
# sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=oracledb.test/" /etc/sysconfig/network
# sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
# setenforce 0
可以直接访问以下的地址下载oracle的安装包:
https://www.oracle.com/database/technologies/112010-linx8664soft.html
直接执行以下的命令安装相关的依赖即可:
# yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33*.devel compat-libstdc++-33 compat-libstdc++-33*.devel gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686
然后就默默的等待下载完成即可。
# rpm -q 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
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba
# /usr/sbin/useradd -g oinstall -G dba linzef
# passwd linzef
# id linzef
# vi /etc/sysctl.conf
加入以下的配置信息:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
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
/sbin/sysctl -p
# vi /etc/security/limits.conf
linzef soft nproc 2047
linzef hard nproc 16384
linzef soft nofile 1024
linzef hard nofile 65536
linzef soft stack 10240
linzef hard stack 10240
接着执行
# vi /etc/pam.d/login
在/etc/pam.d/login 文件中,使用文本编辑器或vi命令增加或修改以下内容
session required /lib64/security/pam_limits.so
session required pam_limits.so
接着执行
# vi /etc/profile
在/etc/profile 文件中,使用文本编辑器或vi命令增加或修改以下内容
if [ $USER = "linzef" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
最后执行使之生效
source /etc/profile
mkdir -p /u01/app/
chown -R linzef:oinstall /u01/app/
chmod -R 775 /u01/app/
# vi ~/.bash_profile
添加以下的信息:
export ORACLE_BASE=/u01/app/linzef
export ORACLE_SID=dbsrv2
最后使之生效:
# source ~/.bash_profile
首先我们需要安装unzip的,执行以下代码。
# yum install unzip
然后在home目录底下创建一个app目录。
# cd /home
# mkdir app
# cd /app
然后将我们事先下载好的文件上传到app目录中,然后解压文件。
# unzip linux.x64_11gR2_database_1of2.zip
# unzip linux.x64_11gR2_database_2of2.zip
接着我们需要进入到我们的创建的linzef这个创建的用户的目录:
# cd /home/linzef
然后在执行下面第二条命令的时候一定要记得【/home/app/database/response】这个是刚刚你解压的zip所在的文件的路径。
# mkdir etc
# cp /home/app/database/response/* /home/linzef/etc/
# cd /home/linzef/etc
接着编辑/home/linzef/etc/文件夹底下的【db_install.rsp】文件,一定要记得拉倒最末尾的位置才把下面的配置黏贴上去,修改如下:
# vi db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY // 安装类型
ORACLE_HOSTNAME=oracledb // 主机名称(hostname查询)
UNIX_GROUP_NAME=oinstall // 安装组
INVENTORY_LOCATION=/u01/app/oraInventory //INVENTORY目录(不填就是默认值)
SELECTED_LANGUAGES=en,zh_CN,zh_TW // 选择语言
ORACLE_HOME=/u01/app/linzef/product/11.2.0/db_1 //oracle_home
ORACLE_BASE=/u01/app/linzef //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=dbsrv2 //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:不管地址对不对)
这时候我们使用ssh切换到【linzef】这个账号进行登录,
# su - linzef
然后进入我们的前面的解压目录【/home/app/database】
# cd /home/app/database
然后执行以下进行命令安装。
# ./runInstaller -silent -responseFile /home/linzef/etc/db_install.rsp
接着我们可以查看日志:
# tail -f /u01/app/oraInventory/logs/installActionsxxxx.log
看到此处说明我们就安装成功了,这个安装过程需要点时间,大家要慢慢的等待,记住慢慢的等待,只要你按着我前面的步骤做的到这里就不会有错的,如果这里出现错误了,那就是你前面的配置哪里配置错了,自己回去重新检查一遍,因为这个教程我已经反复安装了三遍了,确保完全没问题了。
# su - root
# /u01/app/oraInventory/orainstRoot.sh
# /u01/app/linzef/product/11.2.0/db_1/root.sh
切换到linzef这个账号
# su - linzef
# vi ~/.bash_profile
以下是需要添加的内容:
export ORACLE_BASE=/u01/app/linzef
export ORACLE_SID=dbsrv2
export ROACLE_PID=ora11g
#export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export ORACLE_HOME=/u01/app/linzef/product/11.2.0/db_1
export PATH=$PATH:$ORACLE_HOME/bin
export LANG="zh_CN.UTF-8"
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"
export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'
切换到linzef用户
# su - linzef
然后需要执行以下的命令:
export DISPLAY=10.10.10.129:0.0
然后接着执行以下命令来实现监听的配置:
# /u01/app/linzef/product/11.2.0/db_1/bin/netca -silent -responseFile /home/linzef/etc/netca.rsp
完成配置以后接着启动监听:
# lsnrctl start
最后我们可以查看我们的监听的状态:
# lsnrctl status
然后执行以下命令安装数据库实例:
/u01/app/linzef/product/11.2.0/db_1/bin/dbca -silent -responseFile /home/linzef/etc/dbca.rsp
执行安装的时候需要我们输入sys和system用户的账号和密码,这时候大家直接输入相应的密码即可,一定要记得输入密码,要不会一直卡在哪里等待着你输入密码。
稍等片刻我们就我完成了数据库的安装。
最后切换到root用户然后执行以下的命令:
# firewall-cmd --zone=public --add-port=1521/tcp --permanent
# firewall-cmd --zone=public --add-port=5500/tcp --permanent
# firewall-cmd --reload
当我们重新启动我们的虚拟机的时候,大家会发现我们无法启动我们的Oracle数据库了,这是什么原因呢,网上所有的静默安装的博文都没有告诉你们原因,因为他们关机以后就没重启了,这时候我们需要linzef这个账号登陆到我们的centos7,然后用vi命令编辑我们的dbstart这个文件,若你当前是用root登陆就使用su命令切换到linzef这个账号:
# vi /u01/app/linzef/product/11.2.0/db_1/bin/dbstart
ORACLE_HOME_LISTNER=$ORACLE_HOME
编辑/etc/oratab
# vi /etc/oratab
将里面的值由N设置为Y
orcl:/u01/app/linzef/product/11.2.0/db_1:Y
最后我们就可以启动我们的oracle数据库了。
# lsnrctl start
# dbstart