Bootstrap

Linux系统安装Oracle 12c数据库

一、准备工作

系统:CentOS 6.5
数据库:Oracle 12.2.0.1

检查包括:

系统磁盘要充足,最好提前规划好,尽量不要将Oracle安装到根目录 ”/“ 下,避免因为系统日志或者Oracle相关日志导致根目录磁盘容量占满导致出现问题。将数据库安装到足够容量的磁盘下。

内存检查,生产环境如果和其他服务放在一台服务器上,要确保内存分配合理,防止内存占满后Oracle数据库临时进程启动出现错误导致数据库崩溃。

swap交换分区,12C数据库要求交换分区为16G.如果系统没有swap交换分区或者交换分区大小不足,可以进行重新配置,参考:

二、安装前的系统配置

Oracle 12c单实例安装的准备与Oracle 11g的差别不大,11g安装参考:https://blog.csdn.net/qq_32838955/article/details/104904241https://blog.csdn.net/qq_32838955/article/details/104898405

1.配置系统参数配置

(1)

[root@local ~]# vim  /etc/sysctl.conf            //将下面的内容复制到文件的末尾

kernel.shmmax = 536870912
kernel.shmall = 2097152 
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 1048576
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576

(2)执行命令使修改的参数生效:

[root@local ~]# sysctl -p 

###############################################
如在Redhat 7上配置此配置文件则需如下操作:

1.编辑属于oracle的配置文件:

[root@local ~]# vim /etc/sysctl.d/97-oracle-database-sysctl.conf
#添加如下
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
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 = 1048576

2.是配置文件生效:

[root@local ~]# /sbin/sysctl --system

3.确认修改查看:

[root@local ~]# /sbin/sysctl -a

###############################################

(3)配置关于文件限制的参数:

[root@local ~]# 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 10240

(4)配置IP地址与主机名映射

[root@local ~]#  vi /etc/hosts

 172.16.50.14  local

(5) 安装所Oracle数据库需要的包,执行下面命令。

[root@local ~]# yum -y install autoconf automake binutils-devel bison cpp dos2unix ftp gcc gcc-c++ lrzsz python-deve compat-db compat-db42 compat-db43 compat-gcc-34 compat-gcc-34-c++ compat-libstdc++-33 glibc-* glibc-*.i686 libXpm-*.i686 libXp.so.6 libXt.so.6 libXtst.so.6 libgcc_s.so.1 ksh libXp libaio-devel numactl numactl-devel unixODBC unixODBC-devel compat-libcap* elfutils-libelf*

(6)创建Oracle数据库用户和用户组:(建议指定GID和UID方式(尤其集群环境))

[root@local ~]# groupadd -g 54321 oinstall
[root@local ~]# groupadd -g 54322 dba
[root@local ~]# useradd -u 54321 -g oinstall -G dba oracle
[root@local ~]# passwd oracle(给Oracle系统用户创建密码)

(7)建立oracle软件安装文件目录(假设安装目录放在新磁盘下/data):

[root@local ~]# mkdir -p /data/app/oracle              
[root@local ~]# chown -R oracle:oinstall /data

注意:在操作 chwon命令时,如果系统已有 /data ,并且目录下已经运行或部署了其他服务或者安装了mysql等其他类型数据库,不要直接执行 chown -R ,它会把/data下所有目录的属主和属组全部修改,如果有其他服务或者其他类型数据库,就会导致目录权限出现还严重问题。

所以只要不是新创建目录建议按照目录逐个修改属主和属组:

[root@local ~]# chown oracle:oinstall /data
[root@local ~]# cd /data
[root@local ~]# chown oracle:oinstall /app
[root@local ~]# cd app
[root@local ~]# chown oracle:oinstall /oracle

(8)设置Oracle数据库系统环境变量

[root@local ~]# su - oracle
[root@local ~]# vim .bash_profile        //修改oracle用户家目录下的文件

export ORACLE_BASE=/data/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.2.1.0
export ORACLE_SID=ORCL
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

(9)将数据库安装包上传到服务器上,为便于安装上传至/home/oracle目录下,并进行解压,解压时按照安装包名称上的序号顺序逐个解压,两个包解压完后会生成一个database文件夹,就是Oracle数据库的安装包:

[oracle@lcoal]# ls
linuxx64_12201_database.zip
[oracle@lcoal]# unzip linuxx64_12201_database.zip
[oracle@lcoal]# ls
database	linuxx64_12201_database.zip
三、Oracle数据库的安装

Oracle数据库安装一般会使用自带UI进行图形化安装,避免静默安装时的配置错误,本次也是图形化安装。

图形化安装Oracle有两种方式:
一是使用VNC远程到Linux系统安装,要求Linux安装了桌面环境并且以桌面环境启动。VNC配置参考:https://blog.csdn.net/qq_32838955/article/details/104254488
二是不需要Linux桌面环境启动,需要安装必要的依赖包组支持图形化,使用Xmanger链接后在本地进行图形化调用安装,Xmanager配置方式参考:https://blog.csdn.net/qq_32838955/article/details/104254691

本次采用第二种方式进行数据库安装:
(图形化调用不做详细介绍,直接从安装界面开始)

1.安装Oracle数据库软件:

在Windows上启动Xstart,配置链接Oracle用户:
在这里插入图片描述
切换到Oracle用户,然后cd到解压后的database目录下,启动安装:
在这里插入图片描述
以上是使用Xmanager工具远程调用图形界面安装oracle。

如果你的服务器安装了桌面,可以通过vnc工具远程连接到服务器上进行本地调用图形化,方法如下:

1.Cnetos 6版本服务器:

root用户执行xhost +

[root@local ~]# xhost +

切换到oracle用户:

[root@local ~]# su - oracle
[oracle@local ~]# cd database
[oracle@local ~]# ./runInstaller

2.Centos 7版本服务器:

root用户执行xhost +

[root@local ~]# xhost +

切换到oracle用户:

[root@local ~]# su - oracle
[oracle@local ~]# export DISPLAY=localhost:0.0
[oracle@local ~]# cd database
[oracle@local ~]# ./runInstaller

本次使用xmanager来进行安装。执行./runInstaller后跳出安装界面开始安装,第一步取消勾选,然后点击下一步(此处是是否接受oracle的更新,如果需要更新,就要填写你的oracle 支持账号,本次选择不更新):
在这里插入图片描述
在这里插入图片描述
此次安装是详细分布安装,所以不推荐安装软件同时创建数据库实例,单独安装软件,后面再进行数据库实例创建。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2、数据库实例创建

以上将Oracle 12c软件安装完成,关于监听的配置可以像安装Oracle 11g一样提前进行监听配置,12从也可以在创建实例时同时安装配置监听,个人建议在安装数据库实例前先配置好监听

本次数据库实例与监听同时安装的方式进行:

[oracle@local ~]# dbca
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这一步根据需要是否开启归档(本次不开启归档和闪回功能):
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

至此,Oracle数据库安装全部完成!

四、后记

oracle 12c 数据库软件和实例全部创建完成后,在oracle 12c之前版本,varchar2和nvarchar2数据类型的字段长度最大值是4000,在12c版本已扩展最大值支持到32767,也就是32kb。如果生产库需要使用此特性,建议在初期数据库实例创建后进行升级,后期大量数据入库后进行升级容易出现升级失败情况,仅作为个人推荐。

;