centos7.0安装oracle11g(静默安装)

一、创建用户、组

[root@localhost~]# groupadd oinstall

[root@localhost~]# groupadd dba

[root@localhost~]# useradd -g oinstall oracle

[root@localhost~]# usermod -G dba oracle

[root@localhost~]# id oracle

[root@localhost~]# passwd oracle

二、配置内核参数

1、[root@localhost~]#vi  /etc/sysctl.conf

kernel.sem = 25032000 100128             ##修改,增加本行

kernel.shmall =2097152                    ##满足,无需增加或修改

kernel.shmmax =536870912                  ##满足,无需增加或修改

kernel.shmmni =4096                       ##满足,无需增加或修改

fs.file-max =6815744                      ##修改,增加本行

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                ##修改,增加本行

fs.aio-max-nr =1048576                    ##修改,增加本行

2、修改后,使设置生效:

[root@localhost~]#/sbin/sysctl -p

 3、执行生效命令后,再次检查确认参数设置:

[root@localhost~]#/sbin/sysctl  -a

三、用户限制设置

1、在文件/etc/security/limits.conf中加入以下内容:

[root@localhost~]# vi /etc/security/limits.conf

oracle   soft    nofile    1024

oracle   hard    nofile    65536

oracle   soft    nproc     2047

oracle   hard    nproc     16384

2、在/etc/pam.d/login中增加以下内容:

[root@localhost~]# vi /etc/pam.d/login

session   required    /lib/security/pam_limits.so       //注意linux系统位数  64位时改为/lib64/security/pam_limits.so 

session   required    pam_limits.so

3、在/etc/profile中加入以下内容:

[root@localhost~]#vi  /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

四、关闭SELINUX

[root@localhost~]#vi /etc/sysconfig/selinux

#SELINUX=enforcing

SELINUX=disabled

五、创建安装目录

[root@localhost~]# mkdir -p /u01/app/

[root@localhost~]# chown -R oracle:oinstall /u01/app/

[root@localhost~]# chmod -R 775 /u01/app/

六、设置环境变量

1、[root@localhost~]#  su  oracle

2、[oracle@localhost~]$ vi  ~/.bash_profile

umask 022

exportORACLE_BASE=/u01/app/oracle

exportORACLE_SID=uprr

3、[oracle@localhost~]$   source/home/oracle/.bash_profile     //使修改生效

4[oracle@localhost~]$   unsetORACLE_HOME

5[oracle@localhost~]$   unset TNS_ADMIN

6、注意,除了ORACLE_BASE和ORACLE_SID,( /etc/profile和.bash_profile中)不设置任何oracle相关环境变量(ORACLE_HOME,PATH, LD_LIBRARY_PATH等)。

7、验证:

检查环境变量:

[oracle@localhost~]$  env | more

检查用户文件权限掩码:

[oracle@localhost~]$  umask

七、静默安装软件

1、解压oracle11g包   (linux.x64_11g…1of2..zip,linux.x64_11g…2of2..zip)

[oracle@localhost~]$ unzip –o linux.x64_11g…1of2..zip

[oracle@localhost~]$ unzip –o linux.x64_11g…2of2..zip

操作完成后,生成database目录

2、创建oraInst.loc

[oracle@localhost~]$  su - root

[root@localhost~]# vi  /etc/oraInst.loc

inventory_loc=/u01/app/oracle/oraInventory

inst_group=oinstall

 3.创建后一定要改权限

[root@localhost~]# chown oracle:oinstall /etc/oraInst.loc

[root@localhost~]# chmod 777 /etc/oraInst.loc

4、创建响应文件

[root@localhost~]#   su  oracle

[oracle@localhost~]$  mkdir  etc

4.1、将响应文件复制出来进行更改,防止出问题,/home/oracle/database/response/是在解压oracle11g包时生成的

[oracle@localhost~]$  cp  /home/oracle/database/response/*  etc/

4.2、更改安装oracle用到的响应文件

[oracle@localhost~]$  vi  /home/oracle/etc/db_install.rsp    

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0

oracle.install.option=INSTALL_DB_SWONLY

ORACLE_HOSTNAME=localhost.localdomain      

//根据实际情况[oracle@localhost~]$ hostname  查看

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/u01/app/oracle/oraInventory

SELECTED_LANGUAGES=en,zh_CN,zh_TW

ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1

ORACLE_BASE=/u01/app/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.isCustomInstall=false

oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=dba

DECLINE_SECURITY_UPDATES=true

4.3、创建数据库实例的响应文件

[oracle@localhost~]$ vi UPRR_DBCA.rsp

[GENERAL]

RESPONSEFILE_VERSION= "11.2.0"

OPERATION_TYPE ="createDatabase"

[CREATEDATABASE]

GDBNAME ="uprr"

SID ="uprr"

TEMPLATENAME ="General_Purpose.dbc"

DATAFILEDESTINATION= "/u01/app/oracle/oradata"

RECOVERYAREADESTINATION="/u01/app/oracle/flash_recovery_area"

CHARACTERSET ="AL32UTF8"

NATIONALCHARACTERSET="UTF8"

5、安装Oracle

5.1、[oracle@localhost~]$  cd database

5.2、[oracle@localhost~]$  ./runInstaller -silent -debug -force-responseFile /home/oracle/etc/ db_install.rsp

备注:(可选参数-noconfig -IgnoreSysPreReqs)

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

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

#-------------------------------------------------------------------

...

/u01/app/oracle/oraInventory/orainstRoot.sh

/u01/app/oracle/product/11.2.0/dbhome_1/root.sh

To execute theconfiguration scripts:

        1. Open a terminal window

        2. Log in as "root"

        3. Run the scripts

        4. Return to this window and hit "Enter" key to continue 

 

Successfully SetupSoftware.

5.3设置环境变量

[oracle@localhost~]$  vi  /home/oracle/.bash_profile

exportORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

exportTNS_ADMIN=$ORACLE_HOME/network/admin

export PATH=.:PATH:PATH:HOME/bin:$ORACLE_HOME/bin

exportPATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin

exportLD_LIBRARY_PATH=LD_LIBRARY_PATH:LD_LIBRARY_PATH:ORACLE_HOME/lib

exportLD_LIBRARY_PATH=LD_LIBRARY_PATH:LD_LIBRARY_PATH:ORACLE_HOME/oracm/lib

exportLD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib

export CLASSPATH=CLASSPATH:CLASSPATH:ORACLE_HOME/JRE

export CLASSPATH=CLASSPATH:CLASSPATH:ORACLE_HOME/JRE/lib

export CLASSPATH=CLASSPATH:CLASSPATH:ORACLE_HOME/jlib

export CLASSPATH=CLASSPATH:CLASSPATH:ORACLE_HOME/rdbms/jlib

export CLASSPATH=CLASSPATH:CLASSPATH:ORACLE_HOME/network/jlib

export LIBPATH=CLASSPATH:CLASSPATH:ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib

exportORACLE_OWNER=oracle

exportSPFILE_PATH=$ORACLE_HOME/dbs

exportORA_NLS10=$ORACLE_HOME/nls/data 

5.4、立即生效

[oracle@localhost~]$  source  /home/oracle/.bash_profile

八、静默配置网络

1、[oracle@localhost~]$  $ORACLE_HOME/bin/netca  -silent -responseFile /home/oracle/etc/netca.rsp

2、可能出现的问题

出现下图情况时,则需要配置DISPLAY变量,配完之后重新netca:

[oracle@ localhost~]$ export DISPLAY=localhost:0.0

[oracle@ localhost~]$$ORACLE_HOME/bin/netca  -silent -responseFile /home/oracle/etc/netca.rsp

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

查看监听端口:

[root@localhost]#netstat -tnulp | grep 1521

九、静默安装数据库,创建实例

[root@localhost ~]# su  oracle

[oracle@localhost~]$

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

建库后实例检查

[oracle@localhost ~]$ ps -ef | grep ora_ | grep -v grep |wc -l

[oracle@localhost ~]$ps -ef | grep ora_ | grep -v grep

建库后监听检查

[oracle@localhost ~]$ lsnrctl status

表示成功

登录查看实例状态

[oracle@localhost ~]$sqlplus / as sysdba

十、安装数据库用到的包,在七步之前完成

说明:执行1步会装大部分的包,因为yum 安装会将依赖的包都给安装,但是生产上不能连外网(这个我没操作过,不能用这种方法),因为我用的是64位操作系统,所以默认下载的都是64位的rpm,但是oracle安装还需要很多32位的rpm,这就需要单独下载。

1、[root@localhost ~]#yum  -y install  gcc  gcc-c++  make  binutilscompat-libstdc++-33 elfutils-libelf \

elfutils-libelf-devel glibc  glibc-commonglibc-devel \

libaio libaio-devel  libgcc  libstdc++ libstdc++-devel\

unixODBC unixODBC-devel

2、需要的32位rpm包

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

glibc-2.5-24 (32 bit)

glibc-devel-2.5 (32 bit)

libaio-0.3.106 (32 bit)

libaio-devel-0.3.106 (32 bit)

libgcc-4.1.2 (32 bit)

libstdc++-4.1.2 (32 bit)

unixODBC-2.2.11 (32 bit)

注意:例如下载compat-libstdc++-33-3.2.3(32位)

[root@localhost ~]#yum install  compat-libstdc++-33 (不要加后面的版本号,直接这么下,系统是64位,所以默认下载的也是64位)  

[root@localhost ~]#yum install  compat-libstdc++-33.i686(下载32位)  

十一、oracle安装后,pl-sql连接

1、  数据库的ip地址

2、  端口号默认1521

3、  实例名 (UPRR_DBCA.rsp里的SID值uprr)

十二、其它问题

1、“libXext.so.6:cannot open shared object file:

[root@localhost ~]#yum install  libXext.i686(下载32位) 

2、重启linux,module is unknown

a、进入单用户模式

b、在/etc/pam.d/login路径下,将/lib/security/pam_limits.so(适用32位)改为/lib64/security/pam_limits.so(适用64位)

 

猜你喜欢

转载自blog.csdn.net/wangjianqing1/article/details/79173598