Linux 系统下 Oracle 数据库安装与配置详细教程及常见问题解决指南

一、安装前的准备工作

(一)检查系统环境要求

  1. 操作系统版本:确保 Linux 系统版本与 Oracle 数据库版本兼容,例如 Oracle 19c 在 CentOS 7 上支持良好。
  2. 内核版本:使用命令 uname -a 查看系统内核版本,确保其符合 Oracle 的最低要求。
  3. 硬件资源
    • 内存:至少 2GB RAM,推荐 4GB 或更多。
    • 硬盘空间:至少 50GB 可用空间,根据安装选项和数据库大小,可能需要更多。
  4. 依赖库:检查系统是否已安装必需的依赖库,如 libaiolibstdc++ 等。

(二)下载 Oracle 安装文件

  1. 访问 Oracle 官方网站,找到 Oracle Database 12c 的下载页面。
  2. 根据 Linux 系统的架构(如 x86_64),下载对应的安装包,通常为 .zip 格式。
  3. 将下载的文件保存到一个独立的安装文件夹中,例如 /data/file/oracle

(三)创建用户和用户组

  1. 创建 oinstalldba 用户组:
    groupadd oinstall
    groupadd dba
    
  2. 创建 oracle 用户,并将其加入到 oinstalldba 用户组:
    useradd -g oinstall -G dba oracle
    
  3. 设置 oracle 用户的密码:
    passwd oracle
    

(四)系统参数配置

  1. 修改内核参数:编辑 /etc/sysctl.conf 文件,添加以下内容:
    fs.file-max = 6815744
    fs.aio-max-nr = 1048576
    kernel.shmall = 2097152
    kernel.shmmax = 2147483648
    kernel.shmmni = 4096
    kernel.sem = 250 32000 100 128
    net.ipv4.ip_local_port_range = 9000 65500
    net.core.rmem_default = 4194304
    net.core.rmem_max = 4194304
    net.core.wmem_default = 262144
    net.core.wmem_max = 1048576
    
    执行 sysctl -p 使配置生效。
  2. 修改用户资源限制:编辑 /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 10240
    
  3. 修改 PAM 配置:编辑 /etc/pam.d/login 文件,添加以下内容:
    session required /lib64/security/pam_limits.so
    session required pam_limits.so
    

(五)安装依赖包

以 root 用户执行以下命令安装所需的依赖包:

yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33*.devel compat-libstdc++-33 compat-libstdc++-33*.devel gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686

二、安装 Oracle 数据库

(一)上传并解压安装包

  1. 创建安装目录并设置权限:
    su root
    mkdir -p /data/file/oracle
    chown -R oracle:oinstall /data/file/oracle
    chmod -R 775 /data/file/oracle
    
  2. 上传安装包到 /data/file/oracle 目录,例如通过 scp 命令:
    scp -P 12305 root@192.168.1.200:/data/backup/db/oracle/12c/V839960-01.zip /data/file/oracle
    
  3. 安装解压工具:
    yum install -y unzip zip
    
  4. 切换到 oracle 用户并解压文件:
    su - oracle
    unzip /data/file/oracle/V839960-01.zip
    

(二)配置安装响应文件

  1. 复制响应文件模板:
    mkdir /data/file/oracle/database/etc
    cp /data/file/oracle/database/response/* /data/file/oracle/database/etc
    
  2. 设置响应文件权限:
    su root
    chmod 700 /data/file/oracle/database/etc/*.rsp
    
  3. 编辑响应文件 db_install.rsp
    su - oracle
    vim /data/file/oracle/database/etc/db_install.rsp
    
    修改以下关键参数:
    oracle.install.option=INSTALL_DB_SWONLY
    UNIX_GROUP_NAME=oinstall
    INVENTORY_LOCATION=/data/server/oracle/oraInventory
    ORACLE_HOME=/data/server/oracle/product/12/db_1
    ORACLE_BASE=/data/server/oracle
    oracle.install.db.InstallEdition=EE
    oracle.install.db.OSDBA_GROUP=dba
    oracle.install.db.OSOPER_GROUP=oinstall
    oracle.install.db.OSBACKUPDBA_GROUP=oinstall
    oracle.install.db.OSDGDBA_GROUP=oinstall
    oracle.install.db.OSKMDBA_GROUP=oinstall
    oracle.install.db.OSRACDBA_GROUP=oinstall
    
    oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
    oracle.install.db.config.starterdb.globalDBName=orcl
    oracle.install.db.config.starterdb.SID=orcl
    oracle.install.db.config.starterdb.memoryLimit=81920
    oracle.install.db.config.starterdb.password.ALL=oracle
    SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
    DECLINE_SECURITY_UPDATES=true
    

(三)运行安装脚本

  1. 切换到安装文件目录:
    cd /data/file/oracle/database
    
  2. 运行安装脚本:
    ./runInstaller -silent -responseFile /data/file/oracle/database/etc/db_install.rsp
    
    如果出现权限问题,可使用以下命令添加执行权限:
    chmod +x runInstaller
    

(四)配置 Oracle 数据库

  1. 配置监听器
    • 执行以下命令启动监听器配置工具:
      netca
      
    • 按照提示完成监听器的配置,设置端口号(默认为 1521)。
  2. 创建数据库实例
    • 执行以下命令启动数据库配置助手:
      dbca
      
    • 按照提示完成数据库实例的创建,包括设置数据库名、字符集等信息。
  3. 设置环境变量
    • 编辑 /etc/profile 文件,添加以下内容:
      export ORACLE_HOME=/data/server/oracle/product/12/db_1
      export ORACLE_BASE=/data/server/oracle
      export ORACLE_SID=orcl
      export PATH=$PATH:$ORACLE_HOME/bin
      
    • 使环境变量生效:
      source /etc/profile
      

三、验证安装

(一)检查服务状态

使用以下命令检查 Oracle 相关服务是否正常启动:

ps -ef | grep ora_pmon
ps -ef | grep ora_tns

如果看到类似以下输出,则表示服务已启动:

oracle   12345     1  0 12:34 ?        00:00:01 ora_pmon_orcl
oracle   12346     1  0 12:34 ?        00:00:01 ora_tns_orcl

(二)登录数据库

使用以下命令以 sys 用户登录数据库:

sqlplus sys/oracle as sysdba

如果成功登录,表示数据库安装和配置成功。

(三)测试数据库功能

在 SQL*Plus 中执行以下命令,测试数据库的基本功能:

SELECT * FROM v$version;

如果能够正常返回 Oracle 数据库的版本信息,则说明数据库功能正常。

四、常见问题及解决方法

(一)安装过程中提示权限不足

  • 确保当前用户为 oracle,并属于 oinstalldba 用户组。
  • 检查安装文件和目录的权限,确保 oracle 用户有足够权限访问。

(二)监听器无法启动

  • 检查监听器配置文件 /data/server/oracle/product/12/db_1/network/admin/listener.ora 是否正确。
  • 确保监听器端口(默认 1521)未被其他应用占用。

(三)数据库实例无法启动

  • 检查数据库实例的告警日志文件,通常位于 /data/server/oracle/diag/rdbms/orcl/orcl/trace 目录下。
  • 根据日志中的错误信息进行排查和修复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值