官网指南,包括数据库、客户端的安装、升级: https://docs.oracle.com/en/database/oracle/oracle-database/12.2/install-and-upgrade.html 首先: 本文并不是傻瓜式的安装教程:你至少需要知道简单的 Linux 知识,包括 cd、vi、yum 等(虽然文中也大多给了使用方法,也需要知道 shell 登录和 sftp 的使用) 本文也不是最简的教程:文中也有些重复的、没必要的配置过程 但是: 本文能够教会你安装的思路和方法,适用于各类版本的数据库 硬件环境准备
服务器硬件要求,至少需要1G内存:
服务器操作系统要求,可选用 Oracle Linux、RedHat 等,这里选用 CentOS 7,基于 RedHat,符合官网的要求:
服务器存储硬盘要求至少7.5G:
其他涉及商业许可、服务器配置(交换空间等,理论上交换空间需要是内存的 1.5 倍)等相关说明这里不做介绍,用于个人学习环境的搭建可以简化关注。
官网也提供了一些检查硬件的语句:
关于用户、组、软件环境的介绍在下方安装过程中。 软件环境准备
连接服务器(我这里用的 xshell):
ssh root@139.***.***.***
假如 Host 不允许导致连接失败,重置:
ssh-keygen -R 139.***.***.***
更新系统(可忽略):
yum update -y
检查、安装依赖包(根据官网文档整理的脚本,但是实际操作的时候会提示另外安装 gcc-c++ 包,并不是所有的系统都需要,提示时安装即可):
yum install -y openssh bc binutils.x86_64 compat-libcap1.x86_64 compat-libstdc++.x86_64 compat-libstdc++.i686 glibc.x86_64 glibc.i686 glibc-devel.x86_64 glibc-devel.i686 ksh libaio.x86_64 libaio.i686 libaio-devel.x86_64 libaio-devel.i686 libgcc.x86_64 libgcc.i686 libstdc++.x86_64 libstdc++.i686 libstdc++-devel.x86_64 libstdc++-devel.i686 libxcb.x86_64 libxcb.i686 libX11.x86_64 libX11.i686 libXau.x86_64 libXau.i686 libXi.x86_64 libXi.i686 libXtst.x86_64 libXtst.i686 libXrender.x86_64 libXrender.i686 libXrender-devel.x86_64 libXrender-devel.i686 make.x86_64 net-tools.x86_64 nfs-utils.x86_64 smartmontools.x86_64 sysstat.x86_64
其中安装 compat-libcap1 的时候可能提示未找到包,手动安装:
yum install -y compat-libcap1*yum install -y compat-libcap1*i686
创建用户组和用户(实际上你大概率只需要 oinstall 和 dba):
groupadd -g 54321 oinstallgroupadd -g 54322 dbagroupadd -g 54327 asmdbagroupadd -g 54324 backupdbagroupadd -g 54325 dgdbagroupadd -g 54326 kmdbagroupadd -g 54330 racdbagroupadd -g 54323 opergroupadd -g 54328 asmoper
useradd -u 54321 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba oracle
修改 oracle 用户密码(二选一):
passwd oracle
echo "123456" | passwd --stdin oracle
修改内核参数,注意 /etc/sysctl.conf 已被弃用:
vi /etc/sysctl.d/97-oracle-database-sysctl.conf
(弹出的编辑框,单击键盘字母键 i 进入输入模式)添加:
fs.aio-max-nr = 1048576fs.file-max = 6815744kernel.shmall = 2097152kernel.shmmax = 4294967295kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576
保存(编辑好之后,单击键盘 Esc 键,输入 :wq 保存退出)。
使修改生效(或者重启生效):
sysctl --system
修改文件限制(实际上我在 12c 的文档中没有找到相关说明,只在 11g 的安装手册中找到了说明,11g 的安装说明就相对简单了一点,可以作为参考:
https://docs.oracle.com/cd/B28359_01/install.111/b32002/pre_install.htm#LADBI245,
既然我没有相关说明我这里便不做修改,不过实际安装的时候确实需要调整文件按参数,与系统有关,往下看):
设置时区(可选):
timedatectl set-timezone Asia/Shanghai
桌面环境准备
Oracle 安装分图形界面安装和静默安装,本文讲的是图形界面安装
安装图形界面和 vnc 远程桌面:
yum -y groupinstall "GNOME Desktop" yum -y groupinstall "X Window System"yum install tigervnc tigervnc-server
可选中文支持:
yum groupinstall “Chinese Support”
你可能还需要停止、停用防火墙(不建议):
systemctl stop firewalld.servicesystemctl disable firewalld.service
(实际上需要重新调整配置才能在远程中调用图形界面安装,截止到正式安装前的这一部分可以不用操作,但是需要了解)启动服务(这里会有设置密码,这个是vnc的密码,不是linux用户的密码):
vncserver
查看开启的远程(每次启动服务都会开启一个端口,端口号为 590*,最后一位便是开启的 vncserver 编号):
vncserver -list
关闭远程服务:
vncserver -kill
本地下载安装vnc远程桌面软件:
https://www.realvnc.com/en/connect/download/viewer/
输入地址和端口号连接:
139.*.*.*:5901
在上述开启vnc服务的时候会有提示远程桌面号,包括“vncserver -list”也能看到,这里的端口与桌面号对应,如:5901、5902
正式安装(并不是,这里也会重新配置一下桌面环境)
上传 Oracle12c 安装包(我这里用的xftp,略):
解压缩,进入目录(如果没有 unzip 包,安装:yum install -y unzip):
unzip linuxx64_12201_database.zip
切换 oracle 用户,进入目录,安装:
sudo - oraclecd /opt/database./runInstaller
在远程桌面安装中可能遇到如下截图的报错(Failed),继续会报错:
实际是因为 vnc 登录的是 root 用户,修改 vnc 配置,参考“/lib/systemd/system/vncserver@.service"中”Quick HowTo“的内容:
(需要先停掉 vnc,vncserver -kill :1,上文有描述)拷贝并修改,修改“%i”为“:1”,“”为“oracle”:
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.servicevi /etc/systemd/system/vncserver@:1.service
重新加载配置:
systemctl daemon-reload
设置开机启动:
systemctl enable vncserver@:1.service
进入 oracle 用户设置密码:
su - oraclevncpasswd
返回 root 用户,启动服务:
exitsystemctl start vncserver@:1.service
重新配置和连接远程服务完成,其他相关脚本:
# 启动服务systemctl start vncserver@:1.service# 停止systemctl stop vncserver@:1.service# 重启systemctl restart vncserver@:1.service ### 查看状态systemctl status vncserver@:1.service
重新打开 vnc 客户端连接,进入目录并开始安装 oracle:
cd /opt/database./runInstaller
正式安装
进入图形界面:
去掉勾选“Oracle 支持”,下一步,yes,下一步:
选择创建配置一个数据库,下一步:
默认桌面版本,下一步:
这里按需求配置即可,可预先配置密码,密码不符合规范没有关系,Yes,下一步:
默认字典位置,下一步:
等待价差先决条件:
如果提示“Hard Limit*”,需要调整大文件限制:
vi /etc/security/limits.conf
在最后添加:
* hard nofile 65536* soft nofile 65536* hard nproc 65536* soft nproc 65536
执行命令使修改生效:
ulimit -a
如果提示“Soft Limit: maximum stack size*”,需要修改堆栈大小限制,同样修改 limits.conf 添加代码并使生效(需要重安装程序,可以使用“ulimit -s 10240”临时处理):
* soft stack 10240
如果
提示“Package”缺失,
yum 安装即可(不可以 Ignore All)
Check Again 重新检测完成,点击安装:
安装中,等待:
提示执行脚本,这里停顿一下:
打开
命令行
,登录 root,执行脚本:
su rootsh /home/oracle/app/oraInventory/orainstRoot.shsh /home/oracle/app/oracle/product/12.2.0/dbhome_1/root.sh
执行完成点击 OK,继续等待安装完成:
安装完成,关闭即可:
添加环境变量:
[oracle@localhost ~]$ vi .bash_profile
在文末添加如下代码:
ORACLE_BASE=/home/oracle/app/oracleORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1ORACLE_SID=orclexport ORACLE_BASE ORACLE_HOME ORACLE_SIDPATH=$ORACLE_HOME/bin:$PATHexport PATH
使配置生效(临时有效,仅对当前用户有效):
source .bash_profile
此时已经可用 sqlplus:
配置监听程序,安装中会自动配置,但不可用,需要重新配置:
netca
下一步,修改已存在的监听:
一路下一步完成即可
启动数据库:
sqlplus / as sysdbastartup
此时的数据库才是正常可用的:
安装
结束之后
不要忘了停用
vnc:
systemctl stop vncserver@:1.service
本文到此结束,讲述
远程 Linux 服务器安装 Oracle 12c (图形界面)的超详细图文教程