在CentOS 7虚拟机上安装Oracle XE数据库

  1. 自行使用虚拟机安装CentOS-7-x86_64-DVD-1804.iso

  2. 下载适用于 Linux x64 的 Oracle Database 快捷版 11g 第 2 版
    https://www.oracle.com/technetwork/cn/database/database-technologies/express-edition/downloads/index.html

  3. oracle-xe-11.2.0-1.0.x86_64.rpm.zip解压后,得到Disk1文件夹, 使用SFTP传到CentOS 7中的/root根目录下。
  4. SSH连接到CentOS,安装依赖。
    1
    yum install libaio libaio-devel bc -y
    

  5. 分配SWAP空间,依次执行以下命令
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    su - root
    dd if=/dev/zero of=/swapfile bs=1024 count=1048576
    mkswap /swapfile
    swapon /swapfile
    cp /etc/fstab /etc/fstab.backup_$(date +%N)
    echo '/swapfile swap swap defaults 0 0' /etc/fstab
    chown root:root /swapfile
    chmod 0600 /swapfile
    swapon -a
    swapon -s
    
  6. 可以用free -m查看Swap大小, 确保大于2048M就可以了。

  7. 安装oracle-xe-11.2.0-1.0.x86_64.rpm
    1
    2
    cd Disk1/
    rpm -ivh oracle-xe-11.2.0-1.0.x86_64.rpm
    

  8. 配置数据库,分别配置HTTP端口8080,数据库监听端口1521,数据库SYS和SYSTEM密码,设置Oracle开启自启。
    1
    /etc/init.d/oracle-xe configure
    

  9. 配置环境变量
    1
    vi /etc/profile
    

    加入

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    # Oracle Settings
    TMP=/tmp; export TMP
    TMPDIR=$TMP; export TMPDIR
    ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
    ORACLE_HOME=$ORACLE_BASE/product/11.2.0/xe; export ORACLE_HOME
    ORACLE_SID=XE; export ORACLE_SID
    ORACLE_TERM=xterm; export ORACLE_TERM
    PATH=/usr/sbin:$PATH; export PATH
    PATH=$ORACLE_HOME/bin:$PATH; export PATH
    TNS_ADMIN=$ORACLE_HOME/network/admin
    LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
    CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
    if [ $USER = "oracle" ]; then
      if [ $SHELL = "/bin/ksh" ]; then
     ulimit -p 16384
     ulimit -n 65536
      else
     ulimit -u 16384 -n 65536
      fi
    fi
    

    更新环境变量

    1
    source /etc/profile
    

    查看是否修改成功

    1
    echo $ORACLE_BASE
    

    得到/u01/app/oracle就是oracle的安装目录

  10. 添加权限
    1
    2
    cd /u01/app/oracle/product/11.2.0/xe/bin
    chmod +s oracle
    
  11. 关闭CentOS防火墙
    1
    2
    3
    4
    5
    6
    # 查看防火墙状态
    firewall-cmd --state 
    # 停止防火墙状态
    systemctl stop firewalld.service  
    # 禁止防火墙状态开机启动  
    systemctl disable firewalld.service  
    
  12. 测试是否连得上Oracle数据库
    1
    2
    3
    4
    su - oracle 
    sqlplus /nolog
    connect as sysdba
    # 用户名sys,密码是刚才设置的密码
    

    出现Connected.表示连接成功。

参考文章

  1. Linux下安装Oracle Database 11g Express Edition
  2. Centos7安装Oracle-xe
  3. CentOS7 安装 oracleXE(快捷版)教程