走啊走
加油

腾讯云服务器如何安装oracle数据库?

服务器价格表

在腾讯云服务器(CVM)上安装 Oracle 数据库是一个涉及系统配置、依赖环境搭建和 Oracle 软件部署的复杂过程。由于 Oracle 官方对 Linux 发行版的支持主要集中在 RHEL/CentOS 系列,强烈建议使用 CentOS 7/8 或 Ubuntu 20.04/22.04(需额外处理兼容性)。

以下是基于 CentOS 7 环境的详细安装指南。如果你使用的是 Ubuntu 或其他版本,部分命令和包名需要调整。


⚠️ 重要前置准备

  1. 系统要求
    • CPU:建议至少 2 核(生产环境建议 4 核+)。
    • 内存:最低 4GB(推荐 8GB+),Oracle 启动后占用较大。
    • 磁盘:建议预留 30GB+ 用于操作系统和数据库文件。
    • 网络:确保安全组已放行端口(如 1521 用于数据库连接,3306 等用于其他服务,SSH 22 必须开放)。
  2. 下载资源
    • 前往 Oracle 官网 下载对应系统的安装包(例如 linuxx64_19c_database.zip)。
    • 将安装包上传至腾讯云服务器的 /tmp/home 目录。

第一步:基础环境配置

登录服务器后,以 root 用户执行以下操作。

1. 关闭防火墙并停止 SELinux

为了减少安装过程中的权限问题,临时关闭它们(生产环境建议配置规则后开启)。

systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

2. 安装依赖包

Oracle 需要大量的系统库支持。

yum install -y gcc gcc-c++ make binutils libaio-devel 
glibc glibc-common glibc-devel ksh libgcc libstdc++ 
libstdc++-devel elfutils-libelf-devel openssl-devel 
sysstat unixODBC unixODBC-devel pcre-devel 
python python-devel wget unzip

3. 创建用户和组

Oracle 通常安装在 oracle 用户下。

groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
# 设置密码(例如:Oracle@123)

4. 修改内核参数 (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

应用配置:

sysctl -p

5. 修改用户限制 (limits.conf)

编辑 /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

同时检查 /etc/pam.d/login,确保包含 session required pam_limits.so


第二步:准备安装目录与解压

1. 创建目录结构

mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1
chown -R oracle:oinstall /u01
chmod -R 775 /u01

2. 解压安装包

假设你已将 linuxx64_19c_database.zip 上传到 /tmp

su - oracle
cd /tmp
unzip linuxx64_19c_database.zip
# 解压后进入 database 目录
cd database

第三步:图形化界面安装(关键步骤)

Oracle 安装程序通常需要 X11 图形界面。腾讯云 CVM 默认是纯命令行(Headless),你需要通过 SSH 隧道转发 X11 或使用无头模式(silent mode)。

方案 A:本地 X11 转发(适合新手,推荐)

  1. Windows 用户:安装 X Server 软件(如 XmanagerVcXsrv)。
  2. Linux/Mac 用户:确保终端支持 X11 转发。
  3. 配置 SSH:使用 -X 参数连接:
    ssh -X root@<你的公网IP>

    (注意:如果 Xmanager 未运行,连接会失败)

  4. 切换用户并运行安装
    su - oracle
    export DISPLAY=<你的本地IP>:0.0  # 替换为你的实际 IP,例如 192.168.1.5
    cd /tmp/database
    ./runInstaller

    此时会弹出图形窗口,按照向导操作:

    • Configuration Option: 选择 "Create and Configure a Single Instance Database"。
    • Installation Type: 选择 "Server Class"。
    • Database Edition: 选择 "Enterprise Edition"。
    • Global Database Name: 输入 SID,例如 orcl
    • Password: 设置所有账户的统一密码。
    • Storage: 选择文件系统(File System),路径设为 /u01/app/oracle/oradata
    • Network Port: 保持默认 1521。
    • 点击下一步直到完成,最后执行根用户脚本(/tmp/database/root.sh)。

方案 B:静默安装(Silent Mode,适合自动化/无图形环境)

如果无法使用图形界面,需编写响应文件(.rsp)。

  1. 复制示例文件:
    cp response/db_install.rsp /tmp/db_install.rsp
  2. 编辑 /tmp/db_install.rsp,修改关键项(如 ORACLE_HOME, UNIX_GROUP_NAME, INSTALL_TYPE 等)。
  3. 运行安装命令:
    ./runInstaller -silent -responseFile /tmp/db_install.rsp -waitForCompletion

    注意:静默安装需要非常详细的配置,初学者建议优先尝试方案 A。


第四步:配置环境变量

安装完成后,切换到 oracle 用户,编辑 .bash_profile

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=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

保存后生效:

source ~/.bash_profile

第五步:验证安装

  1. 检查监听状态
    lsnrctl status
  2. 连接数据库
    sqlplus / as sysdba

    如果看到 SQL> 提示符,说明安装成功。

  3. 创建测试表空间和数据
    CREATE TABLESPACE test_ts DATAFILE '/u01/app/oracle/oradata/orcl/test_ts.dbf' SIZE 100M AUTOEXTEND ON;
    exit;

第六步:腾讯云安全组配置

最后一步至关重要,否则外部无法连接。

  1. 登录 腾讯云控制台
  2. 进入 云主机 (CVM) -> 实例列表
  3. 点击你的实例 ID,进入 更多 -> 网络安全 -> 安全组
  4. 添加 入方向规则
    • 协议类型:TCP
    • 端口范围:1521
    • 授权对象:0.0.0.0/0 (或指定你的客户端 IP)
    • 策略:允许

💡 常见问题与建议

  • 内存不足:Oracle 启动时会消耗大量内存。如果服务器只有 4GB 内存,建议在 /etc/sysctl.conf 中适当调小 kernel.shmmax,或者限制 SGA 大小。
  • 时区问题:确保服务器时间与 NTP 同步,否则可能导致会话超时或日志混乱。
    timedatectl set-timezone Asia/Shanghai
  • 备份:安装完成后,建议立即使用 expdprman 进行全量备份。
  • License:企业版(Enterprise Edition)仅限开发测试使用,生产环境请务必购买正版 License 或改用 Oracle Free Version(仅限非商业)。

通过以上步骤,你应该能在腾讯云服务器上成功部署 Oracle 数据库。如果在具体步骤遇到报错,请提供具体的错误日志以便进一步分析。