安装Oracle 11gR2(x64) (静默安装)

安装前准备:

1.内存(RAM)的最少 2GB 及以上
2.虚拟内存 swap 建议:内存为 1GB~2GB 时建议swap大小为内存大小的 1.5 倍;内存为 2GB~16GB 时建议swap大小为内存的大小;内存超过 16GB 时swap保持16GB
3.要求临时文件目录,如 /tmp 的磁盘空间至少 1GB
4.由于是静默安装,所以不需要图形界面
5.修改系统时间为北京时间
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

1.安装所需要的程序包

yum install -y binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel make numactl sysstat libXp unixODBC unixODBC-devel

2.安装pdksh包

cd /lost+found/
rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm

3.创建所需的用户组(在root帐号下操作)

groupadd oinstall;
groupadd dba;
groupadd oper;

4.创建所需的帐号(在root帐号下操作)

使用命令 id oracle; 查看 oracle 帐号是否已存在,若未存在则使用如下命令进行创建

发现没有执行以下命令(初始群组为 oinstall,有效群组为 dba、oper)

useradd -g oinstall -G dba,oper oracle;

设置oracle用户的密码

passwd oracle;

安装Oracle 11gR2(x64) (静默安装)

5.修改内核参数(在root帐号下操作)

vim /etc/sysctl.conf

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

安装Oracle 11gR2(x64) (静默安装)

再执行以下命令使以上配置立即生效

sysctl -p

6.修改系统资源限制(在root帐号下操作)

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

安装Oracle 11gR2(x64) (静默安装)

7.关闭SELinux(在root帐号下操作)

编辑SELinux配置文件 vim /etc/selinux/config,将SELINUX的值设为 disabled

SELINUX=disabled

安装Oracle 11gR2(x64) (静默安装)

修改该文件可使重启系统后不启动SELinux。关闭当前已开启的SELinux使用如下命令

setenforce 0

8.修改/etc/hosts文件(在root帐号下操作)

查看hostname

安装Oracle 11gR2(x64) (静默安装)

编辑文件 vim /etc/hosts,添加一行

10.2.10.143 localhost.localdomain

安装Oracle 11gR2(x64) (静默安装)

9.关闭防火墙

service iptables stop
chkconfig iptables off

10.创建所需的目录(在root帐号下操作)

把oracle安装在 /opt/oracle 目录下,所以需创建该目录

mkdir /opt/oracle
chown oracle:oinstall /opt/oracle
chmod 755 /opt/oracle

安装时还需要设置 Inventory 目录,所以需创建该目录

mkdir /opt/oraInventory
chown oracle:oinstall /opt/oraInventory
chmod 755 /opt/oraInventory

11.创建/etc/oraInst.loc文件,内容如下

vim /etc/oraInst.loc

nventory_loc=/opt/oraInventory
inst_group=oinstall

安装Oracle 11gR2(x64) (静默安装)

更改文件的权限

chown oracle:oinstall /etc/oraInst.loc
chmod 664 /etc/oraInst.loc

12.设置oracle帐号登录时环境(以oracle身份登录)

su - oracle

编辑文件 vim /home/oracle/.bash_profile

ORACLE_BASE=/opt/oracle #安装目录
ORACLE_HOME=$ORACLE_BASE/11g #oracle家目录
ORACLE_SID=orcl #实例名
LD_LIBRARY_PATH=$ORACLE_HOME/lib
NLS_LANG=AMERICAN_AMERICA.AL32UTF8
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin

ORACLE_UNQNAME=$ORACLE_SID #oracle em需要的环境变量
export ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH NLS_LANG PATH ORACLE_UNQNAME

保存退出后执行如下命令使以上设置立即生效

source /home/oracle/.bash_profile

检查环境变量

env

同时,在使用静默安装的时候会检查DISPLAY的设置,如果经常说检查DISPLAY不行的话,到root用户下执行“xhost + 你的ip:0.0“

13.解压oracle安装文件

su -  root
cd /lost+found/
mv linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip /home/oracle
su - oracle
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip

14.复制响应文件模板

su - oracle
mkdir /home/oracle/etc
cp /home/oracle/database/response/* /home/oracle/etc/

设置响应文件权限

su - root
chown oracle:oinstall /home/oracle/etc/*.rsp
chmod 700 /home/oracle/etc/*.rsp

15.静默安装Oracle软件

su - oracle

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

oracle.install.option=INSTALL_DB_SWONLY // 安装类型
ORACLE_HOSTNAME=localhost.localdomain // 主机名称(hostname查询)
UNIX_GROUP_NAME=oinstall // 安装组
INVENTORY_LOCATION=/opt/oraInventory //INVENTORY目录(不填就是默认值)
SELECTED_LANGUAGES=en,zh_CN,zh_TW // 选择语言
ORACLE_HOME=/opt/oracle/11g // oracle_home
ORACLE_BASE=/opt/oracle // oracle_base
oracle.install.db.InstallEdition=EE // oracle版本
oracle.install.db.isCustomInstall=false //自定义安装,否,使用默认组件
oracle.install.db.DBA_GROUP=dba // dba用户组
oracle.install.db.OPER_GROUP=oinstall // oper用户组
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //数据库类型
oracle.install.db.config.starterdb.globalDBName=orcl //globalDBName
oracle.install.db.config.starterdb.SID=orcl //SID
oracle.install.db.config.starterdb.memoryLimit=512 //自动管理内存的内存(M) 不能超过实际物理内存(不用设置)
oracle.install.db.config.starterdb.password.ALL=oracle //设定所有数据库用户使用同一个密码
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false(手动写了false)
DECLINE_SECURITY_UPDATES=true //设置安全更新

16.开始静默安装(以oracle身份登录)

cd database
./runInstaller -silent -ignorePrereq -force -noconfig -responseFile /home/oracle/etc/db_install.rsp

安装Oracle 11gR2(x64) (静默安装)

17.使用root用户执行脚本

su - root
sh /opt/oracle/11g/root.sh

安装Oracle 11gR2(x64) (静默安装)

18.静默配置监听

通运行netca, 生成sqlnet.ora和listener.ora文件, 位于$ORACLE_HOME/network/admin目录下

su - oracle
/opt/oracle/11g/bin/netca /silent /responsefile /home/oracle/database/response/netca.rsp

安装Oracle 11gR2(x64) (静默安装)

查看是否生成

ll $ORACLE_HOME/network/admin/*.ora

安装Oracle 11gR2(x64) (静默安装)

lsnrctl status #执行完后, 监听就已经启动了, 默认端口是1521, 默认是动态监听, 只要实例启动了就会监听到

安装Oracle 11gR2(x64) (静默安装)

19.静默建库(oracle用户)

vim /home/oracle/etc/dbca.rsp

[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"

#以下参数必须设置
[CREATEDATABASE]
GDBNAME = "orcl"
SID = "orcl"

DB_UNIQUE_NAME = "orcl"
INSTANCENAME = "orcl"

TEMPLATENAME = "General_Purpose.dbc"

#以下参数不设置则使用默认值,建议设置
CHARACTERSET = "AL32UTF8"
TOTALMEMORY = "1024"

dbca静默建库, 大概3-4分钟(这个过程中需要输入sys与system用户密码)

$ORACLE_HOME/bin/dbca  -silent -cloneTemplate  -responseFile /home/oracle/etc/dbca.rsp

安装Oracle 11gR2(x64) (静默安装)

各参数含义如下:

-silent 表示以静默方式安装 

-cloneTemplate 指定自模版文件创建
-gdbName Global Database Name
-sid 创建数据库的sid

-responseFile 表示使用哪个响应文件,必需使用绝对路径
RESPONSEFILE_VERSION 响应文件模板的版本,该参数不要更改
OPERATION_TYPE 安装类型,该参数不要更改
GDBNAME 全局数据库名,点号前面默认是db_name,点号后面默认就是db_domain
TEMPLATENAME 建库模板名,参考各模板定义:$ORACLE_HOME/assistants/dbca/templates/*.dbc
CHARACTERSET 字符集,默认是WE8MSWIN1252
TOTALMEMORY 实例内存,默认是服务器物理内存的40%

20.建库后实例检查

ps -ef | grep ora_ | grep -v grep | wc -l

安装Oracle 11gR2(x64) (静默安装)

ps -ef | grep ora_ | grep -v grep

安装Oracle 11gR2(x64) (静默安装)

21.建库后监听检查

lsnrctl status

22.在dbs下拷贝一份init.ora到initORCL.ora(此步骤可以不做,没有任何用)

cp /opt/oracle/11g/dbs/init.ora /opt/oracle/11g/dbs/initorcl.ora
cd /opt/oracle/11g/dbs

vim initorcl.ora(将以下选项修改为实际选项)

db_name='orcl'
audit_file_dest='/opt/oracle/admin/orcl11g/adump'
db_recovery_file_dest='/opt/oracle/flash_recovery_area'
diagnostic_dest='/opt/oracle'
control_files = '/opt/oracle/oradata/orcl11g/control01.ctl'

安装Oracle 11gR2(x64) (静默安装)

23.设置/dev/shm(启动数据库时报ORA-00845: MEMORY_TARGET not supported on this system)

su - root

查看shm大小

df -h |grep shm

安装Oracle 11gR2(x64) (静默安装)

vim /etc/fstab #将其改为2g

安装Oracle 11gR2(x64) (静默安装)

查询出已经使用的进程kill 再重新加载

lsof |grep shm

批量删除进程

lsof |grep shm | cut -c 9-15 | xargs kill -9

查看是否全部kill掉

lsof |grep shm

卸载挂载

umount /dev/shm
mount /dev/shm

24.启动数据库(oracle用户)

sqlplus / as sysdba
startup
shutdown immediate

25.启动em图形化管理工具

su - oracle
emctl start dbconsole #启动em

如果启动报以下错误

OC4J Configuration issue. /data/oracle/oc4j/j2ee/OC4J_DBConsole_gl.localdomain_DB11G not found.

安装Oracle 11gR2(x64) (静默安装)

发生此问题的原因:因为oracle所在数据库的ip地址发生变化引起em启动的时候报OC4J Configuration issue错误。

解决办法:重新配置dbcontrol

emca -config dbcontrol db    #配置

安装Oracle 11gR2(x64) (静默安装)

安装Oracle 11gR2(x64) (静默安装)

在chrome浏览器中访问以下地址

https://10.2.10.207:1158/em  

安装Oracle 11gR2(x64) (静默安装)

安装Oracle 11gR2(x64) (静默安装)