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

鼠扑  论坛元老 | 2025-5-27 20:35:38 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 2248|帖子 2248|积分 6744

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
一、安装前的预备工作

(一)查抄体系情况要求


  • 操作体系版本:确保 Linux 体系版本与 Oracle 数据库版本兼容,比方 Oracle 19c 在 CentOS 7 上支持良好。
  • 内核版本:使用命令 uname -a 查察体系内核版本,确保其符合 Oracle 的最低要求。
  • 硬件资源

    • 内存:至少 2GB RAM,推荐 4GB 或更多。
    • 硬盘空间:至少 50GB 可用空间,根据安装选项和数据库大小,可能需要更多。

  • 依赖库:查抄体系是否已安装必须的依赖库,如 libaio、libstdc++ 等。
(二)下载 Oracle 安装文件


  • 访问 Oracle 官方网站,找到 Oracle Database 12c 的下载页面。
  • 根据 Linux 体系的架构(如 x86_64),下载对应的安装包,通常为 .zip 格式。
  • 将下载的文件保存到一个独立的安装文件夹中,比方 /data/file/oracle。
(三)创建用户和用户组


  • 创建 oinstall 和 dba 用户组:
    1. groupadd oinstall
    2. groupadd dba
    复制代码
  • 创建 oracle 用户,并将其到场到 oinstall 和 dba 用户组:
    1. useradd -g oinstall -G dba oracle
    复制代码
  • 设置 oracle 用户的密码:
    1. passwd oracle
    复制代码
(四)体系参数设置


  • 修改内核参数:编辑 /etc/sysctl.conf 文件,添加以下内容:
    1. fs.file-max = 6815744
    2. fs.aio-max-nr = 1048576
    3. kernel.shmall = 2097152
    4. kernel.shmmax = 2147483648
    5. kernel.shmmni = 4096
    6. kernel.sem = 250 32000 100 128
    7. net.ipv4.ip_local_port_range = 9000 65500
    8. net.core.rmem_default = 4194304
    9. net.core.rmem_max = 4194304
    10. net.core.wmem_default = 262144
    11. net.core.wmem_max = 1048576
    复制代码
    实行 sysctl -p 使设置生效。
  • 修改用户资源限制:编辑 /etc/security/limits.conf 文件,添加以下内容:
    1. oracle soft nproc 2047
    2. oracle hard nproc 16384
    3. oracle soft nofile 1024
    4. oracle hard nofile 65536
    5. oracle soft stack 10240
    6. oracle hard stack 10240
    复制代码
  • 修改 PAM 设置:编辑 /etc/pam.d/login 文件,添加以下内容:
    1. session required /lib64/security/pam_limits.so
    2. session required pam_limits.so
    复制代码
(五)安装依赖包

以 root 用户实行以下命令安装所需的依赖包:
  1. 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
    2. mkdir -p /data/file/oracle
    3. chown -R oracle:oinstall /data/file/oracle
    4. chmod -R 775 /data/file/oracle
    复制代码
  • 上传安装包到 /data/file/oracle 目录,比方通过 scp 命令:
    1. scp -P 12305 root@192.168.1.200:/data/backup/db/oracle/12c/V839960-01.zip /data/file/oracle
    复制代码
  • 安装解压工具:
    1. yum install -y unzip zip
    复制代码
  • 切换到 oracle 用户并解压文件:
    1. su - oracle
    2. unzip /data/file/oracle/V839960-01.zip
    复制代码
(二)设置安装响应文件


  • 复制响应文件模板:
    1. mkdir /data/file/oracle/database/etc
    2. cp /data/file/oracle/database/response/* /data/file/oracle/database/etc
    复制代码
  • 设置响应文件权限:
    1. su root
    2. chmod 700 /data/file/oracle/database/etc/*.rsp
    复制代码
  • 编辑响应文件 db_install.rsp:
    1. su - oracle
    2. vim /data/file/oracle/database/etc/db_install.rsp
    复制代码
    修改以下关键参数:
    1. oracle.install.option=INSTALL_DB_SWONLY
    2. UNIX_GROUP_NAME=oinstall
    3. INVENTORY_LOCATION=/data/server/oracle/oraInventory
    4. ORACLE_HOME=/data/server/oracle/product/12/db_1
    5. ORACLE_BASE=/data/server/oracle
    6. oracle.install.db.InstallEdition=EE
    7. oracle.install.db.OSDBA_GROUP=dba
    8. oracle.install.db.OSOPER_GROUP=oinstall
    9. oracle.install.db.OSBACKUPDBA_GROUP=oinstall
    10. oracle.install.db.OSDGDBA_GROUP=oinstall
    11. oracle.install.db.OSKMDBA_GROUP=oinstall
    12. oracle.install.db.OSRACDBA_GROUP=oinstall
    13. oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
    14. oracle.install.db.config.starterdb.globalDBName=orcl
    15. oracle.install.db.config.starterdb.SID=orcl
    16. oracle.install.db.config.starterdb.memoryLimit=81920
    17. oracle.install.db.config.starterdb.password.ALL=oracle
    18. SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
    19. DECLINE_SECURITY_UPDATES=true
    复制代码
(三)运行安装脚本


  • 切换到安装文件目录:
    1. cd /data/file/oracle/database
    复制代码
  • 运行安装脚本:
    1. ./runInstaller -silent -responseFile /data/file/oracle/database/etc/db_install.rsp
    复制代码
    如果出现权限问题,可使用以下命令添加实行权限:
    1. chmod +x runInstaller
    复制代码
(四)设置 Oracle 数据库


  • 设置监听器

    • 实行以下命令启动监听器设置工具:
      1. netca
      复制代码
    • 按照提示完成监听器的设置,设置端口号(默认为 1521)。

  • 创建数据库实例

    • 实行以下命令启动数据库设置助手:
      1. dbca
      复制代码
    • 按照提示完成数据库实例的创建,包括设置数据库名、字符集等信息。

  • 设置情况变量

    • 编辑 /etc/profile 文件,添加以下内容:
      1. export ORACLE_HOME=/data/server/oracle/product/12/db_1
      2. export ORACLE_BASE=/data/server/oracle
      3. export ORACLE_SID=orcl
      4. export PATH=$PATH:$ORACLE_HOME/bin
      复制代码
    • 使情况变量生效:
      1. source /etc/profile
      复制代码

三、验证安装

(一)查抄服务状态

使用以下命令查抄 Oracle 相关服务是否正常启动:
  1. ps -ef | grep ora_pmon
  2. ps -ef | grep ora_tns
复制代码
如果看到类似以下输出,则表示服务已启动:
  1. oracle   12345     1  0 12:34 ?        00:00:01 ora_pmon_orcl
  2. oracle   12346     1  0 12:34 ?        00:00:01 ora_tns_orcl
复制代码
(二)登录数据库

使用以下命令以 sys 用户登录数据库:
  1. sqlplus sys/oracle as sysdba
复制代码
如果乐成登录,表示数据库安装和设置乐成。
(三)测试数据库功能

在 SQL*Plus 中实行以下命令,测试数据库的根本功能:
  1. SELECT * FROM v$version;
复制代码
如果能够正常返回 Oracle 数据库的版本信息,则说明数据库功能正常。
四、常见问题及解决方法

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



  • 确保当前用户为 oracle,并属于 oinstall 和 dba 用户组。
  • 查抄安装文件和目录的权限,确保 oracle 用户有充足权限访问。
(二)监听器无法启动



  • 查抄监听器设置文件 /data/server/oracle/product/12/db_1/network/admin/listener.ora 是否准确。
  • 确保监听器端口(默认 1521)未被其他应用占用。
(三)数据库实例无法启动



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

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

鼠扑

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表