在腾讯云服务器(CVM)上安装 Oracle 数据库需要遵循严格的系统准备、软件安装和配置步骤。由于 Oracle 对操作系统版本、内核参数、内存及磁盘有明确要求,且官方支持有限制(如 CentOS 7/8 需使用特定版本或转用 Rocky Linux/AlmaLinux),以下提供基于 CentOS 7/8 或 Ubuntu 20.04+ 的通用安装指南(以 Oracle Database 19c 为例,这是目前最稳定且广泛支持的版本)。
⚠️ 重要提示:
- Oracle 数据库是商业软件,需购买授权许可。腾讯云市场有预装 Oracle 的镜像(含合法授权),可大幅降低部署难度,建议优先选择。
- 若自行安装,请确保服务器符合 Oracle 官方认证的系统要求(参考 Oracle 认证矩阵)。
- 本文假设您已拥有 Oracle 安装包(从 My Oracle Support 下载,需注册账号并持有有效许可证)。
一、前置准备
1. 检查系统要求
- 操作系统:推荐 CentOS 7.9 / 8 Stream / Rocky Linux 8 / Ubuntu 20.04 LTS
(CentOS 8 已停止维护,建议使用 Rocky Linux 8 或 AlmaLinux 8) - 内存:≥ 4 GB(生产环境建议 ≥ 8 GB)
- 磁盘空间:至少 20 GB(数据文件、归档日志等需额外空间)
- 内核参数:需调整
sysctl.conf和limits.conf - 用户与组:创建
oracle用户和oinstall,dba等组
2. 关闭防火墙与 SELinux(临时用于测试;生产环境需精细配置)
# CentOS/Rocky
sudo systemctl stop firewalld
sudo setenforce 0
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
# Ubuntu
sudo ufw disable
3. 安装依赖包
# CentOS/Rocky
sudo yum groupinstall -y "Development Tools"
sudo yum install -y binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel elfutils-libelf-devel krb5-devel libxcb-devel libXrender-devel python36 net-tools telnet
# Ubuntu
sudo apt update && sudo apt install -y build-essential binutils libc6-dev libaio1 libaio-dev libncurses5 libnss3-dev libpam-modules libpam-runtime libstdc++6 libx11-6 libxext6 libxft2 libxkbfile1 libxmuu1 libxrender1 libxss1 python3 net-tools telnet
4. 创建用户与目录
sudo groupadd oinstall
sudo groupadd dba
sudo useradd -g oinstall -G dba -m -d /home/oracle -s /bin/bash oracle
echo "oracle:oracle" | chpasswd
# 创建安装目录
sudo mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1
sudo mkdir -p /u01/app/oracle/admin
sudo chown -R oracle:oinstall /u01
sudo chmod -R 775 /u01
5. 修改内核参数(/etc/sysctl.conf)
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
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
生效:
sudo sysctl -p
6. 设置用户资源限制(/etc/security/limits.conf)
在文件末尾添加:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
7. 配置环境变量(~/.bash_profile)
切换到 oracle 用户:
su - oracle
vi ~/.bash_profile
添加以下内容(根据实际路径调整):
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
生效:
source ~/.bash_profile
二、安装 Oracle 数据库
1. 解压安装包
将下载的 Oracle 19c ZIP 包上传至 /tmp 或指定目录,由 root 用户解压后切换为 oracle 用户操作:
# 作为 root 用户
cd /tmp
unzip linuxamd64_db_home.zip -d /tmp/oracle_installer
chown -R oracle:oinstall /tmp/oracle_installer
2. 启动安装程序
su - oracle
cd /tmp/oracle_instainer/runInstaller
./runInstaller
💡 注意:图形界面无法在远程 SSH 中直接显示,需通过 X11 转发或使用无头模式(silent install)。
方案 A:使用 X11 转发(适合本地开发测试)
本地终端执行:
ssh -X ubuntu@your-tencent-cvm-ip
然后在 CVM 上运行 ./runInstaller。
方案 B:静默安装(推荐生产环境)
创建响应文件 db_install.rsp,内容示例:
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19_0_0
oracle.install.option=INSTALL_DB_AND_CONFIG
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oper
oracle.install.db.OSBACKUPDBA_GROUP=dba
oracle.install.db.DBA_GROUP=dba
oracle.install.db.INSTALL_DATABASE_TYPE=STANDARD_EDITION
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDatabaseName=orcl
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryLimit=2048
oracle.install.db.config.starterdb.password.ALL=Oracle123
oracle.install.db.config.starterdb.control=DB_CONTROL
DECLINE_SECURITY_UPDATES=true
执行静默安装:
./runInstaller -responseFile /path/to/db_install.rsp -silent
三、配置监听与数据库助手
安装完成后,以 root 身份执行脚本:
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/19.0.0/dbhome_1/root.sh
然后启动监听和数据库:
su - oracle
lsnrctl start
sqlplus / as sysdba
SQL> startup;
四、验证安装
sqlplus / as sysdba
SQL> select name, open_mode from v$database;
SQL> exit;
# 检查监听状态
lsnrctl status
# 查看进程
ps -ef | grep pmon
五、安全加固建议(生产环境必须)
- 启用 Oracle Audit Vault 或统一审计
- 配置 TDE(透明数据加密)
- 限制监听端口访问(仅允许特定 IP)
- 定期打补丁(Check Patch Availability on MOS)
- 启用防火墙规则(仅开放 1521 端口)
替代方案:使用腾讯云市场镜像
如果希望快速部署且避免手动配置风险,可直接在腾讯云控制台:
- 进入【云市场】→ 搜索 “Oracle”
- 选择官方认证的镜像(如“Oracle Database 19c Enterprise Edition”)
- 购买时选择对应规格(内存≥8GB,SSD 云盘)
- 实例启动后通过 VNC 或 RDP 连接,按向导完成初始化
✅ 优势:自动完成系统优化、授权激活、备份策略配置
⚠️ 注意:需支付 Oracle 软件许可费 + 云资源费用
如您能提供具体需求(如:是否生产环境?是否需要高可用集群?预算范围?),我可进一步定制方案。
云服务器