网上有很多安装教程,但大多不够完整,参照了一些教程,实测安装成功,整理出来分享给大家!
一、官方最低要求配置
内存:1G(官方最低要求1G)
硬盘:40G(企业版安装所需4.29G和1.7G数据文件)
二、准备工作
1、安装环境介绍
系统:CentOS 7.5 64位
Oracle版本:Oracle 11gR2
2、下载Oracle安装文件官网下载地址
下载出来是这样两个压缩包:
linux.x64_11gR2_database_1of2.zip
linux.x64_11gR2_database_2of2.zip
3、检查系统版本
uname -m
cat /etc/redhat-release
4、修改主机名
sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=oracledb/" /etc/sysconfig/network
hostname oracledb
5、添加主机名与IP对应记录
yum -y install vim # 安装vim,如已安装请忽略
vim /etc/hosts # 编辑 hosts
在末尾处添加一条 hosts,格式:IP 主机名
6、关闭Selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
setenforce 0
7、创建用户和组
创建Oracle安装组oinstall,数据库管理员组dba,及oracle用户
groupadd -g 200 oinstall groupadd -g 201 dba useradd -u 440 -g oinstall -G dba oracle #(主组oinstall,其它组:dba) passwd oracle #(P)
8、修改内核参数
vim /etc/sysctl.conf # 编辑 sysctl.conf,末尾处添加下面的参数
net.ipv4.ip_local_port_range= 9000 65500 fs.file-max = 6815744 kernel.shmall = 10523004 kernel.shmmax = 6465333657 kernel.shmmni = 4096 kernel.sem = 250 32000 100128 net.core.rmem_default=262144 net.core.wmem_default=262144 net.core.rmem_max=4194304 net.core.wmem_max=1048576 fs.aio-max-nr = 1048576
保存并退出
sysctl -p # 使配置生效
9、修改系统资源限制
vim /etc/security/limits.conf # 编辑 limits.conf,末尾处添加下面的参数
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
10、修改用户验证选项
vim /etc/pam.d/login
找到这一行:session required pam_namespace.so ,在其下一行添加一条pam_limits.so
session required pam_limits.so
11、修改用户配置文件
如果做了第6步的limits.conf设置,这个设置就不需要了
$ 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
12、创建安装目录并分配权限
mkdir -p /opt/app/oracle/ chmod 755 /opt/app/oracle/ chown oracle.oinstall -R /opt/app/oracle/
13、设置Oracle环境变量
建议用ssh工具,开两个窗口,分别登录root用户和oracle用户,避免来回切换用户
su - oracle # 切换到 oracle 用户
vim ~/.bash_profile # 编辑
注释掉最后两行,在末尾添加如下参数
export ORACLE_BASE=/opt/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin export ORACLE_SID=orcl export ORACLE_PID=ora11g export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
保存并退出
使配置生效
source ~/.bash_profile # 使配置立即生效
env | grep ORA # 查看环境变量是否完成
三、安装及配置
1、安装依赖包
所需依赖:
binutils-2.23.52.0.1-12.el7.x86_64 compat-libcap1-1.10-3.el7.x86_64 compat-libstdc++-33-3.2.3-71.el7.i686 compat-libstdc++-33-3.2.3-71.el7.x86_64 gcc-4.8.2-3.el7.x86_64 gcc-c++-4.8.2-3.el7.x86_64 glibc-2.17-36.el7.i686 glibc-2.17-36.el7.x86_64 glibc-devel-2.17-36.el7.i686 glibc-devel-2.17-36.el7.x86_64 ksh libaio-0.3.109-9.el7.i686 libaio-0.3.109-9.el7.x86_64 libaio-devel-0.3.109-9.el7.i686 libaio-devel-0.3.109-9.el7.x86_64 libgcc-4.8.2-3.el7.i686 libgcc-4.8.2-3.el7.x86_64 libstdc++-4.8.2-3.el7.i686 libstdc++-4.8.2-3.el7.x86_64 libstdc++-devel-4.8.2-3.el7.i686 libstdc++-devel-4.8.2-3.el7.x86_64 libXi-1.7.2-1.el7.i686 libXi-1.7.2-1.el7.x86_64 libXtst-1.2.2-1.el7.i686 libXtst-1.2.2-1.el7.x86_64 make-3.82-19.el7.x86_64 sysstat-10.1.5-1.el7.x86_64 unixODBC-2.3.1-6.el7.x86_64 or later unixODBC-2.3.1-6.el7.i686 or later unixODBC-devel-2.3.1-6.el7.x86_64 or later unixODBC-devel-2.3.1-6.el7.i686 or later
切换到 root 用户,使用yum -y install 进行安装
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
2、安装Oracle
yum -y install unzip # 安装unzip,如已安装请忽略
将下载的Oracle压缩包放入/opt目录下(使用 FTP 工具或者直接在 CentOS 进行下载,下载地址开头有讲),在/opt目录下进行解压
ls *.zip | xargs -n1 unzip -o
或者分开解压
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
解压后进入 database 目录,该目录下有三个 .rsp 文件,用来作为静默安装时的应答文件的模板。
三个文件作用分别是:
db_install.rsp:安装应答
dbca.rsp:创建数据库应答
netca.rsp:建立监听、本地服务名等网络设置的应答
cd /opt/database/response # 进入 response 目录
cp db_install.rsp db_install_copy.rsp # 将 db_install.rsp 备份一份,以免修改出错
然后修改静默安装的配置文件
vim db_install.rsp # 编辑
按照下方的参数进行修改,需要修改的地方标红了
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=oracledb
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/opt/app/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/opt/app/oracle/product/11.2.0/db_1
ORACLE_BASE=/opt/app/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=ora11g
oracle.install.db.config.starterdb.SID=ora11g
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=1500
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=FILE_SYSTEM_STORAGE
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=
DECLINE_SECURITY_UPDATES=true //一定要设为 true
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
保存并退出
less /opt/database/response/db_install.rsp |grep -v "#"|grep -v "^$" # 查看配置
开始静默安装
su - oracle # 切换到 oracle 用户
cd /opt/database/ #进入/opt/database目录
./runInstaller -silent -force -responseFile /opt/database/response/db_install.rsp # 安装
如果出现下图错误,可参照 https://www.cnblogs.com/a9999/p/6957280.html 解决,然后重新执行安装命令
[WARING]可暂时忽略,此时安装程序仍在后台进行,如果出现[FATAL],则安装程序已经停止了。
安装需要一会儿,如果想看安装进度,可以再打开一个窗口,输出会话日志
tail -f 日志文件(下图中红色框中为日志文件绝对路径)
当出现 Successfully Setup Software. 证明已经安装成功,然后根据提示以 root 用户执行脚本
sh /opt/app/oracle/oraInventory/orainstRoot.sh sh /opt/app/oracle/product/11.2.0/db_1/root.sh
四、配置监听程序
监听命令
启动监听:lsnrctl start
停止监听:lsnrctl stop
重启监听:lsnrctl reload
查看监听:lsnrctl status
1、配置监听(使用oracle用户)
su - oracle # 切换到 oracle 用户
$ORACLE_HOME/bin/netca /silent /responseFile /opt/database/response/netca.rsp # 配置监听
2、查看监听(使用oracle用户)
snrctl status # 查看舰艇状态
3、静默dbca建库
su - root # 切换到 root 用户
vim /opt/database/response/dbca.rsp
修改如下内容:
GDBNAME = "orcl" # 78 行 SID="orcl" # 149行 CHARACTERSET="AL32UTF8" # 415行 NATIONALCHARACTERSET="UTF8" # 425行
保存并退出
静默dbca建库
su - oracle # 切换到 oracle 用户
$ORACLE_HOME/bin/dbca -silent -responseFile /opt/database/response/dbca.rsp # 建库
执行完后会先清屏,清屏之后没有提示,直接输入oracle用户的密码,回车,再输入一次,再回车。
稍等一会,会开始自动创建
4、启动数据库
[oracle@oracledb ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Mon Feb 16 14:26:57 2015 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to an idle instance. SQL> start SP2-1506: START, @ or @@ command has no arguments SQL> startup ORACLE instance started. Total System Global Area 3290345472 bytes Fixed Size 2217832 bytes Variable Size 1795164312 bytes Database Buffers 1476395008 bytes Redo Buffers 16568320 bytes Database mounted. Database opened. SQL>
使用 show parameter;或者 select table_name from dba_tables 看看是否正常
5、配置开机自动启动监听、启动Oracle
su - root # 切换到 root 用户
vim /etc/oratab # 编辑
其中:
*:/home/oracle/oracle92:N
这一行中 * 改为数据库的SID orcl, 第三段的N改为Y
改后如下:
orcl:/home/oracle/oracle92:Y 务必是大写的Y
保存并退出
vim /etc/rc.local # 编辑
在文件末尾增加如下内容
su - oracle -c 'dbstart'
su - oracle -c 'lsnrctl start'
保存并退出
chmod +x /etc/rc.local # 配置文件权限
其实开机自动以 oracle 用户执行上面两个命令啦
6、开放1521端口(远程连接Oracle所需)
查看端口是否开放:firewall-cmd --query-port=1521/tcp
永久开放1521端口号:firewall-cmd --permanent --zone=public --add-port=1521/tcp
重启防火墙: systemctl restart firewalld.service
查看防火墙状态
systemctl status firewalld.service
备注:启动 | 关闭 | 重启 防火墙
systemctl [start | stop | restart] firewalld.service