静默安装Oracle11G

前期准备

1虚拟机准备:

Centos 7.3 64位

内存2G

硬盘30G

Cpu 4核

Hostname server

2. 依赖包检查(root下执行)

yum install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio  libaio-devel libgcc 
libgomp libstdc++ libstdc++-devel make numactl-devel sysstat unixODBC unixODBC-devel

3.创建oracle用户和相应的属组

groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle    #密码暂定为oracle

4.创建目录修改属组和权限

创建目录:

mkdir -p /data01/oracleDB/product/11.2.0/db_1
mkdir -p /data01/oracleDB/oradata
mkdir -p /data01/oracleDB/inventory
mkdir -p /data01/oracleDB/fast_recovery_area
chown -R oracle.oinstall /data01/oracleDB

语句的作用依次为:前面创建的目录主要作用为Oracle家目录、数据文件存放位置,安装日志存放位置,快速恢复区修改属组,修改权限

5.解压Oracle软件压缩包

cd /home/oracle
linux.x64_11gR2_database_1of2.zip  linux.x64_11gR2_database_2of2.zip   使用unzip解压
chown -R oracle:oracle database

6.服务器配置文件修改

6.1 在/etc/hosts文件中添加主机名:

添加一条

192.168.157.10    server

6.2关闭防火墙(如果是正式生产库,请评估后在操作,可以修改配置文件开放1521端口)

systemctl stop firewalld.service             centos7
service iptables stop                                 centos7以下的

firewall-cmd --zone=public --add-port=1521/tcp --permanent
firewall-cmd --reload

iptables -I INPUT -p tcp --dport 1521 -j ACCEPT 

6.3 关闭selinux

  原来那行注释掉,将值改为disable

vi /etc/selinux/config   //修改配置文件永久生效

[root@server ~]# setenforce 0      //临时生效重启失效

6.4 修改内核参数文件

vim /etc/sysctl.conf
添加以下内容
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1073741824
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
其中kernel.shmmax = 1073741824为本机物理内存(2G)的一半,单位为byte。
然后执行sysctl –p             [root@server~]# sysctl -p

6.5 修改用户的限制文件

vim /etc/security/limits.conf
添加以下内容
oracle    soft    nproc    2047
oracle    hard    nproc    16384
oracle    soft    nofile    1024
oracle    hard    nofile    65536
oracle    soft    stack    10240

6.6修改/etc/pam.d/login文件:

vim /etc/pam.d/login
添加以下内容:
session required  /lib64/security/pam_limits.so
session required   pam_limits.so

查看系统字符集

echo $LANG 确保存在以下内容。

zh_CN.UTF-8  (如果按照乱码在调回原先的字符集en_US.UTF-8

7.配置Oracle用户环境变量

vi /home/oracle/.bash_profile
在底部添加
PATH=$PATH:$HOME/bin
ORACLE_BASE=/data01/oracleDB
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
ORACLE_SID=orcl
PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_BASE ORACLE_HOME ORACLE_SID
export PATH
NLS_LANG=AMERICAN_AMERICA.UTF8
export NLS_LANG

8.编辑静默安装响应文件

在修改文件前,我们来备份一下相应的文件

[root@server response]# pwd
/home/oracle/database/response
[root@server response]# ll
total 76
-rw-rw-r--. 1 oracle oinstall 44969 Feb 14  2009 dbca.rsp
-rw-rw-r--. 1 oracle oinstall 22557 Aug 15  2009 db_install.rsp
-rwxrwxr-x. 1 oracle oinstall  5740 Feb 26  2009 netca.rsp

[root@server response]# cp db_install.rsp db_install.rsp.bak
然后在解压目录编辑改响应文件
[root@server response]# vi db_install.rsp
需要设置的选项如下:
oracle.install.option=INSTALL_DB_SWONLY    #只装数据库软件
ORACLE_HOSTNAME
=server #用hostname命令查看
UNIX_GROUP_NAME
=oinstall #指定oracle inventory目录的所有者
INVENTORY_LOCATION
=/data01/oracleDB/inventory #指定产品清单oracle inventory目录的路径
SELECTED_LANGUAGES
=en,zh_CN #指定语言
ORACLE_HOME
=/data01/oracleDB/product/11.2.0/db_1/ #设置ORALCE_HOME的路径
ORACLE_BASE
=/data01/oracleDB #指定ORALCE_BASE的路径
oracle.
install.db.InstallEdition=EE #EE是企业版
oracle.
install.db.DBA_GROUP=dba #指定拥有DBA用户组,通常会是dba组
oracle.
install.db.OPER_GROUP=dba #指定操作者用户组,通常会是dba组
oracle.
install.db.config.starterdb.type=GENERAL_PURPOSE #选择数据库的用途,一般用途/事物处理,数据仓库
oracle.
install.db.config.starterdb.globalDBName=orcl #指定GlobalName
oracle.
install.db.config.starterdb.SID=orcl #指定SID
oracle.
install.db.config.starterdb.characterSet=AL32UTF8 #设置数据库编码
oracle.
install.db.config.starterdb.memoryOption=true #11g的新特性自动内存管理,也就是SGA_TARGET和PAG_AGGREGATE_TARGET都,不用设置了,Oracle会自动调配两部分大小
oracle.
install.db.config.starterdb.password.ALL=Oracle123 #所有用户名的密码
DECLINE_SECURITY_UPDATES
=true # False表示不需要设置安全更新,注意,在11.2的静默安装中疑似有一个BUG Response File中必须指定为true,否则会提示错误,不管是否正确填写了邮件地址

具体参数参考:https://blog.csdn.net/weixin_42250094/article/details/85122209

开始安装软件

9.根据响应文件进行静默安装Oracle软件

如果远程登录最好重新用oracle用户登录,本地安装注销使用oracle用户

cd database

[oracle@server database]$ ./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /home/oracle/database/response/db_install.rsp

在另一个终端tail -f /data01/oracleDB/inventory/logs/installActions2018-12-20_03-15-03PM.log

时时查看oracle安装状况。

开始Oracle在后台静默安装。安装过程中,如果提示[WARNING]不必理会,此时安装程序仍在后台进行,如果出现[FATAL],则安装程序已经停止了。

看到日志文件会持续输出安装信息没有输入异常信息,则表明安装过程正常。

待看到下图红色框部分,则表明安装已经完成

按照提示打开一个终端使用root用户运行脚本

10.静默方式配置监听

[oracle@server database]$ xhost +

access control disabled, clients can connect from any host         ##如果不是这行返回值,则使用oracle用户远程登录系统或者本地注销使用oracle登录(如果切换还不管用yum update "X Window System")

[oracle@server database]$ netca -silent -responseFile /home/oracle/database/response/netca.rsp

成功运行后,会在/data01/oracleDB/product/11.2.0/db_1/network/admin/中生成listener.ora和sqlnet.ora两个文件。

查看监听端口:

[root@server database]# netstat -tnulp | grep 1521

静默方式建库

11.静默方式建库

[oracle@server response]$ pwd
/home/oracle/database/response
[oracle@server response]$ cp dbca.rsp dbca.rsp.bak

[oracle@server response]$ vi dbca.rsp
修改如下参数:
RESPONSEFILE_VERSION = "11.2.0"        #数据库版本
GDBNAME = "orcl"        #数据库的全局数据库名称:SID+主机名这里不能是空的
SID = "orcl"        #数据库的SID
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "Oracle123" 
SYSMANPASSWORD = "Oracle123"
DBSNMPPASSWORD = "Oracle123"
DATAFILEDESTINATION = /data01/oracleDB/oradata/
RECOVERYAREADESTINATION=/data01/oracleDB/fast_recovery_area
CHARACTERSET = "ZHS16GBK"
TOTALMEMORY= "1638"
其中TOTALMEMORY ="1638" 为1638MB,物理内存2G*80%。

注意,如果密码没有指定,在执行dbca建库语句后,会出现清屏现象,如果出现清屏现象,请检查上面提到的几个password的设定是否正确

编辑完成就可以开始静默安装了:

[oracle@server response]$ dbca -silent -responseFile /home/oracle/database/response/dbca.rsp 

完成建库后进行实例检查

[root@server database]# ps -ef |grep oracle

查看监听状态

[oracle@server response]$ lsnrctl status

登录查看实例状态

[oracle@server response]$ sqlplus / as sysdba

如果SQL> startup之后报LRM-00109错则需要cd /data01/oracleDB/admin/orcl/pfile到目录下,把init.ora.59201719540文件cp到/u01/app/oracle/product/11.2.0/db_1/initorcl.ora   

具体错误查看百度,这个我也没有遇到

编辑监听文件,要不重启监听就启动不了了

vi /data01/oracleDB/product/11.2.0/db_1/network/admin/listener.ora

lsnrctl stop
lsnrctl start
lsnrctl status

来自:

https://www.cnblogs.com/masked/p/7977643.html

https://jingyan.baidu.com/article/90895e0f29c92164ec6b0bd1.html

原文地址:https://www.cnblogs.com/luck666/p/10267168.html