2026云祺全国渠道会-乌鲁木齐站 5月08日 星期五 16:40 云祺视频号准时直播
云祺直播二维码
扫码预约直播,观看精彩内容! 扫码预约直播,观看精彩内容!
关闭按钮
云祺Logo 云祺Logo

在Ubuntu上安装Oracle数据库的方法

2026-04-30

Ubuntu 是基于 Debian 的 Linux 发行版,适用于云计算、服务器、桌面系统和物联网设备。Linux 与 Ubuntu 的主要区别在于:前者是一种类 Unix 操作系统,而后者是 Linux 的一种发行版。

Oracle 数据库以出色的可移植性、用户友好的界面和强大的功能而著称,适用于各种计算机环境。它提供了一种高效且可靠的数据库解决方案,能够满足高吞吐量需求。

在 Ubuntu 上安装 Oracle 数据库已得到广泛应用,并持续更新。本文介绍了在 Ubuntu 上安装与配置 Oracle 的方法,以帮助您完成 Ubuntu Oracle 系统的安装与升级。Ubuntu 是一款基于 Linux 的开源操作系统,免费提供,并拥有社区及专业支持。本博客详细记录了在 Ubuntu 上安装 Oracle 11 的全过程。

环境

Ubuntu:Ubuntu 14.04 LTS(64 位)

Oracle:Oracle 11

JDK:JDK 1.7

内存:1GB

硬盘:20GB

CPU:1 台

如何在 Ubuntu 上安装 Oracle 数据库?

1. 下载 Oracle 11

从官方网站下载 Oracle 11。下载链接如下:

http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

将下载的文件保存到 "/home" 目录中。将会有两个压缩文件。请使用以下命令解压它们:

sudo tar -zxvf linux.x64_11gR2_database_1of2.zipsudo tar -zxvf linux.x64_11gR2_database_2of2.zip

提取完成后,将在主目录中创建一个“database”文件夹。该文件夹即为 Oracle 的安装目录。

2. 安装 JDK 1.7

您可以根据需要安装 JDK 1.7。

或者,您可以使用 Ubuntu Linux 提供的默认 OpenJDK:

sudo apt-get install openjdk-7-jresudo apt-get install openjdk-7-jdk

3. 安装远程可视化桌面

由于 Oracle 的安装需通过安装向导进行,因此必须为此过程安装远程可视化桌面。

4. 更新源文件

Ubuntu 的官方源并不全面,尤其是在安装 ia32-libs 软件包时。因此,您需要更新源文件。首先备份源文件,然后将以下源添加到源列表中(删除所有现有源,并粘贴以下源):

sudo cp /etc/apt/sources.list /etc/apt/sources.list_back

5. 安装依赖项

替换源文件后,请执行以下命令进行更新:

sudo apt-get updatesudo apt-get upgrade

然后,安装以下依赖项。确保每个软件包都成功安装至关重要,因为任何失败都可能导致 Oracle 安装不成功。

sudo apt-get install bzip2sudo apt-get install elfutilssudo apt-get install automakesudo apt-get install autotools-devsudo apt-get install binutilssudo apt-get install expatsudo apt-get install gawksudo apt-get install gccsudo apt-get install gcc-multilibsudo apt-get install g++-multilibsudo apt-get install ia32-libssudo apt-get install kshsudo apt-get install lesssudo apt-get install lesstif2sudo apt-get install lesstif2-devsudo apt-get install lib32z1sudo apt-get install libaio1sudo apt-get install libaio-devsudo apt-get install libc6-devsudo apt-get install libc6-dev-i386sudo apt-get install libc6-i386sudo apt-get install libelf-devsudo apt-get install libltdl-devsudo apt-get install libmotif4sudo apt-get install libodbcinstq4-1 libodbcinstq4-1:i386sudo apt-get install libpth-devsudo apt-get install libpthread-stubs0sudo apt-get install libpthread-stubs0-devsudo apt-get install libstdc++5sudo apt-get install lsb-cxxsudo apt-get install makesudo apt-get install openssh-serversudo apt-get install pdkshsudo apt-get install rlwrapsudo apt-get install rpmsudo apt-get install sysstatsudo apt-get install unixodbcsudo apt-get install unixodbc-devsudo apt-get install unzipsudo apt-get install x11-utilssudo apt-get install zlibc

6. 检查系统变量

sudo /sbin/sysctl -a | grep semsudo /sbin/sysctl -a | grep shmsudo /sbin/sysctl -a | grep file-maxsudo /sbin/sysctl -a | grep aio-maxsudo /sbin/sysctl -a | grep ip_local_port_rangesudo /sbin/sysctl -a | grep rmem_defaultsudo /sbin/sysctl -a | grep rmem_maxsudo /sbin/sysctl -a | grep wmem_defaultsudo /sbin/sysctl -a | grep wmem_max

执行上述命令获取参数值后,在 /etc/sysctl.conf 文件中添加对应的数据。可同时打开两个终端窗口,以便于输入操作。

sudo vim /etc/sysctl.conf

请在 sysctl.conf 文件中填入以下内容,并使用已获取的值:

fs.aio-max-nr = ?fs.file-max = ?kernel.shmall = ?kernel.shmmax = ?kernel.shmmni = ?kernel.sem = ?net.ipv4.ip_local_port_range = ?net.core.rmem_default = ?net.core.rmem_max = ?net.core.wmem_default = ?net.core.wmem_max = ?

执行命令以更新内核参数:

sudo sysctl -p

7. 将以下数据添加到 /etc/security/limits.conf 文件中,以设置当前用户的内核限制(XXX 表示您的当前用户名):

XXX  soft nproc 2047XXX  hard nproc 16384XXX  soft nofile 1024XXX  hard nofile 65536XXX  soft stack 10240

8. 检查 /etc/pam.d/login 文件,并添加以下行(如果尚未存在):

session required pam_limits.so

检查 /etc/pam.d/su 文件,如尚未存在,则添加以下行:

session required pam_limits.so

9. 默认情况下,Oracle 不支持 Ubuntu。为欺骗 Oracle 安装程序,请执行以下命令:

sudo mkdir /usr/lib64sudo ln -s /etc /etc/rc.dsudo ln -s /lib/x86_64-linux-gnu/libgcc_s.so.1 /lib64/sudo ln -s /usr/bin/awk /bin/awksudo ln -s /usr/bin/basename /bin/basenamesudo ln -s /usr/bin/rpm /bin/rpmsudo ln -s /usr/lib/x86_64-linux-gnu/libc_nonshared.a /usr/lib64/sudo ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a /usr/lib64/sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /lib64/sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib64/echo ‘Ubuntu Linux release 14.04′ > /etc/ubuntu-release

如果无法执行最后一条命令,可改用以下命令:

sudo vim /etc/ubuntu-release

在 ubuntu-release 文件中添加“Ubuntu Linux 发行版 14.04”,然后保存并退出。

10. 配置 Oracle 的环境变量

sudo gedit ~/.profile

将以下行添加到该文件中(将 xxx 替换为您的当前用户名):

export ORACLE_BASE=/home/xxx/app/xxxexport ORACLE_HOME=${ORACLE_BASE}/product/11.2.0/dbhome_1export ORACLE_SID=orclexport ORACLE_UNQNAME=orclexport PATH=PATH:${ORACLE_HOME}/bin/;

11. 启动 Oracle 安装程序以开始安装。

首先,请确认 Oracle 环境变量是否已按您指定的方式设置:

echo $ORACLE_BASEecho $ORACLE_HOMEecho $PATH

如果未正确设置,请打开一个新的终端,这样应该就可以正常工作。或者,执行以下命令:

source ~/.profile

此命令用于使您的环境变量生效。

接下来,执行以下命令以开启远程桌面服务

vncserver :1

请记住,此命令前不要添加“sudo”。否则,将为 root 用户而非您要为其安装的用户开启远程桌面。

现在,您可以使用 Windows 上的 VNC-Viewer 软件进行连接:

注意:该号码必须与您打开的端口号一致。

远程桌面打开后,在桌面上启动终端。如果安装程序已解压到主目录:/home/database,请使用以下命令:

cd /home/database

为避免出现乱码,请先通过导出方式将终端语言设置为美国英语。

然后在该目录中运行 runInstaller:./runInstaller

您将进入图形化安装界面,然后按照安装向导的提示操作。

先决条件检查将显示失败项列表。选择“全部忽略”,然后点击“完成”。

请注意,如果您的交换空间不足,系统将提示交换空间不足,安装将无法继续。

要解决此问题,请打开另一个终端,然后使用以下命令临时增加交换空间,再重新检查:

free -mmkdir /swapfilecd /swapfilesudo dd if=/dev/zero of=swap bs=1024 count=400000sudo mkswap -f swapsudo swapon swap

12. 安装进度达 68% 时出错

出现一条与 ins_ctx.mk 相关的错误消息。请直接继续安装,跳过该错误。

之后,报告了另一个错误:

生成文件 “/.../emagent.mk” 时出错。

解决方案:

打开一个新终端并输入以下命令:

sudo sed -i 's/^(s*$(MK_EMAGENT_NMECTL))s*$/1 -lnnz11/g' $ORACLE_HOME/sysman/lib/ins_emagent.mk

在安装界面点击“重试”,安装将继续进行。

类似的错误提示可能还会出现四次。请以相同方式执行以下命令行:

sudo sed -i 's/^($LD $LD_RUNTIME) ($LD_OPT)/1 -Wl,--no-as-needed 2/g' $ORACLE_HOME/bin/genorasdkshsudo sed -i 's/^(s*)($(OCRLIBS_DEFAULT))/1 -Wl,--no-as-needed 2/g' $ORACLE_HOME/srvm/lib/ins_srvm.mksudo sed -i 's/^(TNSLSNR_LINKLINE.*$(TNSLSNR_OFILES)) ($(LINKTTLIBS))/1 -Wl,--no-as-needed 2/g' $ORACLE_HOME/network/lib/env_network.mksudo sed -i 's/^(ORACLE_LINKLINE.*$(ORACLE_LINKER)) ($(PL_FLAGS))/1 -Wl,--no-as-needed 2/g' $ORACLE_HOME/rdbms/lib/env_rdbms.mk

13. 安装完成后,系统将提示您运行两个 sh 文件

请另开一个终端:

sudo /home/xxx/app/xxx/oracle/oraInventory/orainstRoot.shsudo /home/xxx/app/xxx/oracle/Oracle11gee/product/11.2.0/dbhome_1/root.sh

安装完成!

测试

1. 运行 sqlplus

运行 sqlplus 之前,请先测试 Oracle 环境变量:

echo $ORACLE_BASEecho $ORACLE_HOMEecho $PATH

如果显示的值与您的配置一致,您可以继续执行以下步骤。

2. 检查数据库监听器状态

使用命令检查监听器是否正在运行。正常情况下,应显示大量监听器相关信息。

如果此处没有输出,说明没有监听器,您需要自行配置:

lsnrctl status

无监听器问题的解决方案:

您可以通过运行 netca 并访问设置监听器的图形界面来创建监听器。

如果您尚未创建数据库,此时可以使用 dbca 创建一个。

您可以运行以下代码来修复 dbconsole:

emca -repos dropemca -repos createemca -config dbcontrol dbemca start dbconsole

此时,数据库应该已启动并正常运行。

如果没有监听器,请执行以下命令来启动它:

lsnrctl start

3. 启动 Oracle 数据库

输入以下命令启动 sqlplus:

sqlplus / as sysdba

启动和停止 Oracle 的命令如下:

SQL> startupSQL> shutdown

启动期间,您将看到一条消息,提示您的“orcl”实例已成功加载。

Vinchin 备份与恢复:面向 Oracle 数据库的企业级备份解决方案

在 Ubuntu 系统上成功部署 Oracle 数据库后,确保强大的数据保护能力变得尤为关键——尤其是考虑到非标准安装所涉及的复杂性。Vinchin 备份与恢复 是一款专业的企业级解决方案,全面支持当前主流数据库,包括对 Oracle 数据库的一流支持,以及 MySQL、SQL Server、MariaDB、PostgreSQL、PostgresPro 和 TiDB 等平台。

Vinchin 备份与恢复提供一系列核心功能,包括日志备份/归档日志备份、任意时间点恢复、计划备份自动化、针对勒索软件威胁的存储防护,以及通过 SQL 脚本实现的完整性校验与自动恢复验证——所有这些功能均专为最大限度提升可靠性而设计,同时在您这类运行 Ubuntu 并安装 Oracle 数据库的多样化环境中,显著降低管理负担与风险暴露。

直观的网页控制台将操作简化为四个简单步骤,专为备份您的 Oracle 数据库而设计:

步骤 1:选择要备份的 Oracle 数据库

选择要备份的 Oracle 数据库

步骤 2:选择备份存储位置

选择备份存储位置

步骤 3:定义备份策略

定义备份策略

步骤 4:提交任务

提交工作

维晨备份与恢复软件已获得全球众多大中型企业认可,在业内同行中评分名列前茅;提供功能完备、为期六十天的免费试用;点击下方按钮,亲身体验无缝的企业级数据保护!

下载按钮

下载免费试用版

适用于多种数据备份

* 15天全功能免费安全下载


Ubuntu 安装 Oracle 数据库常见问题解答

问题1:我能否在不先卸载的情况下升级现有的手动安装版本?

不——由于版本间的脚本/文件系统可能存在冲突,您必须在手动升级已转换的软件包之前卸载先前的安装。

Q2:为什么基于 Docker 的数据库在重启后会丢失所有数据?

如果未使用 -v /主机路径:/opt/oracle/oradata 挂载持久卷,则容器内所有更改将在容器停止或删除后丢失;请务必显式映射本地目录!

Q3:启动容器时,如果端口 1521 已被占用,我该怎么办?

在 docker run 命令中修改暴露的端口(-p <其他端口号>:1521),并相应地配置客户端连接(localhost:<其他端口号>)。

结论

本文博客为您提供详细的指南,帮助您在 Ubuntu 系统上安装 Oracle 数据库。若您使用的 Ubuntu 版本与 Oracle 版本与本文所述版本一致,可依照分步教程顺利完成 Oracle 安装。

此外,请务必使用 Vinchin 备份与恢复软件备份您的文件,以确保数据安全。免费试用版也千万别错过!

云祺备份软件,云祺容灾备份系统,虚拟机备份,数据库备份,文件备份,实时备份,勒索软件,美国,图书馆

您可能感兴趣的新闻 换一批

现在下载,可享15天免费试用

立即下载

请添加好友为您提供支持
jia7jia_7

微信售后服务二维码

请拨打电话
为您提供支持

400-9955-698