oracle静默安装

Posted charon2

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle静默安装相关的知识,希望对你有一定的参考价值。

Web服务器上面的Linux一般是不会有图形界面的,所有通过图形界面来安装Linux的方式在没有图形界面的Linux上面是行不通的,我们要使用的安装方式叫做Linux的静默安装。即在没有图形界面的Linux上面安装。

 

1.下载地址 

http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html 

下载.tar.gz文件即可,oracle在Window上面是有分位数的,但在linux上面没有分,只需要下载 x-86-64 版本的即可。 

  以·tar.gz为扩展名的是一种压缩文件,在Linux和OSX下常见,Linux和OSX都可以直接解压使用这种压缩文件。 

注意:root用户不能用是使用安装,root用户无法用来安装,需要用root用户创建一个新的用户要安装oracle。

2.硬件检测: 

物理内存不少于1G 

硬盘可以空间不少于5G 

swap分区空间不少于2G 

支持256色以上显卡 

cpu主频不小于550mHZ 

cat /etc/issue 

uname -r (版本) 

grep MemTotal /proc/meminfo (内存大小) 

grep SwapTotal /proc/meminfo (交换区大小) 

grep “model name” /proc/cpuinfo (CPU信息) 

free (可用内存)

 

3.检查安装依赖系统包 

  操作系统依赖的具体包,请参考官方安装文档。

binutils-2.17.50.0.6 

compat-libstdc++-33-3.2.3 

compat-libstdc++-33-3.2.3 (32 bit) 

elfutils-libelf-0.125 

elfutils-libelf-devel-0.125 

gcc-4.1.2 

gcc-c++-4.1.2 

glibc-2.5-24 

glibc-2.5-24 (32 bit) 

glibc-common-2.5 

glibc-devel-2.5 

glibc-devel-2.5 (32 bit) 

glibc-headers-2.5 

ksh-20060214 

libaio-0.3.106 

libaio-0.3.106 (32 bit) 

libaio-devel-0.3.106 

libaio-devel-0.3.106 (32 bit) 

libgcc-4.1.2 

libgcc-4.1.2 (32 bit) 

libstdc++-4.1.2 

libstdc++-4.1.2 (32 bit) 

libstdc++-devel 4.1.2 

make-3.81 

sysstat-7.0.2 

unixODBC-2.2.11 (32-bit) or later 

unixODBC-devel-2.2.11 (64-bit) or later 

unixODBC-2.2.11 (64-bit) or later 

检查依赖包

 

rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc-2.5 glibc-common glibc-devel glibc-headers ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel

如果包有显示is not installed(没安装),就用yum install 命令安装,如:

yum install compat-libstdc++-33

4.创建所需的操作系统组和用户

 

    groupadd oinstall

    groupadd dba

    useradd -g oinstall -G dba oracle

 

设置oracle用户密码

passwd oracle

 

5.修改内核参数 

/sbin/sysctl.conf 文件中,使用文本编辑器或vi命令增加或修改以下参数 (vi /sbin/sysctl.conf)

 

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 = 1048576

 

修改后,使设置生效

/sbin/sysctl -p

 

6.修改用户限制

 

/etc/security/limits.conf 文件中,使用文本编辑器或vi命令

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

 

/etc/pam.d/login 文件中,使用文本编辑器或vi命令增加或修改以下内容

session required /lib/security/pam_limits.so

session required pam_limits.so

 

/etc/profile 文件中,使用文本编辑器或vi命令增加或修改以下内容

 

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

 

7.创建安装目录(可根据情况,选择比较多空间的目录创建)

mkdir -p /oracle/oracle

chown -R oracle:oinstall /oracle/oracle

chmod -R 775 /oracle/oracle

 

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

inventory_loc=/oracle/oracle_11g/oraInventory

inst_group=oinstall

 

更改文件的权限

chown oracle:oinstall /etc/oraInst.loc

chmod 664 /etc/oraInst.loc

 

9.设置oracle环境变量

su - oracle    //切换用户到oracle

vi ~/.bash_profile  //访问或者创建 home/oracle目录下面的.bash_profile文件

 

在最后加上以下内容

export ORACLE_BASE=/oracle/oracle_11g

export ORACLE_SID=orcl

 

注意,除了ORACLE_BASE和ORACLE_SID,( /etc/profile和.bash_profile中)不设置任何oracle相关环境变量(ORACLE_HOME, PATH, LD_LIBRARY_PATH等)。其他环境变量将在安装完成后再配置

 

使设置生效

source /home/oracle/.bash_profile 

检查环境变量:

env 

10.解压oracle安装文件

unzip linux.x64_11gR2_database_1of2.zip

unzip linux.x64_11gR2_database_2of2.zip

 

11.复制响应文件模板

mkdir etc

cp /oracle/oracle/database/response /home/oracle/etc/

 

设置响应文件权限

su - root

chmod 700 /home/oracle/etc/*.rsp(注意所有者,oinstall)

 

12.静默安装Oracle软件 

切换用户

su - oracle 

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

vi /home/oracle/etc/db_install.rsp 

添加一下内容

 

# 安装类型

oracle.install.option=INSTALL_DB_SWONLY 

# 主机名称(通过hostname查询的)

ORACLE_HOSTNAME=db-test-ora 

#安装组

UNIX_GROUP_NAME=oinstall

#INVENTORY目录(不填就是默认值)

INVENTORY_LOCATION=/oracle/oracle_11g/oraInventory 

# 选择语言

SELECTED_LANGUAGES=en,zh_CN,zh_TW 

#oracle_home

ORACLE_HOME=/oracle/oracle_11g/product/11.2.0/dbhome_1/

#oracle_base

ORACLE_BASE=/oracle/oracle_11g

#oracle版本

oracle.install.db.InstallEdition=EE 

#自定义安装,否,使用默认组件

oracle.install.db.isCustomInstall=false 

#dba用户组

oracle.install.db.DBA_GROUP=dba 

#oper用户组

oracle.install.db.OPER_GROUP=oinstall 

#数据库类型

oracle.install.db.config.starterdb.type=GENERAL_PURPOSE

#globalDBName 

oracle.install.db.config.starterdb.globalDBName=orcl

#SID

oracle.install.db.config.starterdb.SID=orcl

#自动管理内存的内存(M)

oracle.install.db.config.starterdb.memoryLimit=81920 

#设定所有数据库用户使用同一个密码

oracle.install.db.config.starterdb.password.ALL=oracle

#(手动写了false)

SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

#设置安全更新(貌似是有bug,这个一定要选true,否则会无限提醒邮件地址有问题,终止安装。PS:不管地址对不对)

DECLINE_SECURITY_UPDATES=true 

 

其他的变量不配置或者默认即可。

 

开始静默安装

cd database 

./runInstaller -silent -responseFile /home/oracle/etc/db_install.rsp 

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

查看安装日志信息了解安装进度

cd $ORACLE_BASE/oraInventory/logs 

tail -f installActions*.log 

出现类似如下提示表示安装完成:

 

——————————————————————-

 

/oracle/oracle_11g/oraInventory/orainstRoot.sh

 

/oracle/oracle_11g/product/11.2.0/dbhome_1/root.sh

 

To execute the configuration scripts:

 

Open a terminal window

 

Log in as “root”

 

Run the scripts

 

Return to this window and hit “Enter” key to continue

 

Successfully Setup Software.

 

——————————————————————-

 

使用root用户执行脚本 

这里是有两个脚本要执行,跑一下就好

su - root 

/oracle/oracle_11g/product/11.2.0/dbhome_1/root.sh

/oracle/oracle_11g/oraInventory/orainstRoot.sh

增加oracle环境变量 

su - oracle 

vi ~/.bash_profile 

在最后加上以下内容

 

export PATH

export ORACLE_BASE=/oracle/oracle_11g

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export ORACLE_SID=orcl

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export TNS_ADMIN=$ORACLE_HOME/network/admin

export PATH=/usr/sbin:$PATH:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:/lib:/usr/lib

unset USERNAME

umask 022

alias sqlplus=‘rlwrap sqlplus‘

alias rman=‘rlwrap rman‘

                        

 

使设置生效

source /home/oracle/.bash_profile 

到这里,oracle11g的数据库实例就算是装好了。 

可以使用sqlplus登录数据库查看数据库是否安装成功!

 

sqlplus 用户名/密码  (可选:连接IP) as sysdba

 

13.静默配置网络 

$ORACLE_HOME/bin/netca /silent /responseFile /home/oracle/etc/netca.rsp 

14.静默安装数据库 

修改仅安装数据库的响应文件/home/oracle/etc/dbca.rsp

 

GDBNAME=”orcl.java-linux-test” //78 行 全局数据库的名字=SID+主机域名 orcl 

SID=”orcl” //149行 SID 

CHARACTERSET=”AL32UTF8” //415行 编码 

NATIONALCHARACTERSET=”UTF8” //425行 编码 

SYSPASSWORD = “123456” 

SYSTEMPASSWORD = “123456”

 

进行静默安装数据库

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

 

建库后实例检查

 

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

ps -ef | grep ora_ | grep -v grep 

建库后监听检查

 

lsnrctl status 

如果出现以下错误

 

lsnrctl: error while loading shared libraries: /u01/app/oracle/product/11.2.0/db_1/lib/libclntsh.so.11.1: cannot restore segment prot after reloc: Permission denied

 

解决办法:在root用户下执行以下命令

 

su - root 

setenforce 0 

15.修改oracle启动配置文件

 

su - oracle 

vi /etc/oratab

 

racl:/u01/app/oracle/product/11.2.0/db_1:Y //把“N”改成“Y”

 

这样就可以通过dbstart 启动此实例,监听器。

 

dbstart $ORACLE_HOME 

此时所有oracle的进程关闭,监听器也停止。

 

dbshut $ORACLE_HOME 

再次查看监听器状态。

 

lsnrctl status

 

如果使用归档日志

 

sqlplus / as sysdba

 

SQL> shutdown immediate; 

SQL> startup mount; 

SQL> alter database archivelog; 

SQL> alter database flashback on; (如果要启用数据库闪回功能则执行) 

SQL> alter database open; 

SQL> execute utl_recomp.recomp_serial(); (重新编译所有可能失效对象) 

SQL> alter system archive log current; (手工归档测试)

 

默认安装的数据库用户检查

 

SQL> set lines 256 pages 500 

SQL> select USER_ID,USERNAME,ACCOUNT_STATUS,DEFAULT_TABLESPACE from dba_users order by

以上是关于oracle静默安装的主要内容,如果未能解决你的问题,请参考以下文章

oracle静默安装中遇到的那些坑

Linux下静默安装Oracle

RedHat 7 静默安装Oracle 12c

Oracle静默安装

Linux静默安装oracle 11g

Oracle安装(11g)静默安装