在CentOS停服后,我在国产系统TencentOS上成功安装了Oracle 11g!

我们前面介绍了如何在Ubuntu系统安装MySQL数据库(Ubuntu安装、配置、操作、测评MySQL数据库全体验),也介绍了如何在UOS系统安装MySQL数据库(UOS无法安装MySQL?不存在的,手动部署2分钟解决战斗)。但是有粉丝问我怎么安装Oracle数据库,好吧,那我们今天就演示一下。
首先,我到Oracle官网看了一下,官方支持部署在Linux系统和Windows系统,但Linux系统主要支持CentOS系统。但是CentOS已经停服了(CentOS 7停服之后该怎么安装软件呢?),与CentOS同源的TencentOS Server 2应该也是可以兼容的(与CentOS用户态完全兼容的TencentOS你用过没?),那我们就用TencentOS尝试一下,系统版本为TencentOS Server 2.4,内核版本为5.4.119-19.0009.59。

Oracle的版本我们选择比较古老的Oracle Database 11g Express Edition (XE),这也是粉丝指定的版本。
开始操作之前,官方建议我们使用root权限进行操作,并检查系统中是否已安装依赖软件是。
yum install -y libaio-devel bc man net-tools unzip

yum install -y glibc make binutils gcc libgcc libstdc++ libstdc++-devel glibc-devel

按照官方要求,我们还需要修改/etc/sysctl.conf文件中的系统内核参数。
vi /etc/sysctl.conf
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.shmmax = 4294967295
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

正常来讲,如果是新系统,/etc/sysctl.conf文件中应该不存在参数配置,我们直接在文件末尾添加参数即可;如果已存在相关参数,请修改并确保参数值不小于上述要求。
然后,使用sysctl -p命令使配置生效。

接下来,我们继续编辑Linux安全限制配置文件/etc/security/limits.conf,来配置用户限制。将相关参数直接添加到文件末尾即可。
vi /etc/security/limits.conf
oracle hard nofile 65536
oracle soft nofile 65536
oracle hard nproc 16384
oracle soft nproc 16384

此外,Oracle建议我们使用专门的用户和组来安装数据库软件。

我们创建一个主要组oinstall,是Oracle软件的所有者组,主要用于管理Oracle软件的安装目录和中央清单,控制软件安装、升级和补丁应用等操作;创建一个附件组dba,是数据库管理员组,其成员拥有极高的数据库管理权限;再创建一个用户oracle,使用-g参数指定用户的主要组为oinstall,使用-G参数指定用户的附加组为dba。这样,用户oracle创建的文件的默认所属组就是oinstall,同时用户oracle拥有数据库管理员的权限。同时,为oracle用户设置一个密码,应该是TencentOS对密码要求比较严格,我们设置一个满足要求的Tietou.11g。
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle

接下来,我们再创建一个操作目录,并从Oracle官网下载RPM包,默认为zip文件oracle-xe-11.2.0-1.0.x86_64.rpm.zip,需要解压使用。
unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip

解压后的文件在Disk1文件夹中,安装文件为oracle-xe-11.2.0-1.0.x86_64.rpm,我们切换到该目录下进行安装就可以了。
cd Disk1/
rpm -ivh oracle-xe-11.2.0-1.0.x86_64.rpm

按照提示,我们还需要以root用户运行/etc/init.d/oracle-xe configure命令来初始化数据库配置。

可以看到,脚本询问的配置问题也是配置的关键,除了用户密码外都有默认配置。其中:HTTP端口用于Oracle Application Express的Web管理界面,默认为8080,也可以配置为其他端口,但需要确保此端口未被占用;数据库监听端口用于数据库连接,默认为1521,也可以配置为其他端口,但需要确保此端口未被占用;SYS和SYSTEM用户密码,为数据库超级管理员设置密码;是否随系统启动,通常选择y,用于在系统启动时自动启动数据库实例。
这样,稍等几分钟,Oracle数据库就安装好了。
在指导中,官方还建议我们手工创建安装路径,命令如下:
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01
chmod -R 775 /u01
但我没找到相关的上下文,就没有手工操作。等Oracle数据库安装完成之后,我检查了一下,发现这个路径也被创建出来了。

但好像目录的归属有问题,因为/u01/app/oracle/product/是Oracle软件安装的家目录,对应环境变量$ORACLE_HOME。根据Oracle的安装要求,这个目录及其所有内容必须由Oracle软件所有者oracle用户和其主组oinstall拥有。看来这一步还是不能省,建议安装的时候前置创建目录的操作,来保证正确的目录权限设置。
我这里只能补救一下了。

接下来,我们切换到oracle用户,在~/.bash_profile文件的末尾添加运行脚本,为其设置环境变量。

su – oracle
vi ~/.bash_profile
source /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh
source ~/.bash_profile

现在,我们就可以使用sqlplus等工具了。首先测试能否连接:
sqlplus system/Tietou.11g

可以,登录成功,能够执行命令,说明安装成功了。
不过,Oracle数据库好像用起来有点慢,不像MySQL那样响应特别迅速。当然,官方文档也有介绍,当Oracle Database XE安装到多核机器上时,系统被允许最多使用1核CPU核心的计算能力、最大使用1 GB内存,用户数据最大允许11 GB。可能性能比较差跟这个也有关系的,不然运行十几年前的版本不应该这么慢。
管理数据库的话,官方文档写的还是用执行文件的方式,但基本上还是会调用systemctl工具。比如数据库的启停、查看状态等等。
/etc/init.d/oracle-xe start
/etc/init.d/oracle-xe stop
/etc/init.d/oracle-xe status

也可以直接用systemctl工具进行管理。

最后,我们在浏览器中访问Oracle Application Express的Web管理界面:

首次登录还要修改默认密码。

登录成功之后,在语言选择器中将界面语言修改为【中文(简体)】,安装就算结束了。

查看一下系统资源利用率。

这个内存看着就跟没用一样,但就是性能低了一些。怎么样,你会使用Oracle数据库吗?欢迎评论区交流。

声明:来自铁军哥,仅代表创作者观点。链接:https://eyangzhen.com/3154.html

铁军哥的头像铁军哥

相关推荐

关注我们
关注我们
购买服务
购买服务
返回顶部