Oracle已经发布Oracle 12C 一段时间了,Oracle此次发布只有64位版本,并无32位版本。我们的系统安装环境为CentOS 6.5 x86_64 。

1、安装Oracle依赖包

修改yum配置,默认同时安装32位和64位rpm

yum install binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++-devel libaio libaio-devel libXext libXtst libX11 libXau libxcb libXi make sysstat  

2 、配置用户

2.1. 创建相关用户和用户组

/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/useradd -g oinstall -G dba oracle

如果已经创建过oracle 可以执行

/usr/sbin/usermod -g oinstall -G dba oracle

2.2 修改系统内核参数

cp /etc/sysctl.conf /etc/sysctl.conf.bak  
vim /etc/sysctl.conf  

fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall =33554432 kernel.shmmax = 137438953472 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.iplocalportrange = 9000 65500 net.core.rmemdefault = 262144 net.core.rmemmax = 4194304 net.core.wmemdefault = 262144 net.core.wmem_max = 1048586

查看oracle用户组的id

more /etc/passwd  

oracle:x:500:501::/home/oracle:/bin/bash

修改大内存限制

echo 500 > /proc/sys/vm/hugetlb_shm_group  
vi /etc/sysctl.conf  

vm.hugetlbshmgroup=500

修改用户Limits

vi /etc/security/limits.conf  

新增如下内容:

oracle soft nofile 65536 oracle hard nofile 65536 oracle soft nproc 16384 oracle hard nproc 16384 oracle stack nproc 16384

2.3 创建目录

mkdir -p /u01/app/  
chown -R oracle:oinstall /u01/app/  
chmod -R 775 /u01/app/  

2.4 配置网络配置hosts

hostname  

Oracle12

vi /etc/hosts  

127.0.0.1 Oracle12

2.5 配置环境变量

su – oracle  
echo $SHELL  

/bin/bash

cd ~  
vi .bash_profile  

TMP=/tmp
TMPDIR=/tmp
export TMP TMPDIR

3正式开始安装Oracle

3.1首先解压文件到oracle 用户目录,并进入database 目录。

xhost +  
cd ~  
unzip unzip linuxamd64_12c_database_1of2.zip  
unzip unzip linuxamd64_12c_database_2of2.zip  
cd database  
./runInstaller

4 后续工作

4.1. 配置环境变量

cd ~  
vi .bash_profile  

########## for Oracle ########## ORACLEBASE=/u01/app/oracle export ORACLEBASE ORACLEHOME=$ORACLEBASE/product/12.1.0/dbhome1 export ORACLEHOME ORACLESID=orcl.org export ORACLESID PATH=$PATH:.:$ORACLE_HOME/bin export PATH

5 疑难问题:

在安装的过程中遇到了ORA-00845: MEMORY_TARGET not supported on this system

这个问题是由于设置SGA的大小超过了操作系统/dev/shm的大小这个问题是由于设置SGA的大小超过了操作系统/dev/shm的大小

查看shm大小:

[oracle@localhost dbs]$ df -h /dev/shm

文件系统 容量 已用 可用 已用% 挂载点 tmpfs 2.0G 0 2.0G 0% /dev/shm.

利用/etc/fstab文件来修改/dev/shm大小: 将tmps后面加上size=100G,然后将/dev/shm卸载后重新挂载.

umount /dev/shm  
mount -all  

如果/dev/shm 卸载不掉

umount /dev/shm  

umount: /dev/shm: device is busy.

用fuser处理

fuser -km /dev/shm  

此时再启动oracle,就没有问题了。

本文链接地址: https://wangheng.org/?p=94958