Ø 简介
本文记录在 CentOS 7 中安装 Oracle 12c 的详细步骤,以及注意事项。
安装环境如下:
Linux 内核版本:CentOS Linux release 7.6.1810 (Core)
Oracle 12c 版本:12.2.0.1.0(Enterprise Edition)
n 准备工作
首先在官网下载 Oracle 12c 软件包,下载地址:Oracle Database 12c Release 2,选择 Linux x86-64
n 友情提示:在 Linux 中安装 Oracle 不比在 Window 中安装那样简单,每个环节必须小心谨慎,一个不小心可能会导致整体安装失败。
1. 系统配置
1) 配置 hosts
echo "192.168.1.150 abeam150" >> /etc/hosts
2) 关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
3) 安装 oracle 所需软件包
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33*.devel compat-libstdc++-33 compat-libstdc++-33*.devel gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686
检查是否安装成功(31个安装包)
rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
4) 配置内核参数
# 文件末尾添加如下配置:
fs.aio-max-nr = 1048576 #异步IO请求数目推荐值是:1048576 其实它等于1024*1024 也就是1024k
fs.file-max = 6815744 #打开的文件句柄的最大数量,防止文件描述耗尽问题
kernel.shmall = 2097152 #该参数表示系统任意时刻可以分配的所有共享内存段的总和的最大值(以页为单位).其值应不小于shmmax/page_size(getconf PAGESIZE可以查询到).缺省值就是2097152
#64 位 linux 系统:可取的最大值为物理内存值 -1byte ,建议值为多于物理内存的一半,一般取值大于 SGA_MAX_SIZE 即可,可以取物理内存 -1byte.例:内存为 16G 时,该值为 16*1024*1024*1024-1 = 17179869183,4G=4294967295,8G=8589934591
kernel.shmmni = 4096 #缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G
kernel.sem = 250 32000 100 128 #SEMMSL: 每个信号集的最大信号数量 SEMMNS:用于控制整个 Linux 系统中信号的最大数 SEMOPM: 内核参数用于控制每个 semop 系统调用可以执行的信号操作的数量 SEMMNI :内核参数用于控制整个 Linux 系统中信号集的最大数量
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 #套接字发送缓冲区大小的最大值
# 更改好后使之生效
sysctl -p
5) 配置 oracle 资源限制
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 #堆栈设置
oracle hard stack 32768
6) 使用 pam_limits 安全认证模块
vi /etc/pam.d/login
# 文件末尾添加如下内容:
session required /lib64/security/pam_limits.so
session required pam_limits.so
7) 配置 oracle 登录环境变量
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
8) 创建用户组、用户、目录、权限
groupadd dba
useradd -g dba oracle
echo "oracle" | passwd --stdin oracle
mkdir -p /opt/oracle/app/oracle
chown -R oracle:dba /opt/oracle
chmod -R 775 /opt/oracle
9) 配置 oracle 用户环境变量
su - oracle
vi ~/.bash_profile
# 将 export PATH 删除掉
umask 022
export ORACLE_BASE=/opt/oracle/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1
export ORACLE_UNQNAME=devzxsm
export ORACLE_SID=devzxsm
export LANG=zh_CN.UTF-8
export NLS_LANG="AMERICAN_AMERICA".ZHS16GBK
export PATH=$PATH:$ORACLE_HOME/bin
source ~/.bash_profile
env | grep ORACLE
注意:以上配置完成后,reboot 重启系统。
2. 安装 Oracle 数据库
使用 oracle 用户以 x window 模式登录系统。
1) 将数据库安装文件上传至 /opt/oracle/ 目录下
env | grep ORACLE #检查环境变量
source ~/.bash_profile #注意:这里需要在次执行(如果是 Xstart 登录)
cd /opt/oracle
unzip linuxx64_12201_database.zip
cd database
./runInstaller #启动安装程序
如果使用的阿里云 ESC 云服务器,默认 CentOS 7.6 是没有分配 swap 分区的,Oracle 会给出提示:
free -m
此时,需要手动分配 swap 空间:
su - root
mkdir /var/swap
chmod 700 /var/swap
# 创建指定大小的文件(用于挂载 swap 的文件)
dd if=/dev/zero of=/var/swap/2GB01.swap bs=1024k count=2048
chmod 600 /var/swap/2GB01.swap
mkswap /var/swap/2GB01.swap
vi /etc/fstab #设置自动挂载,加入以下参数
/var/swap/2GB01.swap swap swap defaults 0 0
reboot #重启后生效
free -m
再回到第1步,正常情况下会显示以下信息:
2) 进入图形界面安装(共12个步骤)
说明:在下面的步骤中,采用默认的或不重要的步骤,就略过了。
3) 第3步(选择服务器类)
4) 第5步(选择高级安装)
5) 第6步(选择企业版)
6) 第7步(之前配置的环境变量,默认即可)
7) 第8步(之前配置的环境变量,默认即可)
8) 第9步(默认即可)
9) 第10步(创建为非容器数据库)
如果创建为容器数据库:这里将数据库名改为:zxsm,可插入数据库名:zxsmpdb
10) 第11步
内存使用默认
字符集选择“ZHS16GBK – GBK 16 简体中文”
如果需要可以添加“示例方案”
11) 第15步(设置统一的密码)
12) 第14步(选择dba组)
13) 之前交换空间设置有点小,不过这里可以先忽略
14) 第18步(检查没有问题就可以安装了)
15) 安装过程中会弹出提示
以 root 用户执行以下脚本,给出的提示回车即可:
/opt/oracle/app/oraInventory/orainstRoot.sh
/opt/oracle/app/oracle/product/12.2.0/dbhome_1/root.sh
16) 如果提示失败
可能是 hosts 没有设置正确,否则只能退出重新安装了!
17) 安装成功
删除安装文件
rm -f /opt/oracle/linuxx64_12201_database.zip
rm -rf /opt/oracle/database
18) 访问 https://192.168.1.150:5500/em
更多参考:http://www.mamicode.com/info-detail-2369544.html