• 猿创征文|Docker部署Oracle 19C及最佳实践


    📢📢📢📣📣📣
    哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10年DBA工作经验
    一位上进心十足的【大数据领域博主】!😜😜😜
    中国DBA联盟(ACDU)成员,目前从事DBA及程序编程
    擅长主流数据Oracle、MySQL、PG 运维开发,备份恢复,安装迁移,性能优化、故障应急处理等。
    ✨ 如果有对【数据库】感兴趣的【小可爱】,欢迎关注【IT邦德】💞💞💞
    ❤️❤️❤️感谢各位大可爱小可爱!❤️❤️❤️

    前言

    Docker部署Oracle 19C及最佳实践,本文做了详细的说明

    ⛳️ 1. 创建CentOS7.6的容器

    ✨ 1.1 拉取镜像

    [root@jeames ~]# docker pull centos:centos7.6.1810

    ✨ 1.2 创建容器

    -- 查看网络模式
    docker network ls
    -- 创建一个新的bridge网络
    docker network create --driver bridge --subnet=172.18.12.0/16 --gateway=172.18.1.1 mynet
    --查看网络信息
    docker network inspect mynet
    
    --创建容器
    docker run -d --name oracle19C -h oracle19C \
    -p 5500-5510:5500-5510 -p 1524:1521 -p 230:22 \
    --network=mynet --ip 172.18.12.2 \
    --privileged=true \
    centos:7.6.1810 /usr/sbin/init
    
    --开机时容器自己启动
    docker update --restart=always oracle19C
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    在这里插入图片描述

    ✨ 1.3 修改时区

    [root@jeames ~]# docker cp /usr/share/zoneinfo/Asia/Shanghai oracle19C:/etc/localtime

    ✨ 1.4 进入容器

    [root@jeames ~]# docker exec -it oracle19C bash

    ✨ 1.5 yum安装

    yum install -y openssh-clients openssh-server initscripts \
    net-tools telnet which wget passwd
    yum install -y e4fsprogs lrzsz sudo unzip lvm2 \
    tree traceroute bridge-utils dos2unix rlwrap
    yum -y install vim redhat-lsb
    
    • 1
    • 2
    • 3
    • 4
    • 5

    ✨ 1.6 启动ssh进程

    systemctl restart sshd
    echo “root:root” | chpasswd --修改root用户密码

    ✨1.7 远程登录

    ssh root@192.168.1.54 -p 230 --cmd可以测试登陆

    在这里插入图片描述

    ✨ 1.8 配置容器内的yum源

    #阿里云
    [root@oracle19C /]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    [root@oracle19C /]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
    [root@oracle19C /]# yum clean all
    [root@oracle19C /]# rpm --rebuilddb
    
    • 1
    • 2
    • 3
    • 4
    • 5

    ⛳️ 二、 rpm方式安装Oracle 19C

    ✨ 2.1 安装database-preinstall包

    yum install -y https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm

    ✨ 2.2、下载安装db软件

    安装19c数据库软件:
    [root@jeames ~]# docker cp oracle-database-ee-19c-1.0-1.x86_64.rpm oracle19C:/
    [root@oracle19C /]# yum install -y oracle-database-ee-19c-1.0-1.x86_64.rpm

    ✨ 2.3 创建数据库实例

    [root@oracle19C /]# /etc/init.d/oracledb_ORCLCDB-19c configure

    在这里插入图片描述

    ⛳️ 三、 数据库配置

    ✨ 3.1 配置用户环境变量

    [root@oracle19C /]# su - oracle
    
    cat >> /home/oracle/.bash_profile << "EOF"
    export ORACLE_SID=ORCLCDB
    export ORACLE_BASE=/opt/oracle
    export ORACLE_HOME=$ORACLE_BASE/product/19c/dbhome_1
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
    export PATH=$ORACLE_HOME/bin:$PATH
    export TNS_ADMIN=$ORACLE_HOME/network/admin
    export NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'
    export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
    EOF
    
    [oracle@oracle19C ~]$ source .bash_profile
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    ✨ 3.2 修改密码

    [oracle@oracle19C ~]$ sqlplus / as sysdba

    在这里插入图片描述

    #rpm安装,数据库会产生随机密码,所以需要我们自行修改密码
    SYS@ORCLCDB> alter user sys identified by oracle;

    ⛳️ 四、 重启容器后的操作

    [root@jeames /]# docker restart oracle19C
    [root@jeames /]# docker exec -it oracle19C bash
    [root@oracle19C /]# /etc/init.d/oracledb_ORCLCDB-19c start --启动数据库

    在这里插入图片描述
    SQL> show pdbs

    在这里插入图片描述
    在这里插入图片描述

    [root@rhel74 ~]# su - oracle
    [oracle@rhel74 ~]$ sqlplus / as sysdba
    SQL> show pdbs
    --开PDB库
    SQL> alter pluggable database all open; 
    --关闭PDB库
    SQL> alter pluggable database all close; 
    SQL> select name,cdb from v$database;
    --CDB切到PDB
    SQL> alter session set container = PDB1;
    --PDB切到CDB
    SQL> conn / as sysdba
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    在这里插入图片描述

  • 相关阅读:
    srcnn fsrcnn espcn rdn超分网络的结构
    2023年11月15号期中测验主观题(Java)
    (JVM)双亲委派机制
    【1++的Linux】之线程(二)
    C++AVL树
    10.28总结
    酷宇宙观点:万物金融化,定义下一个金融服务时代
    0003号因子测试结果、代码和数据
    easyExcel生成动态表头
    前端复制带上版权信息
  • 原文地址:https://blog.csdn.net/weixin_41645135/article/details/126577188