环境准备:
VMware+CentOS,jdk
一、校验系统磁盘大小
1.命令 df -h
保证可用磁盘大小15GB(包括oracle安装时需要空间7.5GB + oracle安装zip包接近3G+安装包解压文件3G)
如果磁盘不满足,安装会失败,需要扩容!
二、安装准备
1.创建运行oracle数据库的系统用户和用户组
groupadd oinstall
groupadd dba
useradd -g oinstall -g dba -m oracle
passwd oracle #不用管提示,连续输入两次密码就可成功
2.创建oracle数据库安装目录,并将目录赋权给oracle用户
mkdir -p /opt/oracle/database #oracle安装包解压的文件
mkdir -p /opt/oracle/product/oraInventory #
mkdir -p /opt/oracle/product/12.2.0/db_1 #oracle安装目录
chown -R oracle:oinstall /opt/oracle #更改oracle目录的属主
chmod 755 -R /opt/oracle #更改oracle目录的权限
3.安装oracle数据库依赖的软件包
3.1.安装
yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh numactl-devel glibc-headers
3.2.查看是否安装成功
rpm -q \binutils \compat-libstdc++-33 \elfutils-libelf \elfutils-libelf-devel \expat \gcc \gcc-c++ \glibc \glibc-common \glibc-devel \glibc-headers \libaio \libaio-devel \libgcc \libstdc++ \libstdc++-devel \make \pdksh \sysstat \unixODBC \unixODBC-devel | grep "not installed"
4.关闭selinux,需要重启生效(可以在最后安装oracle之前再重启) vim /etc/selinux/config
5.修改内核参数 vim /etc/sysctl.conf
添加如下内容:
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
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 #使配置生效
6.对oracle用户设置限制,提高系统运行性能
vim /etc/security/limits.conf
添加如下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
7.配置用户环境变量
vim /home/oracle/.bash_profile
添加如下内容:
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.2.0/db_1
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LANG=C
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
source /home/oracle/.bash_profile #使配置失效
8.解压oracle安装文件的压缩包,在/opt/oracle/目录下解压
unzip 文件名(unzip不存在,可用命令进行安装: yum install unzip)加压较慢,需要等会
9.配置应答文件
vim /opt/oracle/database/response/db_install.rsp
10.配置oraInventory目录位置
存放oracle软件安装的目录信息,oracle的安装和升级都需要用到这个目录(最好放在ORACLE_BASE对应的目录下边)
vim /etc/oraInst.loc
添加或修改成如下内容:
inventory_loc=/opt/oracle/product/oraInventory
inst_group=oinstall
11.重启CentOS,reboot
12.关闭防火墙,systemctl stop firewalld
三、静默安装Oracle12
1.已oracle用户登陆linux系统
2.静默安装
/opt/oracle/database/runInstaller -silent -force -ignorePrereq -responseFile /opt/oracle/database/response/db_install.rsp
执行过程需要等待几分钟。
可监控日志:
tail -f
/opt/oracle/product/oraInventory/logs/installActions2018-11-22_11-04-03AM.log
3.切换root用户登陆
4.执行两个sh文件
4.1. sh /opt/oracle/product/oraInventory/orainstRoot.sh
如果目录下没有改脚本,可以新建一个,脚本内容为:
# cat /oracle/oraInventory/orainstRoot.sh
#!/bin/sh
AWK=/bin/awk
CHMOD=/bin/chmod
CHGRP=/bin/chgrp
CP=/bin/cp
ECHO=/bin/echo
MKDIR=/bin/mkdir
RUID=`/usr/bin/id|$AWK -F ′ print$2 ′ |$AWK−F ′print$2′|$AWK−F '{print $2}'|$AWK -F '{print $1}'`
if [ ${RUID} != "root" ];then
$ECHO "This script must be executed as root"
exit 1
fi
if [ -d "/etc" ]; then
$CHMOD 755 /etc;
else
$MKDIR -p /etc;
fi
if [ -f "/oracle/oraInventory/oraInst.loc" ]; then
$CP /oracle/oraInventory/oraInst.loc /etc/oraInst.loc;
$CHMOD 644 /etc/oraInst.loc
else
INVPTR=/etc/oraInst.loc
INVLOC=/oracle/oraInventory
GRP=oinstall
PTRDIR="`dirname $INVPTR`";
# Create the software inventory location pointer file
if [ ! -d "$PTRDIR" ]; then
$MKDIR -p $PTRDIR;
fi
$ECHO "Creating the Oracle inventory pointer file ($INVPTR)";
$ECHO inventory_loc=$INVLOC > $INVPTR
$ECHO inst_group=$GRP >> $INVPTR
chmod 644 $INVPTR
# Create the inventory directory if it doesn't exist
if [ ! -d "$INVLOC" ];then
$ECHO "Creating the Oracle inventory directory ($INVLOC)";
$MKDIR -p $INVLOC;
fi
fi
$ECHO "Changing permissions of /oracle/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
";
$CHMOD -R g+rw,o-rwx /oracle/oraInventory;
if [ $? != 0 ]; then
$ECHO "OUI-35086:WARNING: chmod of /oracle/oraInventory
Adding read,write permissions for group.
,Removing read,write,execute permissions for world.
failed!";
fi
$ECHO "Changing groupname of /oracle/oraInventory to oinstall.";
$CHGRP -R oinstall /oracle/oraInventory;
if [ $? != 0 ]; then
$ECHO "OUI-10057:WARNING: chgrp of /oracle/oraInventory to oinstall failed!";
fi
$ECHO "The execution of the script is complete."
4.2. sh /opt/oracle/product/12.2.0/db_1/root.sh
5.切换oracle用户登陆
6.安装监听
$ORACLE_HOME/bin/netca /silent /responseFile /opt/oracle/database/response/netca.rsp
7.启动监听程序
lsnrctl start
8.查看监听状态
lsnrctl status
9.通过dbca创建数据库
/opt/oracle/product/12.2.0/db_1/bin/dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbname orcl -sid orcl -responseFile NO_VALUE -characterSet ZHS16GBK -memoryPercentage 30 -emConfiguration LOCAL
(删除:dbca -silent -deleteDatabase -sourcedb orcl -sid orcl)
10.启动实例(创建完,一般会自动启动)
sqlplus / as sysdba
SQL> startup
SQL> select instance_name,version from v$instance;
查看数据库文件dbf
SQL> select name from v$datafile;
总结
以上所述是小编给大家介绍的VMware下CentOS静默安装oracle12.2详细图文教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!