Ubuntu 安装 Oracle 11g XE 完整指南

Ubuntu 安装 Oracle 11g XE 完整指南

1. 系统准备

更新系统

bash 复制代码
sudo apt update && sudo apt upgrade -y

安装必要工具

bash 复制代码
sudo apt install -y alien libaio1 unixodbc bc

2. 下载与转换安装包

下载 Oracle 11g XE

访问官方下载地址:

https://www.oracle.com/database/technologies/xe-prior-release-downloads.html

解压并转换 RPM 包

bash 复制代码
# 解压 zip 文件
unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip

# 进入解压目录
cd Disk1

# 转换 RPM 为 DEB (此过程需要几分钟)
sudo alien --scripts -d oracle-xe-11.2.0-1.0.x86_64.rpm

# 查看生成的 deb 包
ls -lh oracle-xe*.deb

3. 配置内核参数

bash 复制代码
# 编辑系统配置文件
sudo nano /etc/sysctl.conf

在文件末尾添加以下内容:

bash 复制代码
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.shmall = 2097152
net.ipv4.ip_local_port_range = 9000 65500
fs.aio-max-nr = 1048576

应用配置:

bash 复制代码
sudo sysctl -p

4. 创建必要的链接和目录

创建系统链接

bash 复制代码
# 创建必要的符号链接
sudo ln -s /usr/bin/awk /bin/awk
sudo ln -s /lib/x86_64-linux-gnu/libpthread.so.0 /lib64/libpthread.so.0
sudo ln -s /lib/x86_64-linux-gnu/libc.so.6 /lib64/libc.so.6

创建 chkconfig 脚本

bash 复制代码
# 创建脚本文件
sudo nano /sbin/chkconfig

添加以下内容:

bash 复制代码
#!/bin/bash
# Oracle 11gR2 XE installer chkconfig hack for Ubuntu
file=/etc/init.d/oracle-xe
if [[ ! `tail -n1 $file | grep INIT` ]]; then
    echo >> $file
    echo '### BEGIN INIT INFO' >> $file
    echo '# Provides: OracleXE' >> $file
    echo '# Required-Start: $remote_fs $syslog' >> $file
    echo '# Required-Stop: $remote_fs $syslog' >> $file
    echo '# Default-Start: 2 3 4 5' >> $file
    echo '# Default-Stop: 0 1 6' >> $file
    echo '# Short-Description: Oracle 11g Express Edition' >> $file
    echo '### END INIT INFO' >> $file
fi
update-rc.d oracle-xe defaults 80 01

设置执行权限:

bash 复制代码
sudo chmod 755 /sbin/chkconfig

5. 安装 Oracle XE

bash 复制代码
# 安装 deb 包
sudo dpkg -i oracle-xe_11.2.0-2_amd64.deb

# 如果出现依赖问题,执行:
sudo apt-get install -f

6. 配置 Oracle XE

bash 复制代码
# 运行配置脚本
sudo /etc/init.d/oracle-xe configure

配置过程中需要设置:

  1. HTTP 端口 (默认 8080,建议改为 9090)
  2. 数据库监听端口 (默认 1521)
  3. SYS 和 SYSTEM 用户密码 (请设置强密码)
  4. 是否开机启动 (建议选择 y)

7. 配置环境变量

bash 复制代码
# 编辑 bashrc 文件
nano ~/.bashrc

在文件末尾添加:

bash 复制代码
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe
export ORACLE_SID=XE
export NLS_LANG=AMERICAN_AMERICA.UTF8
export ORACLE_BASE=/u01/app/oracle
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export PATH=$ORACLE_HOME/bin:$PATH

使配置生效:

bash 复制代码
source ~/.bashrc

8. 启动数据库

bash 复制代码
# 启动 Oracle XE 服务
sudo service oracle-xe start

# 或使用完整路径
sudo /etc/init.d/oracle-xe start

# 查看服务状态
sudo service oracle-xe status

9. 连接数据库

bash 复制代码
# 使用 sqlplus 连接数据库
sqlplus system/YourPassword123@localhost:1521/XE

常见问题

端口冲突

如果 8080 端口被占用,可在配置时改为其他端口(如 9090)

服务无法启动

检查内核参数是否正确应用:

bash 复制代码
sudo sysctl -a | grep kernel.sem

环境变量未生效

确保执行了 source ~/.bashrc,或重新登录终端


总结

本教程详细介绍了在 Ubuntu 系统上安装 Oracle 11g XE 的完整流程,包括系统准备、软件包转换、内核配置、安装配置等关键步骤。按照步骤操作即可成功部署 Oracle 数据库环境。

相关推荐
贝锐5 小时前
从国产化信创设备到商用安卓终端,向日葵如何帮助企业实现统一运维管理?
linux·运维·远程控制
Julien20046 小时前
调查和解决 SELinux 问题
linux·运维·服务器·网络·学习方法
小张同学a.8 小时前
Docker 容器实战 1—— docker 基础与镜像构建
linux·运维·docker·容器
Best-Wishes10 小时前
BurpSuite Pro教育版在linux系统中配置
linux·运维·服务器·网络安全·burpsuite
wuminyu10 小时前
深入剖析 Panama Off-heap 的性能损耗与开销
java·linux·c语言·jvm·c++
虎王物联10 小时前
RK3568嵌入式Linux跑Docker:内核配置排查到AIoT容器化的完整路径
linux·运维·docker·rk3568·aiot·嵌入式linux
GeW11 小时前
不只靠技术:RHCE考试的5个隐藏得分点
linux
老当益壮梁奶奶12 小时前
Linux软件编程学习笔记(八):进程间通信详解(1)
linux·c语言·笔记·学习·算法
cqsztech12 小时前
Oracle ai database 26ai rac 通过gold image 更新季度补
数据库·人工智能·oracle
祖力5512 小时前
进程间通信(IPC机制):消息队列与共享内存
linux·消息队列·共享内存·通信·进程间通信