您的位置:首页 > 数据库 > Oracle

Centos7 安装与部署单实例oracle数据库

2017-10-10 14:46 120 查看
Oracle Install and deploy for  Centos 7(Oracle的安装与部署在Centos7)一、 环境准备安装包:
1.VMware-workstation-full-11.1.0-2496824.exe
2.CentOS-7-x86_64-DVD-1511.iso
3.linux.x64_11gR2_database_1of2.zip
linux.x64_11gR2_database_2of2.zip
注: 第一次安装没有进行任何操作之前最好创建快照,后期搞死了
可以回归到改快照
二、安装oracle前准备
1、创建运行oracle数据库的系统用户和用户组
[root@localhost ~]# groupadd -g 200 oinstall   -- 创建一个oinstall用户组 ID200
[root@localhost ~]# groupadd -g 201 dba   -- 创建一个DBA用户组 ID201
[root@localhost ~]# useradd -u 200 -g oinstall -G dba oracle  --添加一个用户ID200-g主组-G 附加组 
用户 oracle
[root@localhost ~]# passwd oracle  设密码 密码oracle
理论上单例按照需要3种用户组,实际只建两个oinstall和dba,后面再安装oracle数据库的时候把OSOPER组也设置是dba组。
a.oracle 清单组(一般为oinstall):OINSTALL 组的成员被视为 Oracle 软件的“所有者”,拥有对 Oracle 中央清单 (oraInventory) 的写入权限。
在一个 Linux 系统上首次安装 Oracle 软件时,OUI 会创建 /etc/oraInst.loc 文件。该文件指定 Oracle 清单组的
名称(默认为 oinstall)以及 Oracle 中央清单目录的路径。
b.数据库管理员(OSDBA,一般为 dba):OSDBA 组的成员可通过操作系统身份验证使用 SQL 以 SYSDBA 身份连接到一个 Oracle 实例。该组的成员可执行关键
的数据库管理任务,如创建数据库、启动和关闭实例。该组的默认名称为dba。SYSDBA 系统权限甚至在数据库未打开时
也允许访问数据库实例。对此权限的控制完全超出了数据库本身的范围。不要混淆 SYSDBA 系统权限与数据库角色 DBA。
DBA 角色不包括 SYSDBA 或 SYSOPER 系统权限。
c.数据库操作员组(OSOPER,一般为 oper):OSOPER 组的成员可通过操作系统身份验证使用 SQL 以 SYSOPER 身份连接到一个 Oracle 实例。这个可选组的成员
拥有一组有限的数据库管理权限,如管理和运行备份。该组的默认名称为oper。SYSOPER 系统权限甚至在数据库未打开
时也允许访问数据库实例。对此权限的控制完全超出了数据库本身的范围。要使用该组,选择 Advanced 安装类型来安
装 Oracle 数据库软件。 
2.创建oracle数据库安装目录
[root@localhost ~]# mkdir -p /u01/app/oracle/product/11.2.0/db_1    #数据库安装目录
[root@localhost ~]# mkdir -p /u01/app/oracle/oraInventory   #oracle数据库配置文件目录
[root@localhost ~]# mkdir -p /u01/database   #oracle 数据库软件包解压目录
[root@localhost u01]# chmod -R 775 /u01/app/oracle/product/11.2.0/db_1
[root@localhost u01]# chmod -R 775 /u01/app/oracle/oraInventory/
[root@localhost u01]# chmod -R 775 /u01/database
[root@localhost u01]# chown -R oracle:oinstall /u01/app/oracle/product/11.2.0/db_1
[root@localhost u01]# chown -R oracle:oinstall /u01/app/oracle/oraInventory/
[root@localhost u01]# chown -R oracle:oinstall /u01/database/
3、修改OS系统标识
 oracle默认不支持CentOS系统安装,Oracle Database 11g Release 2 的 OS要求参考: https://docs.oracle.com/cd/E11882_01/install.112/e47689/pre_install.htm#LADBI1106 我安装是64位数据库,On Linux x86-64: 另外,CentOS7.0.1511基于 RHEL7.2  参考:http://www.linuxidc.com/Linux/2015-12/126283.htm 修改文件 /etc/
[root@localhost ~]# cat /proc/version
Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@localhost ~]# vi /etc/redhat-release
[root@localhost ~]# cat /etc/redhat-release
redhat-7
4.安装oracle数据库所需要的软件包
Oracle Database Package Requirementsfor Linux x86-64 如下:(参考:https://docs.oracle.com/cd/E11882_01/install.112/e47689/pre_install.htm#BABCFJFG)
Oracle Linux 7 and Red Hat Enterprise Linux 7
The following packages (or later versions) must be installed:
binutils-2.23.52.0.1-12.el7.x86_64
compat-libcap1-1.10-3.el7.x86_64compat-libstdc++-33-3.2.3-71.el7.i686compat-libstdc++-33-3.2.3-71.el7.x86_64gcc-4.8.2-3.el7.x86_64gcc-c++-4.8.2-3.el7.x86_64glibc-2.17-36.el7.i686glibc-2.17-36.el7.x86_64glibc-devel-2.17-36.el7.i686glibc-devel-2.17-36.el7.x86_64kshlibaio-0.3.109-9.el7.i686libaio-0.3.109-9.el7.x86_64libaio-devel-0.3.109-9.el7.i686libaio-devel-0.3.109-9.el7.x86_64libgcc-4.8.2-3.el7.i686libgcc-4.8.2-3.el7.x86_64libstdc++-4.8.2-3.el7.i686libstdc++-4.8.2-3.el7.x86_64libstdc++-devel-4.8.2-3.el7.i686libstdc++-devel-4.8.2-3.el7.x86_64libXi-1.7.2-1.el7.i686libXi-1.7.2-1.el7.x86_64libXtst-1.2.2-1.el7.i686libXtst-1.2.2-1.el7.x86_64make-3.82-19.el7.x86_64sysstat-10.1.5-1.el7.x86_64 
一个一个安装 yum install binutils
5、关闭防火墙
CentOS 7.2默认使用的是firewall作为防火墙
[root@localhost ~]# systemctl status firewalld.service   查看防火墙
[root@localhost ~]# systemctl stop firewalld.service    关闭防火墙
[root@localhost ~]# systemctl disable  firewalld.service  禁止使用防火墙
6、关闭selinux
[root@localhost ~]# vi /etc/selinux/config
[root@localhost ~]# cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled  # 此处修改为disabled 默认为SELINUX=enforcing
# SELINUXTYPE= can take one of three two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted
为啥要关闭selinux?因为selinux太高深,非专业人士搞不懂~~
7、修改内核参数
[root@localhost ~]# vi /etc/sysctl.conf
[root@localhost ~]# cat /etc/sysctl.conf
# System default settings live in /usr/lib/sysctl.d/00-system.conf.
# To override those settings, enter new settings here, or in an /etc/sysctl.d/<name>.conf file
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
fs.file-max = 6815744 #设置最大打开文件数
fs.aio-max-nr = 1048576
kernel.shmall = 2097152 #共享内存的总量,8G内存设置:2097152*4k/1024/1024
kernel.shmmax = 2147483648 #最大共享内存的段大小
kernel.shmmni = 4096 #整个系统共享内存端的最大数
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500 #可使用的IPv4端口范围
net.core.rmem_default = 262144
net.core.rmem_max= 4194304
net.core.wmem_default= 262144
net.core.wmem_max= 1048576
使配置参数生效[root@localhost ~]# sysctl -p
8.对oracle用户设置限制,提高软件运行性能(红色为添加部分)[root@localhost ~]# vi /etc/security/limits.conf
oracle  soft    nproc   2047oracle  hard    nproc   16384oracle  soft    nofile  1024oracle  hard    nofile  65536oracle  soft    stack   10240
9.配置用户的环境变量(红色部分为添加代码)[root@localhost ~]# vim /home/oracle/.bash_profile[root@localhost ~]# cat /home/oracle/.bash_profile
su - oraclevi .bash_profileexport EDITOR=vi   --SQLPULS
export ORACLE_SID=orcl
export ORACLE_BASE=/u01/app/oracle   --根目录
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 --家目录
export LD_LIBRARY_PATH=$ORACLE_HOME/lib  --
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin  --配置命令路径
export LANG=C
export ORACLE_TERM=xterm
使上述配置立即生效:[root@localhost ~]# source /home/oracle/.bash_profile
10 、 解压安装包
[oracle@localhost /]$ cd /usr/local/src 
[oracle@localhost src]$ unzip linux.x64_11gR2_database_1of1.zip  -d /u01/database/
[oracle@localhost src]$ unzip linux.x64_11gR2_database_2of2.zip  -d /u01/database/
[root@localhost src]# chown -R oracle:oinstall /u01/database/database/
三 、oracle 安装
运行安装程序是如果报错
No protocol specified
Exception in thread "main" java.lang.NoClassDefFoundError
[root@localhost database]# xhost +
Exception in thread "main" java.lang.NoClassDefFoundError
 1 .系统中设置了DISPLAY环境变量                      执行:                               unset DISPLAY                       然后再执行runInstaller.sh,执行成功                   2.重新启动系统。以oracle的身份登录系统,然后执行./runInstaller
提示框不显示的时候
./runInstaller -jreLoc  /usr/lib/jvm/jre-1.8.0
swap空间不足解决 :(要求2.67G 实际2G)
[root@localhost oracle]# free -m  #查看当前虚拟内存total        used        free      shared  buff/cache   availableMem:           1824        1369          93          10         361         250Swap:          2048          20        2028[root@localhost oracle]# dd if=/dev/zero of=/home/swap bs=1024 count=1024000  #将当前swap空间由2048M 增加到 3048M 新增一个2014的swap文件1024000+0 records in1024000+0 records out1048576000 bytes (1.0 GB) copied, 29.4051 s, 35.7 MB/s[root@localhost oracle]# mkswap /home/swapSetting up swapspace version 1, size = 1023996 KiBno label, UUID=5e3d39d7-285e-4c74-b321-1e2b3ffabf83[root@localhost oracle]# free -mtotal        used        free      shared  buff/cache   availableMem:           1824        1275          95          10         454         342Swap:          2048         141        1907[root@localhost oracle]# swapon /home/swap  #增加并启用虚拟内容swapon: /home/swap: insecure permissions 0644, 0600 suggested.[root@localhost oracle]# free -m  #再次查看total        used        free      shared  buff/cache   availableMem:           1824        1275          94          10         454         342Swap:          3048         141        2907 

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: