【Oracle】centos7静默安装oracle19c

静默安装三步骤:

1、数据库安装

db_install.rsp(数据库软件安装响应文件)

2、配置监听

netca.rap(监听配置响应文件)

3、建库

dbca.rsp(建库响应文件)

安装oracle19c先决条件准备:

1.检查主机名和网络并且配置/etc/hosts文件
关闭防火墙

检查防火墙状态
systemctl status firewalld.service
暂时关闭防火墙,下次启动时防火墙仍随系统启动而启动
systemctl stop firewalld.service
彻底永久关闭防火墙
systemctl disable firewalld.service

关闭SELINUX防火墙

检查状态
getenforce
修改
vi /etc/selinux/config
将内容
SELINUX=enforcing
更改为
SELINUX=disabled
设置后重启虚拟机reboot

2.配置YUM源解决程序依赖的问题
a 挂载光盘镜像
注:在虚拟机挂载光盘镜像以后,务必使用某个用户进入到虚拟机LINUX下看到桌面弹出小光盘为止(图形界面)
b 进入到光盘镜像中的Package目录中将所有的软件包复制到我们预设的目录下
CENTOS7/RHEL7 镜像挂载地点:/run/media/root/CentOS 7 x86_64/Packages

1、复制rpm包
mkdir /yums
cd /run/media/root/CentOS 7 x86_64/Packages
cp * /yums
cd /yums
2、安装依赖包创建仓库
rpm -ivh deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm 
rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm 
rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm
createrepo .
3、配置本地yum源
cd /etc/yum.repos.d/
rm -rf *
vi yum.local.repo
新增以下内容
[local]
name=yum local repo
baseurl=file:///yums
gpgcheck=0
enable=1
执行命令
yum clean all

3.安装ORACLE先决条件的软件包

yum install -y bc
yum install -y compat-libcap1*
yum install -y compat-libcap*
yum install -y binutils 
yum install -y compat-libstdc++-33 
yum install -y elfutils-libelf 
yum install -y elfutils-libelf-devel 
yum install -y gcc 
yum install -y gcc-c++ 
yum install -y glibc-2.5 
yum install -y glibc-common 
yum install -y glibc-devel 
yum install -y glibc-headers 
yum install -y ksh libaio 
yum install -y libaio-devel 
yum install -y libgcc 
yum install -y libstdc++ 
yum install -y libstdc++-devel 
yum install -y make 
yum install -y sysstat 
yum install -y unixODBC 
yum install -y unixODBC-devel
yum install -y binutils*
yum install -y compat-libstdc*
yum install -y elfutils-libelf*
yum install -y gcc*
yum install -y glibc*
yum install -y ksh*
yum install -y libaio*
yum install -y libgcc*
yum install -y libstdc*
yum install -y make*
yum install -y sysstat*
yum install -y libXp*
yum install -y glibc-kernheaders
yum install -y net-tools-*

4.修改LINUX的内核文件

vi /etc/sysctl.conf
kernel.shmmax = 277495689510912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
fs.file-max = 6815744
kernel.shmall = 67747971072
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.ip_local_port_range = 9000 65500
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_tw_reuse = 1
#net.core.somaxconn = 262144
net.core.netdev_max_backlog = 262144
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 30
net.ipv4.tcp_keepalive_probes = 6
net.ipv4.tcp_keepalive_intvl = 5
net.ipv4.tcp_timestamps = 0
fs.aio-max-nr = 1048576
net.ipv4.conf.all.rp_filter = 2
net.ipv4.conf.default.rp_filter = 2

生成系统参数
sysctl -p 

5.添加下列参数到/etc/security/limits.conf

vi /etc/security/limits.conf

oracle   soft   nofile    1024
oracle   hard   nofile    65536
oracle   soft   nproc    16384
oracle   hard   nproc    16384
oracle   soft   stack    10240
oracle   hard   stack    32768
oracle   hard   memlock    134217728
oracle   soft   memlock    134217728

6.添加下列条目到/etc/pam.d/login

vim /etc/pam.d/login

session required /lib/security/pam_limits.so
session required pam_limits.so

7.环境变量中添加下列语句

vim /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

8.创建文件目录和相应的用户

groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba,oper oracle

mkdir -p /u01/app/oracle
mkdir -p /u01/oraInventory
chown -R oracle.oinstall /u01
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle

19c需要额外创建
mkdir -p /u01/app/oracle/product/19c/db_1    --ORACLE的HOME目录
chown -R oracle:oinstall /u01/app/oracle/product/

增加密码
passwd oracle 

9.配置ORACLE用户的环境变量

su - oracle

vim .bash_profile

export EDITOR=vi
export TMP=/tmp  
export TMPDIR=$TMP
export ORACLE_SID=orcl
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19c/db_1
export INVENTORY_LOCATION=/u01/oraInventory
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:$PATH:$HOME/bin
umask 022

source .bash_profile

10.上传软件并且解压
上传LINUX.X64_193000_db_home.zip至$ORACLE_HOME目录下并解压

上传LINUX.X64_193000_db_home.zip软件至$ORACLE_HOME目录下
并检查所属组是否为oracle:oinstall,若不是则修改 chown -R oracle:oinstall
/u01/app/oracle

11.rlwrap软件配置

用途:主要用于sqlplus切换查询的sql
rlwrap-0.37-1.el6.x86_64.rpm 该软件务必在ROOT用户下安装,如果切换到ORACLE用户下安装可能会发生相关的权限问题
rpm -ivh rlwrap-0.37-1.el6.x86_64.rpm

在oracle用户下的.bash_profile文件中添加一下两个别名
如果你当前是oracle用户的话 直接使用 vi /home/oracle/.bash_profile进入到环境变量文件(绝对路径)
如果你当前不是oracle用户的话请执行以下命令
su - oracle
vi /home/oracle/.bash_profile

将下面两行文字粘贴进该文件中即可
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'

添加完内容后保存退出 并执行以下命令来生成环境变量

. /home/oracle/.bash_profile

12.开始静默安装

1、第一步 使用ORACLE用户登录LINUX

2、第二步 静默安装ORACLE 19C 数据库软件

进入到$ORACLE_HOME下 执行下列命令 rsp文件可以放在oracle目录下
[oracle@oracle19c-1 ~]$ cat db_install.rsp | grep -v "#" | grep -v "^$"
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/oraInventory
ORACLE_HOME=/u01/app/oracle/product/19c/db_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=dba
oracle.install.db.OSBACKUPDBA_GROUP=dba
oracle.install.db.OSDGDBA_GROUP=dba
oracle.install.db.OSKMDBA_GROUP=dba
oracle.install.db.OSRACDBA_GROUP=dba
oracle.install.db.rootconfig.executeRootScript=false
[oracle@oracle19c-1 ~]$

./runInstaller -silent  -force -noconfig  -ignorePrereq  -responseFile /home/oracle/db_install.rsp
当看到以下内容时:尤其是那个1和2 需要另外启动一个LINUX连接客户端并执行,记住用ROOT用户执行!
As a root user, execute the following script(s):
        1. /u01/oraInventory/orainstRoot.sh
        2. /u01/app/oracle/product/19c/db_1/root.sh

Execute /u01/oraInventory/orainstRoot.sh on the following nodes: 
[e9dbtest]
Execute /u01/app/oracle/product/19c/db_1/root.sh on the following nodes: 
[e9dbtest]


Successfully Setup Software with warning(s).
Moved the install session logs to:
 /u01/oraInventory/logs/InstallActions2021-08-29_09-56-51AM
 
在19c后第二个脚本有可能自动执行了,记住查看相关的输出日志:比如:
Check /u01/app/oracle/product/19c/db_1/install/root_e9dbtest_2021-08-29_10-00-19-369590526.log for the output of root script
当出现类似日志时 代表已经安装完成

3、第三步 静默配置监听

cat netca.rsp | grep -v "#" | grep -v "∧$" 

[oracle@oracle19c-1 ~]$ cat netca.rsp | grep -v "#" |grep -v "^$"
[GENERAL]
RESPONSEFILE_VERSION="19.0"
CREATE_TYPE="CUSTOM"
[oracle.net.ca]
INSTALLED_COMPONENTS={"server","net8","javavm"}
INSTALL_TYPE=""typical""
LISTENER_NUMBER=1
LISTENER_NAMES={"LISTENER"}
LISTENER_PROTOCOLS={"TCP;1521"}
LISTENER_START=""LISTENER""
NAMING_METHODS={"TNSNAMES","ONAMES","HOSTNAME"}
NSN_NUMBER=1
NSN_NAMES={"EXTPROC_CONNECTION_DATA"}
NSN_SERVICE={"PLSExtProc"}
NSN_PROTOCOLS={"TCP;HOSTNAME;1521"}
[oracle@oracle19c-1 ~]$ 

 netca -silent -responsefile /home/oracle/netca.rsp
 执行范例:
[oracle@e9dbtest db_1]$  netca -silent -responsefile /home/oracle/netca.rsp

Parsing command line arguments:
    Parameter "silent" = true
    Parameter "responsefile" = /home/oracle/netca.rsp
Done parsing command line arguments.
Oracle Net Services Configuration:
Profile configuration complete.
Oracle Net Listener Startup:
    Running Listener Control: 
      /u01/app/oracle/product/19c/db_1/bin/lsnrctl start LISTENER
    Listener Control complete.
    Listener started successfully.
Listener configuration complete.
Oracle Net Services configuration successful. The exit code is 0
看到以上内容说明监听配置成功

用下面的语句测试监听
lsnrctl status

4、第四步 静默建库(相关响应文件已经写完)

cat dbca.rsp | grep -v "#" | grep -v "∧$"

[oracle@oracle19c-1 ~]$ cat dbca.rsp |grep -v "#"|grep -v "^$"
responseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v19.0.0
gdbName=orcl
sid=orcl
databaseConfigType=SI
templateName=General_Purpose.dbc
createAsContainerDatabase=false
sysPassword=oracle
systemPassword=oracle
datafileDestination=/u01/app/oracle/oradata
storageType=FS
sampleSchema=TRUE
databaseType=OLTP
automaticMemoryManagement=FALSE
totalMemory=4096
[oracle@oracle19c-1 ~]$

dbca -silent -createDatabase -responseFile /home/oracle/dbca.rsp

安装成功:
Executing Post Configuration Actions
100% complete
Database creation complete. For details check the logfiles at:
 /u01/app/oracle/cfgtoollogs/dbca/ecology.
Database Information:
Global Database Name:ecology
System Identifier(SID):ecology
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/ecology/ecology.log" for further details.
[oracle@e9dbtest db_1]$ 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值