首页主机资讯Ubuntu Oracle配置步骤解析

Ubuntu Oracle配置步骤解析

时间2025-10-27 09:33:04发布访客分类主机资讯浏览1418
导读:Ubuntu上配置Oracle数据库的详细步骤解析 1. 安装前准备 1.1 系统要求确认 确保Ubuntu系统满足Oracle数据库的最低要求: 版本:Ubuntu 16.04及以上(推荐20.04 LTS或22.04 LTS); 内存...

Ubuntu上配置Oracle数据库的详细步骤解析

1. 安装前准备

1.1 系统要求确认

确保Ubuntu系统满足Oracle数据库的最低要求:

  • 版本:Ubuntu 16.04及以上(推荐20.04 LTS或22.04 LTS);
  • 内存:至少2GB(推荐4GB及以上);
  • 磁盘空间:至少10GB可用空间(Oracle安装目录需单独分区,建议使用/u01);
  • 架构:64位系统(Oracle 19c及以上版本不再支持32位)。

1.2 安装依赖包

Oracle数据库需要依赖Ubuntu系统中的库文件,通过以下命令安装:

sudo apt update
sudo apt install alien libaio1 unixodbc build-essential gcc make binutils
  • libaio1:异步I/O库,Oracle数据库必需;
  • unixodbc:ODBC驱动管理器,用于数据库连接;
  • build-essential:编译工具链,用于安装过程中的源码编译。

2. 创建Oracle专用用户和组

Oracle数据库需以专用用户身份运行,避免使用root账户,提升安全性:

# 创建用户组(oinstall:安装组;dba:数据库管理员组)
sudo groupadd -g 503 oinstall
sudo groupadd -g 504 dba

# 创建oracle用户(归属oinstall组,附加dba权限)
sudo useradd -u 501 -g oinstall -G dba -d /home/oracle -s /bin/bash oracle

# 设置oracle用户密码
sudo passwd oracle
  • oinstall:负责Oracle软件的安装和管理;
  • dba:拥有数据库的最高权限(如创建、删除数据库)。

3. 配置系统内核参数

Oracle数据库对系统资源的使用有较高要求,需调整内核参数以优化性能:

# 编辑sysctl.conf文件(永久生效)
sudo nano /etc/sysctl.conf

添加以下内容(根据系统内存调整数值):

kernel.shmmax = 3147483648  # 最大共享内存段大小(建议为物理内存的80%)
kernel.shmmni = 4096        # 共享内存段最大数量
kernel.shmall = 2097152     # 共享内存总页数
kernel.sem = 250 32000 100 128  # 信号量参数
fs.file-max = 65536         # 最大文件句柄数
net.ipv4.ip_local_port_range = 9000 65500  # 本地端口范围

使参数生效:

sudo sysctl -p

编辑/etc/security/limits.conf文件(限制用户资源):

sudo nano /etc/security/limits.conf

添加以下内容:

oracle soft nofile 65536    # 用户oracle的最大打开文件数(软限制)
oracle hard nofile 65536    # 用户oracle的最大打开文件数(硬限制)
oracle soft nproc 16384     # 用户oracle的最大进程数(软限制)
oracle hard nproc 16384     # 用户oracle的最大进程数(硬限制)

注销并重新登录oracle用户,使限制生效。

4. 创建Oracle安装目录并设置权限

Oracle软件和数据需存放在专用目录,建议使用/u01

# 创建Oracle基目录和产品目录
sudo mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1
sudo mkdir -p /u01/app/oracle/oradata  # 数据库数据文件目录
sudo mkdir -p /u01/app/oracle/script   # SQL脚本目录

# 设置目录所有权(oracle用户:oinstall组)
sudo chown -R oracle:oinstall /u01/app/oracle
sudo chmod -R 775 /u01/app/oracle
  • /u01/app/oracle/product/19.0.0/dbhome_1:Oracle 19c软件安装目录;
  • /u01/app/oracle/oradata:数据库数据文件(如system01.dbf)、控制文件(control01.ctl)的存储路径。

5. 配置Oracle环境变量

为了让oracle用户能直接使用Oracle命令(如sqlpluslsnrctl),需配置环境变量:

# 编辑oracle用户的.bashrc文件(永久生效)
sudo nano /home/oracle/.bashrc

添加以下内容(根据实际安装路径调整):

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/dbhome_1
export ORACLE_SID=orcl  # 数据库实例名(默认orcl,可自定义)
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

使环境变量立即生效:

source /home/oracle/.bashrc

验证环境变量:

echo $ORACLE_HOME  # 应输出/u01/app/oracle/product/19.0.0/dbhome_1
echo $ORACLE_SID   # 应输出orcl

6. 安装Oracle数据库软件

6.1 下载Oracle安装包

从Oracle官方网站下载适合Ubuntu的Oracle数据库安装包(如19c或21c的Linux x64版本),例如:

  • Oracle 19c:linuxx64_19c_database.zip
  • Oracle 21c:linuxx64_21c_database.zip

6.2 解压并运行安装程序

# 解压安装包到指定目录
unzip linuxx64_19c_database.zip -d /u01/app/oracle/product/19.0.0/

# 切换到oracle用户
su - oracle

# 运行安装程序
cd /u01/app/oracle/product/19.0.0/
./runInstaller

按照安装向导操作:

  • 选择“安装数据库软件”→“单实例数据库安装”;
  • 选择“企业版”(适合生产环境);
  • 指定安装目录(/u01/app/oracle/product/19.0.0/dbhome_1);
  • 选择“创建和配置数据库”(自动创建数据库实例);
  • 设置数据库管理员密码(如Oracle123);
  • 完成安装后,会提示“配置完成”。

7. 配置Oracle数据库实例

7.1 使用DBCA创建数据库(可选)

若安装时未创建数据库,可通过DBCA(数据库配置助手)创建:

dbca

按照向导操作:

  • 选择“创建数据库”;
  • 选择“自定义数据库”;
  • 设置全局数据库名(如orcl)和SID(如orcl);
  • 设置数据库字符集(推荐AL32UTF8,支持多语言);
  • 设置管理员密码;
  • 完成创建后,数据库实例会自动启动。

7.2 手动启动数据库

# 以sysdba身份登录
sqlplus / as sysdba

# 启动数据库
SQL>
     STARTUP

# 查看数据库状态
SQL>
     SELECT status FROM v$instance;
    
  • 若状态为OPEN,表示数据库启动成功。

8. 配置Oracle自动启动

为了让Oracle数据库在系统重启后自动启动,需配置systemd服务:

# 创建systemd服务文件
sudo nano /etc/systemd/system/oracle.service

添加以下内容(根据实际路径调整):

[Unit]
Description=Oracle Database Auto Start Service
After=network.target

[Service]
Type=forking
User=oracle
Group=oinstall
Environment="ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1"
Environment="ORACLE_SID=orcl"
ExecStart=/u01/app/oracle/product/19.0.0/dbhome_1/bin/dbstart $ORACLE_HOME
ExecStop=/u01/app/oracle/product/19.0.0/dbhome_1/bin/dbshut $ORACLE_HOME
Restart=on-failure
RestartSec=30s

[Install]
WantedBy=multi-user.target

使服务生效:

sudo systemctl daemon-reload
sudo systemctl enable oracle.service  # 开机自启
sudo systemctl start oracle.service   # 立即启动

验证服务状态:

sudo systemctl status oracle.service
  • 若状态为active (running),表示自动启动配置成功。

9. 验证Oracle安装

9.1 使用SQL*Plus连接数据库

sqlplus sys/Oracle123@orcl as sysdba
  • sys:数据库管理员账号;
  • Oracle123:安装时设置的密码;
  • orcl:数据库SID。

若能成功登录并执行SELECT * FROM dual; (返回X),则表示安装成功。

9.2 使用Oracle Enterprise Manager(OEM)

若安装时选择了OEM,可通过浏览器访问https://< 服务器IP> :5500/em,使用sys账号登录,进行图形化管理。

常见问题解决

  • 权限问题:若安装时报错“Permission denied”,需检查Oracle目录的所有权(应为oracle:oinstall);
  • 内核参数不足:若启动时报错“kernel parameter too small”,需调整/etc/sysctl.conf中的参数并执行sudo sysctl -p
  • 环境变量未生效:若无法使用sqlplus命令,需执行source ~/.bashrc使环境变量生效。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu Oracle配置步骤解析
本文地址: https://pptw.com/jishu/735417.html
Ubuntu Oracle配置资源推荐 如何确保Ubuntu Oracle稳定运行

游客 回复需填写必要信息