如何在 CentOS 7 上安装 Oracle Database 12c

Oracle Database 12c 是业界最著名的关系数据库管理系统 (RDBMS) 的最新稳定版本。

Oracle Database 12c 是一个多模型数据库,可以以各种模型组织数据。
但它通常用于在线事务处理 (OLTP) 和在线分析处理 (OLAP) 模型。

在本文中,我们将在 CentOS 7 服务器上安装 Oracle Database 12c。
我们按照 Oracle 数据库文档按照最佳实践配置 Oracle Database 12c:

https://docs.oracle.com/en/database/oracle/oracle-database/index.html

on it road .com

在 CentOS 7 上安装 Oracle Database 12c:

开始安装 Oracle Database 12c。

[oracle@dbserver ~]$ cd /soft/12c/database
[oracle@dbserver database]$ chmod u+x runInstaller
[oracle@dbserver database]$ chmod u+x install/.oui
[oracle@dbserver database]$ ./runInstaller

根据安装提示进行操作:

  • 取消选中 “我希望通过 My Oracle Support 接收安全更新”。
  • 选择仅安装数据库软件。
  • 选择单实例数据库安装。
  • 添加我们需要的语言。
  • 选择企业版。
  • 安装程序根据 ORACLE_BASE 和 ORACLE_HOME 环境变量自动选择安装目录。

在 CentOS 7 服务器上以 root 用户身份登录并执行提示的两个脚本。

现在,我们已完成在 CentOS 7 上安装 Oracle Database 12c。

Oracle Database 12c 安装后配置

手动配置有一个很好的替代方法,例如:oracle-rdbms-server-12cR1-preinstall.x86_64.rpm 包。
但不幸的是,它需要仅随 OEL (Oracle Enterprise Linux) 6 或者更高版本一起提供的 UEK(牢不可破的企业内核)。

因此,如果我们计划在 OEL 6 或者更高版本上安装,则可以下载并安装它以节省时间,否则我们必须手动配置准备工作。

由于我们是在 CentOS 7 上安装 Oracle Database 12c,因此为了演示,我们将手动执行所有操作。

执行以下命令将这些内核参数添加到 /etc/sysctl.conf 文件中。

[root@dbserver ~]# cat >> /etc/sysctl.conf << EOF
>fs.file-max = 6815744
>kernel.sem = 250 32000 100 128
>kernel.shmmni = 4096
>kernel.shmall = 1073741824
>kernel.shmmax = 4398046511104
>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
>EOF
[root@dbserver ~]# sysctl -p

设置主机名并在 Local DNS Resolver 中添加一个条目。

[root@dbserver ~]# hostnamectl set-hostname dbserver.test.local
[root@dbserver ~]# echo "192.168.229.50 dbserver.test.local dbserver" >> /etc/hosts

为 oracle 用户设置安全限制。

[root@dbserver ~]# cat >> /etc/security/limits.conf << EOF
>oracle soft nofile 1024
>oracle hard nofile 65536
>oracle soft nproc 2047
>oracle hard nproc 16384
>oracle soft stack 10240
>oracle hard stack 32768
>EOF

使用 yum 命令安装必备软件包。

[root@dbserver ~]# yum install binutils -y
[root@dbserver ~]# yum install compat-libstdc++-33 -y
[root@dbserver ~]# yum install compat-libstdc++-33.i686 -y
[root@dbserver ~]# yum install gcc -y
[root@dbserver ~]# yum install gcc-c++ -y
[root@dbserver ~]# yum install glibc -y
[root@dbserver ~]# yum install glibc.i686 -y
[root@dbserver ~]# yum install glibc-devel -y
[root@dbserver ~]# yum install glibc-devel.i686 -y
[root@dbserver ~]# yum install ksh -y
[root@dbserver ~]# yum install libgcc -y
[root@dbserver ~]# yum install libgcc.i686 -y
[root@dbserver ~]# yum install libstdc++ -y
[root@dbserver ~]# yum install libstdc++.i686 -y
[root@dbserver ~]# yum install libstdc++-devel -y
[root@dbserver ~]# yum install libstdc++-devel.i686 -y
[root@dbserver ~]# yum install libaio -y
[root@dbserver ~]# yum install libaio.i686 -y
[root@dbserver ~]# yum install libaio-devel -y
[root@dbserver ~]# yum install libaio-devel.i686 -y
[root@dbserver ~]# yum install libXext -y
[root@dbserver ~]# yum install libXext.i686 -y
[root@dbserver ~]# yum install libXtst -y
[root@dbserver ~]# yum install libXtst.i686 -y
[root@dbserver ~]# yum install libX11 -y
[root@dbserver ~]# yum install libX11.i686 -y
[root@dbserver ~]# yum install libXau -y
[root@dbserver ~]# yum install libXau.i686 -y
[root@dbserver ~]# yum install libxcb -y
[root@dbserver ~]# yum install libxcb.i686 -y
[root@dbserver ~]# yum install libXi -y
[root@dbserver ~]# yum install libXi.i686 -y
[root@dbserver ~]# yum install make -y
[root@dbserver ~]# yum install sysstat -y
[root@dbserver ~]# yum install unixODBC -y
[root@dbserver ~]# yum install unixODBC-devel -y
[root@dbserver ~]# yum install zlib-devel -y
[root@dbserver ~]# yum install zlib-devel.i686 -y

创建所需的操作系统用户和组。

[root@dbserver ~]# groupadd -g 1101 oinstall
[root@dbserver ~]# groupadd -g 1102 dba
[root@dbserver ~]# groupadd -g 1103 oper
[root@dbserver ~]# groupadd -g 1104 backupdba
[root@dbserver ~]# groupadd -g 1105 dgdba
[root@dbserver ~]# groupadd -g 1106 kmdba
[root@dbserver ~]# groupadd -g 1107 asmdba
[root@dbserver ~]# groupadd -g 1108 asmoper
[root@dbserver ~]# groupadd -g 1109 asmadmin
[root@dbserver ~]# useradd -u 1101 -g oinstall -G dba,oper oracle
[root@dbserver ~]# echo "oracle" | passwd oracle -stdin

Oracle Database 12c 当前与 SELinux 不兼容。
因此,我们或者需要禁用 SELinux,或者将其置于许可模式。

[root@dbserver ~]# sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/sysconfig/selinux
[root@dbserver ~]# setenforce permissive

配置 Linux 防火墙以允许 Oracle SQL* Net Listener 在其默认端口上接受服务请求。

[root@dbserver ~]# firewall-cmd --permanent --add-port=1521/tcp
[root@dbserver ~]# firewall-cmd --reload

为 Oracle RDBMS 软件创建目录。

[root@dbserver ~]# mkdir -p /u01/app/oracle/product/12.1.0.2/db_1
[root@dbserver ~]# chown -R oracle:oinstall /u01
[root@dbserver ~]# chmod -R 775 /u01

要将 X-Server 显示重定向到客户端计算机,请执行以下命令(确保我们有一个 X-Server 实用程序,例如 XMing,在客户端上运行以捕获 X-Server 显示。

还要在Putty中设置显示变量)

为 oracle 用户设置 Linux 环境变量如下。

[root@dbserver ~]# xhost +
[root@dbserver ~]# su - oracle
[oracle@dbserver ~]$ cat >> vi ~/.bash_history << EOF
># Oracle Settings
>export TMP=/tmp
>export TMPDIR=$TMP
>export DISPLAY=192.168.229.1:0.0 # Set your Client IP here
>export ORACLE_HOSTNAME=dbserver.test.local
>export ORACLE_UNQNAME=cdb1
>export ORACLE_BASE=/u01/app/oracle
>export ORACLE_HOME=$ORACLE_BASE/product/12.1.0.2/db_1
>export ORACLE_SID=cdb1
>export PATH=/usr/sbin:$ORACLE_HOME/bin:$PATH
>export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
>export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
>EOF
日期:2020-09-17 00:11:34 来源:oir作者:oir