温馨提示×

Ubuntu Oracle使用教程大全

小樊
89
2025-04-22 00:38:04
栏目: 云计算

在Ubuntu系统上使用Oracle数据库涉及多个步骤,包括安装、配置、管理和维护。以下是一个详细的教程大全,涵盖了从安装到高级管理的各个方面。

安装Oracle数据库

使用Docker安装Oracle

  1. 安装Docker
  • 更新Ubuntu的apt源索引:
    sudo apt-get update
    
  • 安装必要的安装包:
    sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
    
  • 添加Docker官方GPG key:
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    
  • 设置Docker稳定版仓库:
    sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
    
  • 更新apt源索引并安装最新版Docker CE(社区版):
    sudo apt-get update
    sudo apt-get install docker-ce
    
  • 检查Docker CE是否安装正确:
    sudo docker run hello-world
    
  • 设置用户权限:
    sudo usermod -a -G docker $USER
    
  1. 使用Docker安装Oracle数据库
  • 搜索Oracle镜像:
    docker search oracle
    
  • 创建并运行Oracle数据库容器:
    docker run -d --name exeed-db -p 1521:1521 -p 8080:8080 --shm-size=1g --restart=always -e ORACLE_PWD=XXX -v exeed-db:/u01/app/oracle/oradata zerda/oracle-database:11.2.0.2-xe
    

在Ubuntu上手动安装Oracle数据库

  1. 下载并解压Oracle软件包
wget http://old-releases.ubuntu.com/ubuntu/pool/main/liba/libaio/libaio1_0.3.107-7ubuntu2_amd64.deb
wget http://old-releases.ubuntu.com/ubuntu/pool/main/liba/libaio/libaio-dev_0.3.107-7ubuntu2_amd64.deb
dpkg -i ./libaio1_0.3.107-7ubuntu2_amd64.deb
dpkg -i ./libaio-dev_0.3.107-7ubuntu2_amd64.deb
  1. 创建并配置Oracle用户和组
sudo groupadd dba
sudo useradd -g dba -d /home/db01 -s /bin/bash db01
  1. 设置Oracle环境变量: 编辑~/.bashrc文件,添加以下内容:
export ORACLE_HOME=/opt/oracle/product/18c/dbhomeXE
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export ORACLE_SID=orcl

使更改生效:

source ~/.bashrc
  1. 初始化Oracle数据库
sudo /etc/init.d/oracle-xe-18c configure
  1. 启动Oracle数据库服务
sudo systemctl start oracle-xe-18c
  1. 验证安装结果
sudo systemctl status oracle-xe-18c

配置Oracle环境

  1. 配置环境变量: 打开终端,使用文本编辑器(如nano或vim)打开~/.bashrc文件:
nano ~/.bashrc

添加以下内容,替换your_oracle_home为你的Oracle安装目录:

export ORACLE_HOME=your_oracle_home
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

保存并关闭文件,使更改生效:

source ~/.bashrc

验证环境变量是否已正确设置:

echo $ORACLE_HOME
echo $LD_LIBRARY_PATH

管理Oracle数据库

  1. 创建用户并分配权限: 以sysdba身份登录到Oracle数据库:
sqlplus sys as sysdba

创建用户并分配权限:

CREATE USER user_name IDENTIFIED BY password;
GRANT CONNECT, RESOURCE TO user_name;
  1. 配置监听器和数据库实例: 创建监听器配置文件listener.ora
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

创建TNSNAMES.ORA文件:

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

启动监听器:

lsnrctl start
  1. 日志管理
  • 日志文件位置:
    • 单实例数据库:$ORACLE_BASE/diag/rdbms/dbname/instancename/trace/alter_instancename.log
    • RAC集群:每个节点的Alert.log和数据库进程的trace日志都存放在相同目录下,例如$ORACLE_BASE/diag/rdbms/database_name/instance_name/trace/alter_instancename.log
  • 日志收集:
    • 对于11gR2版本,可以在$GRID_HOME目录下执行diagcollectin.sh脚本,生成包含CRS日志信息的压缩包。
  • 归档日志管理:
    • 开启归档模式:
      ALTER DATABASE ARCHIVE LOG;
      
    • 监控归档日志:
      SELECT dest_name, status, destination FROM archive_dest;
      
    • 手动归档日志:
      ALTER SYSTEM ARCHIVE LOG ALL;
      
    • 清理过期归档日志:
      DELETE NOPROMPT ARCHIVE LOG ALL BACKED UP 1 TIMES TO DISK;
      
  • 日志分析:
    • 使用Logwatch或Analog等日志分析工具来检查和报告日志。
  • 日志轮转:
    • Ubuntu系统自带logrotate工具,用于自动轮换、压缩、删除和发送日志文件。

希望这些步骤能帮助你在Ubuntu系统上成功安装和管理Oracle数据库。如果在安装过程中遇到任何问题,建议参考Oracle的官方文档或联系专业的数据库管理员。

0