在腾讯云服务器(CVM)上安装 Oracle 数据库,通常推荐使用 Oracle Linux 或 Ubuntu/CentOS 配合官方安装包。以下是基于 CentOS 7/8 或 Ubuntu 20.04/22.04 的通用安装步骤指南(以 Oracle Database 19c 为例,其他版本逻辑类似)。
⚠️ 重要提示:
- 资源要求:Oracle 对内存和 CPU 要求较高,建议服务器配置至少 4GB 内存(推荐 8GB+),磁盘空间预留 20GB+。
- 网络与安全组:确保腾讯云控制台的安全组已放行 1521 端口(Oracle 默认监听端口)。
- License:下载时需登录 Oracle 官网注册账号并同意许可协议。
第一步:系统准备与依赖安装
1. 更新系统并安装基础工具
# CentOS/RHEL
sudo yum update -y
sudo yum install -y gcc gcc-c++ make binutils compat-libcap1 compat-libstdc++-33
elfutils-libelf-devel elfutils-libelf-devel-static glibc-devel ksh libaio
libaio-devel libgcc libstdc++ libstdc++-devel libXext libXtst sysstat unixODBC
unixODBC-devel
# Ubuntu/Debian
sudo apt update
sudo apt install -y build-essential libaio-dev unixodbc-dev unixodbc
2. 创建用户与目录结构
# 创建 oracle 用户(避免使用 root 直接运行)
sudo useradd -m -g oinstall -G dba,oper oracle
echo "oracle:your_password" | sudo chpasswd
# 创建安装目录
sudo mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1
sudo mkdir -p /u01/app/oraInventory
sudo chown -R oracle:oinstall /u01
sudo chmod -R 775 /u01
3. 修改内核参数(sysctl.conf)
编辑 /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
4. 设置用户限制(limits.conf)
编辑 /etc/security/limits.conf,在末尾追加:
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
第二步:下载并解压 Oracle 安装包
- 前往 Oracle 官网下载页 下载对应系统的
Linux x64版本(如linuxamd64_193000_db_home.zip)。 - 将文件上传至服务器(建议使用
scp或 SFTP 工具)。 - 切换到 oracle 用户并解压:
su - oracle unzip /path/to/linuxamd64_193000_db_home.zip -d /u01/app/oracle/product/19.0.0/dbhome_1
第三步:运行安装程序
1. 配置 X11 转发(若本地图形界面安装)
若通过 SSH 连接且需图形界面,需在本地终端开启 X11 转发:
ssh -X root@your_server_ip
然后在服务器上启动安装:
cd /u01/app/oracle/product/19.0.0/dbhome_1
./runInstaller
2. 无头模式安装(推荐服务器环境)
若无需图形界面,可先生成响应文件并静默安装:
# 生成响应文件模板
./runInstaller -generateResponseFile true -responseFile /tmp/response.rsp
# 编辑响应文件(关键修改项)
vi /tmp/response.rsp
# 修改以下行:
INSTALLER_RESPONSE_FILE=/tmp/response.rsp
ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
DECLINE_SECURITY_UPDATES=true
执行静默安装:
./runInstaller -silent -responseFile /tmp/response.rsp
第四步:执行根脚本
安装完成后,根据提示以 root 身份执行两个脚本:
# 脚本路径通常在输出中给出,例如:
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/19.0.0/dbhome_1/root.sh
第五步:验证安装
-
检查进程状态:
ps -ef | grep pmon -
测试连接(需配置环境变量):
su - oracle export ORACLE_SID=orcl export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1 export PATH=$PATH:$ORACLE_HOME/bin sqlplus / as sysdba输入
exit退出 SQL*Plus。 -
确认监听器状态:
lsnrctl status
常见问题排查
| 问题 | 解决方案 |
|---|---|
| 权限拒绝 | 检查 chown/chmod 是否正确,确保 oracle 用户对 /u01 有完整权限 |
| 缺少依赖库 | 重新运行 yum install 或 apt install 中的缺失包 |
| 监听失败 | 检查防火墙是否放行 1521 端口,以及 listener.ora 配置 |
| 内存不足 | 调整 swappiness 或增加 Swap 分区(dd if=/dev/zero of=/swapfile bs=1M count=4096 && mkswap /swapfile && swapon /swapfile) |
后续建议
- 备份策略:配置 RMAN 自动备份到腾讯云对象存储(COS)。
- 监控:使用腾讯云云监控或 Prometheus + Grafana 监控数据库性能。
- 高可用:生产环境建议部署 Data Guard 或 RAC 集群。
如需具体版本(如 12c、19c)的详细响应文件模板或 Docker 化部署方案,可进一步说明需求。
云知识CLOUD