【Oracle】centos7离线静默安装oracle11g(p13390677_112040)

博文地址:https://blog.csdn.net/gitblog_06670/article/details/142569814

仓库地址:https://gitcode.com/Open-source-documentation-tutorial/31eb1/?utm_source=document_gitcode\&index=bottom\&type=card

参考安装地址:

收费版:https://blog.csdn.net/u014644574/article/details/119325944

免费版:https://blog.csdn.net/u014644574/article/details/107736952

资源描述

本仓库提供Oracle 11.2.0.4版本在Linux x86-64位系统上的全套安装包。安装包包含以下文件:

p13390677_112040_Linux-x86-64_1of7.zip

p13390677_112040_Linux-x86-64_2of7.zip

p13390677_112040_Linux-x86-64_3of7.zip

p13390677_112040_Linux-x86-64_4of7.zip

p13390677_112040_Linux-x86-64_5of7.zip

p13390677_112040_Linux-x86-64_6of7.zip

p13390677_112040_Linux-x86-64_7of7.zip

文件说明

复制代码
p13390677_112040_Linux-x86-64_1of7.zip
用于安装或升级数据库。
若仅安装数据库,下载此包即可。

p13390677_112040_Linux-x86-64_2of7.zip
用于安装或升级数据库。
若仅安装数据库,下载此包即可。

p13390677_112040_Linux-x86-64_3of7.zip
用于安装Grid Infrastructure,适用于RAC(Real Application Clusters)环境。

p13390677_112040_Linux-x86-64_4of7.zip
客户端(Client)安装包。

p13390677_112040_Linux-x86-64_5of7.zip
Gateway software,透明网关安装包。

p13390677_112040_Linux-x86-64_6of7.zip
示例文件安装包。

p13390677_112040_Linux-x86-64_7of7.zip
Oracle自带的界面化卸载工具。

使用说明

若仅需要安装数据库,下载1of7.zip和2of7.zip即可。

若需要安装RAC环境,还需下载3of7.zip。

其他文件根据实际需求选择下载。

注意事项

请确保下载所有必要的文件,以避免安装过程中出现缺失文件的错误。

安装前请仔细阅读Oracle官方文档,确保系统环境符合安装要求。

详细安装步骤

1、安装wget

复制代码
rpm -qa|grep "wget"
yum -y install wget

2、配置yum源

复制代码
cd /etc
mv yum.repos.d yum.repos.d.bak
mkdir yum.repos.d
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

3、重新加载yum源

复制代码
yum clean all
yum makecache

4、关闭加速插件

复制代码
vi /etc/yum.conf修改
plugins=0

5、安装Oracle依赖包

复制代码
检查依赖是否安装完整
rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel | grep "not installed"

安装依赖包
yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel

6、创建所需的操作系统组和用户

复制代码
创建用户组:groupadd oinstall
创建用户组:groupadd dba
创建用户并添加到用户组:useradd -g oinstall -G dba oracle

说明:
-g:指定用户所属的起始群组。
-G:指定用户所属的附加群组。

7、设置oracle用户密码

复制代码
passwd oracle
密码:oracle

8、优化OS内核参数

vi /etc/sysctl.conf 在后面追加下面配置

复制代码
fs.suid_dumpable = 1
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 = 1048586

保存后执行命令,使修改生效。

/sbin/sysctl -p

9、限制oracle用户的shell权限

vi /etc/security/limits.conf 在后面追加下面配置

复制代码
oracle	soft	nproc	2047
oracle	hard	nproc	16384
oracle	soft	nofile	1024
oracle	hard	nofile	65536
oracle	soft	stack	10240
oracle	hard	stack	10240

vi /etc/pam.d/login 在后面追加下面配置

复制代码
session  required   /lib64/security/pam_limits.so
session  required   pam_limits.so

vi /etc/profile 在配置文件结尾处(unset i 和 unset -f pathmunge 之前)追加下面配置

复制代码
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

10、创建安装目录,并修改目录所有者

复制代码
mkdir -p /data/oracle
chown -R oracle:oinstall /data/oracle
chmod -R 775 /data/oracle

11、创建/etc/oraInst.loc文件

复制代码
vi /etc/oraInst.loc 在里面写入下面配置
inventory_loc=/data/oracle/oraInventory
inst_group=oinstall

保存后修改文件权限
chown oracle:oinstall /etc/oraInst.loc
chmod 664 /etc/oraInst.loc

12、设置oracle环境变量

复制代码
用oracle用户登录

vi .bash_profile 在后面追加下面配置
export ORACLE_BASE=/data/oracle
export ORACLE_SID=orcl

保存后执行命令,使修改生效。
source /home/oracle/.bash_profile
env

13、上传oracle安装文件到/data/oracle解压

安装解压软件

复制代码
yum -y install unzip zip
用oracle用户解压oracle安装文件
cd /data/oracle/
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip

解压缩后的安装文件在 /data/oracle/database 目录

复制响应文件模板

用oracle用户创建 /home/oracle/ 目录下的 etc 目录

cd /home/oracle/

mkdir etc

14、复制响应文件

复制代码
cp /data/oracle/database/response/* /home/oracle/etc/

设置响应文件权限
su - root
chmod 700 /home/oracle/etc/*.rsp

15、用oracle用户静默安装Oracle软件

su - oracle

vi /home/oracle/etc/db_install.rsp修改安装Oracle软件的响应文件,

这个环节其实就是图形化安装中的各种选项和"下一步",

不过静默安装要在配置文件里提前配置好。

具体配置如下:

复制代码
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=centos7
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/data/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN,zh_TW
ORACLE_HOME=/data/oracle/product/11.2.0/db_1
ORACLE_BASE=/data/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=false
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=orcl
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.memoryLimit=512
oracle.install.db.config.starterdb.password.ALL=oracle
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true

说明:

这里是修改文件,并非清空文件然后粘贴进去。

ORACLE_HOSTNAME= centos7// 主机名称(hostname查询主机名),centos7是我电脑的主机名称需要hostname查询后改成自己的主机名称。

想要偷懒,可以先备份 ,再清空

复制代码
#备份
cp /home/oracle/etc/db_install.rsp /home/oracle/etc/db_install.rsp.bak
#清空
echo > /home/oracle/etc/db_install.rsp
#编辑
vi /home/oracle/etc/db_install.rsp

直接将下面全部粘贴进去,注意需要修改成自己的主机名 ORACLE_HOSTNAME=centos7 (hostname命令查询自己的主机名)

复制代码
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=centos7
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/data/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN,zh_TW
ORACLE_HOME=/data/oracle/product/11.2.0/db_1
ORACLE_BASE=/data/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=false
oracle.install.db.customComponents=oracle.server:11.2.0.1.0,oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.CLUSTER_NODES=
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=orcl
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=512
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.enableSecuritySettings=true
oracle.install.db.config.starterdb.password.ALL=oracle
oracle.install.db.config.starterdb.password.SYS=
oracle.install.db.config.starterdb.password.SYSTEM=
oracle.install.db.config.starterdb.password.SYSMAN=
oracle.install.db.config.starterdb.password.DBSNMP=
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false
oracle.install.db.config.starterdb.dbcontrol.emailAddress=
oracle.install.db.config.starterdb.dbcontrol.SMTPServer=
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.automatedBackup.osuid=
oracle.install.db.config.starterdb.automatedBackup.ospwd=
oracle.install.db.config.starterdb.storageType=
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=
oracle.install.db.config.asm.diskGroup=
oracle.install.db.config.asm.ASMSNMPPassword=
MYORACLESUPPORT_USERNAME=
MYORACLESUPPORT_PASSWORD=
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=

用oracle用户开始静默安装

复制代码
su -- oracle
cd /data/oracle/database
./runInstaller -silent -ignorePrereq -responseFile /home/oracle/etc/db_install.rsp

安装完成,提示Successfully Setup Software.

使用root用户执行脚本

复制代码
su - root
/data/oracle/product/11.2.0/db_1/root.sh

16、增加或修改oracle的环境变量

执行 su - oracle 命令,用 oracle 用户登陆

复制代码
vi ~/.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 /home/oracle/.bash_profile

env

17、配置监听程序

这里为了使环境生效,最好重新登录一下,执行 su - oracle 命令,用 oracle 用户登陆

复制代码
cd /data/oracle/product/11.2.0/db_1/bin
./netca /silent /responseFile /home/oracle/etc/netca.rsp

查看监听状态
#查看监听状态
lsnrctl status
 
#停止监听
lsnrctl stop
#启动监听
lsnrctl start

18、用oracle用户静默dbca建库

复制代码
vi /home/oracle/etc/dbca.rsp 编辑应答文件

#注意有两个GDBNAME
GDBNAME = "orcl"
SID = "orcl"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
CHARACTERSET = "AL32UTF8"
NATIONALCHARACTERSET= "UTF8"

想要偷懒,可以先备份 ,再清空

复制代码
#备份
cp /home/oracle/etc/dbca.rsp /home/oracle/etc/dbca.rsp.bak
#清空
echo > /home/oracle/etc/dbca.rsp
#编辑
vi /home/oracle/etc/dbca.rsp

直接将下面全部粘贴进去

复制代码
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
GDBNAME = "orcl"
SID = "orcl"
TEMPLATENAME = "General_Purpose.dbc"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
CHARACTERSET = "AL32UTF8"
NATIONALCHARACTERSET= "UTF8"
[createTemplateFromDB]
SOURCEDB = "myhost:1521:orcl"
SYSDBAUSERNAME = "system"
TEMPLATENAME = "My Copy TEMPLATE"
[createCloneTemplate]
SOURCEDB = "orcl"
TEMPLATENAME = "My Clone TEMPLATE"
[DELETEDATABASE]
SOURCEDB = "orcl"
[generateScripts]
TEMPLATENAME = "New Database"
GDBNAME = "orcl"
[CONFIGUREDATABASE]
[ADDINSTANCE]
DB_UNIQUE_NAME = "orcl11g.us.oracle.com"
NODELIST=
SYSDBAUSERNAME = "sys"
[DELETEINSTANCE]
DB_UNIQUE_NAME = "orcl11g.us.oracle.com"
INSTANCENAME = "orcl11g"
SYSDBAUSERNAME = "sys"

用oracle用户建库,创建实例

复制代码
cd /data/oracle/product/11.2.0/db_1/bin
dbca -silent -responseFile /home/oracle/etc/dbca.rsp

19、使用root用户设置Oracle开机启动

复制代码
su -- oracle

vi /etc/oratab 修改文件将N改为Y

orcl:/data/oracle/product/11.2.0/db_1:Y

编辑/etc/rc.d/rc.local启动文件,添加数据库启动脚本

复制代码
su -- root

vi /etc/rc.d/rc.local 在后面追加下面配置

su oracle -lc "/data/oracle/product/11.2.0/db_1/bin/lsnrctl start"
su oracle -lc /data/oracle/product/11.2.0/db_1/bin/dbstart

CentOS7设置开机权限

复制代码
chmod +x /etc/rc.d/rc.local

防火墙设置

使用root用户,放行1521端口

复制代码
firewall-cmd --zone=public --add-port=1521/tcp --permanent
firewall-cmd --reload

使用oracle用户创建用户

su - oracle

复制代码
#以系统管理员(sysdba)身份连接数据库。
sqlplus / as sysdba

#创建一个新用户abc和密码123456
create user abc identified by 123456;

#授予DBA权限。
grant connect,resource,dba to abc;

#退出
quit

使用PL/SQL连接

复制代码
tnsnames.ora

test =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.10)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCL)
    )
  )

用户名:abc
密码:123456