CentOS6.7系统下安装配置Oracle11G R2

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS6.7系统下安装配置Oracle11G R2相关的知识,希望对你有一定的参考价值。

一、安装Oracle 11G前环境搭建

    本次实验是基于Linux(CentOS6.7_64)下搭建oracle 11g环境,这里选择CentOS安装oracle并不是最佳选择,可以根据需要选择不同的Linux发行版,如Oracle Linux、SuSE Linux、Red Hat、IBM AIX等。

技术分享

    VM或物理机的配置要求:

    在实验环境安装oracle11g最少需要2G内存、2个cpu、2G交换分区、磁盘空间不低于20G。

    生产环境中,要保证oracle的性能,建议最低配置为8G内存、4个cpu、8G交换分区,如果生产环境比较繁忙,则需要更高的配置。


二、安装Oracle 11G前准备工作

上传oracle11g安装包,解压

linux.x64_11gR2_database_1of2.zip

linux.x64_11gR2_database_2of2.zip


配置/etc/hosts文件,添加ip与主机名的解析

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

#eth0
10.11.12.88     hm


创建oracle相关用户和组

[[email protected] ~]# groupadd dba
[[email protected] ~]# groupadd oinstall
[[email protected] ~]# useradd -g oinstall -G dba -m oracle
[[email protected] ~]# id oracle
uid=500(oracle) gid=501(oinstall) groups=501(oinstall),500(dba)


创建oracle软件安装目录

[[email protected] ~]# mkdir /u01/app/oracle -p
[[email protected] ~]# chown -R oracle. /u01/
[[email protected] ~]# chmod 775 -R /u01/
[[email protected] ~]# ls -ld /u01/
drwxr-xr-x. 3 oracle oinstall 4096 Oct 14 22:58 /u01/


oracle用户环境变量设置,su进入oracle用户下,修改~/.bash_profile文件,添加以下内容

export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_TERM=xterm
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/db
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/lib64

if [ $USER = "oracle" ];then
    if [ $SHELL = "/bin/ksh" ];then
        ulimit -p 16384
        ulimit -n 65536
    else
        ulimit -u 16384 -n 65536
    fi
fi


修改内核参数,打开/etc/sysctl.conf文件,添加以下参数,并修改/etc/security/limits.conf文件

kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
[[email protected] ~]# sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096

在/etc/security/limits.conf文件末尾添加如下内容
oracle          soft    nproc           2047
oracle          hard    nproc           16384
oracle          soft    nofile          4096
oracle          hard    nofile          65536

并同时修改/etc/pam.d/login文件,添加以下内容
session    required     pam_limits.so


安装oracle依赖的软件包

[[email protected] ~]# yum install gcc gcc-c++ libaio glibc compat-libstdc++-33 elfutils-libelf-devel libaio-devel libgcc libstdc++ libstdc++-devel unixODBC unixODBC-devel glibc-common ksh make sysstat pdksh

[[email protected] ~]# yum install glibc-2.12-1.192.el6.i686

检查是否安装

[[email protected] ~]# for i in gcc gcc-c++ libaio glibc compat-libstdc++-33 elfutils-libelf-devel libaio-devel libgcc libstdc++ libstdc++-devel unixODBC unixODBC-devel glibc-common ksh make sysstat pdksh;do rpm -q $i;done
gcc-4.4.7-17.el6.x86_64
gcc-c++-4.4.7-17.el6.x86_64
libaio-0.3.107-10.el6.x86_64
glibc-2.12-1.192.el6.x86_64
compat-libstdc++-33-3.2.3-69.el6.x86_64
elfutils-libelf-devel-0.164-2.el6.x86_64
libaio-devel-0.3.107-10.el6.x86_64
libgcc-4.4.7-17.el6.x86_64
libstdc++-4.4.7-17.el6.x86_64
libstdc++-devel-4.4.7-17.el6.x86_64
unixODBC-2.2.14-14.el6.x86_64
unixODBC-devel-2.2.14-14.el6.x86_64
glibc-common-2.12-1.192.el6.x86_64
ksh-20120801-33.el6.x86_64
make-3.81-23.el6.x86_64
sysstat-9.0.4-31.el6.x86_64
package pdksh is not installed


三、安装oracle11g软件

解压oracle11g软件包

[[email protected] oracle]# unzip linux.x64_11gR2_database_1of2.zip

[[email protected] oracle]# unzip linux.x64_11gR2_database_2of2.zip

[[email protected] oracle]# chown -R oracle. database/
[[email protected] oracle]# ls -l database/
total 36
drwxr-xr-x. 12 oracle oinstall 4096 Aug 17  2009 doc
drwxr-xr-x.  4 oracle oinstall 4096 Aug 15  2009 install
drwxrwxr-x.  2 oracle oinstall 4096 Aug 15  2009 response
drwxr-xr-x.  2 oracle oinstall 4096 Aug 15  2009 rpm
-rwxr-xr-x.  1 oracle oinstall 3226 Aug 15  2009 runInstaller
drwxrwxr-x.  2 oracle oinstall 4096 Aug 15  2009 sshsetup
drwxr-xr-x. 14 oracle oinstall 4096 Aug 15  2009 stage
-rw-r--r--.  1 oracle oinstall 5402 Aug 18  2009 welcome.html


以orcle用户登录图形界面安装oracle,也可以使用vnc远程安装。这里直接用Xshell远程调用linux图形界面进行安装

[[email protected] ~]# su - oracle
[[email protected] ~]$ export DISPLAY=10.11.12.1:0.0
[[email protected] ~]$ xhost +

进入database目录,执行runInstalle

[[email protected] ~]$ cd /usr/local/src/oracle/database/
[[email protected] database]$ ./runInstaller 
Starting Oracle Universal Installer...

Checking Temp space: must be greater than 120 MB.   Actual 21645 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 4095 MB    Passed
Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2016-10-15_12-48-55PM. Please wait ...

进入图形界面安装

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享


[[email protected] ~]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.

[[email protected] ~]# /u01/app/oracle/db/root.sh
Running Oracle 11g root.sh script...

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/oracle/db

Enter the full pathname of the local bin directory: [/usr/local/bin]: 
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.

技术分享

启动监听

[[email protected] ~]$ lsnrctl start

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 15-OCT-2016 23:30:07

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

Starting /u01/app/oracle/db/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Log messages written to /u01/app/oracle/diag/tnslsnr/hm/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hm)(PORT=1521)))

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date                15-OCT-2016 23:30:09
Uptime                    0 days 0 hr. 0 min. 1 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Log File         /u01/app/oracle/diag/tnslsnr/hm/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hm)(PORT=1521)))
The listener supports no services
The command completed successfully

创建数据库实例,oracle用户下使用dbca工具创建

[[email protected] ~]$ dbca

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

安装完成检查,查看oracle进程与监听状态

[[email protected] ~]$ ps -ef | grep ora_
oracle    6636     1  0 23:41 ?        00:00:00 ora_pmon_orcl
oracle    6638     1  0 23:41 ?        00:00:04 ora_vktm_orcl
oracle    6642     1  0 23:41 ?        00:00:00 ora_gen0_orcl
oracle    6644     1  0 23:41 ?        00:00:00 ora_diag_orcl
oracle    6646     1  0 23:41 ?        00:00:00 ora_dbrm_orcl
oracle    6648     1  0 23:41 ?        00:00:00 ora_psp0_orcl
oracle    6650     1  0 23:41 ?        00:00:05 ora_dia0_orcl
oracle    6652     1  0 23:41 ?        00:00:00 ora_mman_orcl
oracle    6654     1  0 23:41 ?        00:00:00 ora_dbw0_orcl
oracle    6656     1  0 23:41 ?        00:00:00 ora_lgwr_orcl
oracle    6658     1  0 23:41 ?        00:00:00 ora_ckpt_orcl
oracle    6660     1  0 23:41 ?        00:00:00 ora_smon_orcl
oracle    6662     1  0 23:41 ?        00:00:00 ora_reco_orcl
oracle    6664     1  0 23:41 ?        00:00:02 ora_mmon_orcl
oracle    6666     1  0 23:41 ?        00:00:02 ora_mmnl_orcl
oracle    6668     1  0 23:41 ?        00:00:00 ora_d000_orcl
oracle    6670     1  0 23:41 ?        00:00:00 ora_s000_orcl
oracle    6719     1  0 23:41 ?        00:00:00 ora_qmnc_orcl
oracle    6739     1  0 23:41 ?        00:00:01 ora_cjq0_orcl
oracle    6832     1  0 23:41 ?        00:00:00 ora_q000_orcl
oracle    6834     1  0 23:41 ?        00:00:00 ora_q001_orcl
oracle    6842     1  0 23:42 ?        00:00:00 ora_smco_orcl
oracle    6844     1  0 23:42 ?        00:00:00 ora_w000_orcl
oracle   15858  2208  0 23:59 pts/0    00:00:00 grep ora_

[[email protected] ~]$ lsnrctl status

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 15-OCT-2016 23:59:58

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date                15-OCT-2016 23:30:09
Uptime                    0 days 0 hr. 29 min. 50 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Log File         /u01/app/oracle/diag/tnslsnr/hm/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hm)(PORT=1521)))
Services Summary...
Service "orcl" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
Service "orclXDB" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
The command completed successfully


登录oracle数据库,查看数据库实例状态、实例名、数据库文件、日志文件

SQL> select status from v$instance;

STATUS
------------
OPEN

SQL> select name from v$database;

NAME
---------
ORCL


SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/system01.dbf
/u01/app/oracle/oradata/orcl/sysaux01.dbf
/u01/app/oracle/oradata/orcl/undotbs01.dbf
/u01/app/oracle/oradata/orcl/users01.dbf

SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/redo03.log
/u01/app/oracle/oradata/orcl/redo02.log
/u01/app/oracle/oradata/orcl/redo01.log


查看oracle数据库版本

SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE    11.2.0.1.0    Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production


关闭与启动

关闭数据库实例

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.

关闭监听

[[email protected] ~]$ lsnrctl stop

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 16-OCT-2016 00:16:41

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
The command completed successfully

[[email protected] ~]$ ps -ef | grep ora_
oracle   16987  2208  0 00:17 pts/0    00:00:00 grep ora_

启动监听

[[email protected] ~]$ lsnrctl start

启动实例

[[email protected] ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Sun Oct 16 00:19:39 2016

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup;
ORACLE instance started.

Total System Global Area  780824576 bytes
Fixed Size            2217424 bytes
Variable Size          599788080 bytes
Database Buffers      171966464 bytes
Redo Buffers            6852608 bytes
Database mounted.
Database opened.
SQL> select status from v$instance;

STATUS
------------
OPEN




以上是关于CentOS6.7系统下安装配置Oracle11G R2的主要内容,如果未能解决你的问题,请参考以下文章

Win10 系统怎么安装oracle11g 总是提示配置失败

redhat下怎么安装oracle11g

Linux下安装oracle 11g数据库

linux下ORACLE 11G 安装 说权限不足

centos7.0下安装oracle11g

CentOS7.7下安装Oracle11g数据库