• Docker Oracle DataBase 19c


    系统为 CentOS7,安装 Docker:https://www.cnblogs.com/jhxxb/p/11410816.html

    一、下载构建脚本

    wget https://codeload.github.com/oracle/docker-images/zip/refs/heads/main -O docker-images-main.zip
    sudo yum install -y unzip
    unzip docker-images-main.zip

    二、下载构建所需的安装包

    https://www.oracle.com/database/technologies/oracle-database-software-downloads.html

    cd docker-images-main/OracleDatabase/SingleInstance/dockerfiles/19.3.0/
    # https://www.oracle.com/database/technologies/oracle19c-linux-downloads.html
    wget https://download.oracle.com/otn/linux/oracle19c/190000/LINUX.X64_193000_db_home.zip?AuthParam=1625820213_e8029c8bed6986229cbc39f533ce6977 -O LINUX.X64_193000_db_home.zip

    三、构建

    cd docker-images-main/OracleDatabase/SingleInstance/dockerfiles/
    # ./buildContainerImage.sh -x -v 11.2.0.2 -o '--build-arg SLIMMING=false'
    ./buildContainerImage.sh -e -v 19.3.0 -o '--build-arg SLIMMING=false'

    选项说明

    [oracle@localhost dockerfiles]$ ./buildContainerImage.sh -h
    
    Usage: buildContainerImage.sh -v [version] -t [image_name:tag] [-e | -s | -x] [-i] [-o] [container build option]
    Builds a container image for Oracle Database.
    
    Parameters:
       -v: version to build
           Choose one of: 11.2.0.2  12.1.0.2  12.2.0.1  18.3.0  18.4.0  19.3.0  
       -t: image_name:tag for the generated docker image
       -e: creates image based on 'Enterprise Edition'
       -s: creates image based on 'Standard Edition 2'
       -x: creates image based on 'Express Edition'
       -i: ignores the MD5 checksums
       -o: passes on container build option
    
    * select one edition only: -e, -s, or -x
    
    LICENSE UPL 1.0
    
    Copyright (c) 2014,2021 Oracle and/or its affiliates.
    View Code

    四、运行

    docker run --restart=always --name oracle-19c 
    -p 1521:1521 -p 5500:5500 
    -e ORACLE_SID=ORCLCDB 
    -e ORACLE_PDB=ORCLPDB1 
    -e ORACLE_PWD=root 
    oracle/database:19.3.0-ee
    
    # 查看日志
    docker logs -f oracle-19c

    选项说明

    docker run --name <container name> 
    -p <host port>:1521 -p <host port>:5500 
    -e ORACLE_SID=<your SID> 
    -e ORACLE_PDB=<your PDB name> 
    -e ORACLE_PWD=<your database passwords> 
    -e INIT_SGA_SIZE=<your database SGA memory in MB> 
    -e INIT_PGA_SIZE=<your database PGA memory in MB> 
    -e ORACLE_EDITION=<your database edition> 
    -e ORACLE_CHARACTERSET=<your character set> 
    -e ENABLE_ARCHIVELOG=true 
    -v [<host mount point>]:/opt/oracle/oradata 
    oracle/database:19.3.0-ee
    
    Parameters:
       --name:        The name of the container (default: auto generated).
       -p:            The port mapping of the host port to the container port.
                      Two ports are exposed: 1521 (Oracle Listener), 5500 (OEM Express).
       -e ORACLE_SID: The Oracle Database SID that should be used (default: ORCLCDB).
       -e ORACLE_PDB: The Oracle Database PDB name that should be used (default: ORCLPDB1).
       -e ORACLE_PWD: The Oracle Database SYS, SYSTEM and PDB_ADMIN password (default: auto generated).
       -e INIT_SGA_SIZE:
                      The total memory in MB that should be used for all SGA components (optional).
                      Supported 19.3 onwards.
       -e INIT_PGA_SIZE:
                      The target aggregate PGA memory in MB that should be used for all server processes attached to the instance (optional).
                      Supported 19.3 onwards.
       -e ORACLE_EDITION:
                      The Oracle Database Edition (enterprise/standard).
                      Supported 19.3 onwards.
       -e ORACLE_CHARACTERSET:
                      The character set to use when creating the database (default: AL32UTF8).
       -e ENABLE_ARCHIVELOG:
                      To enable archive log mode when creating the database (default: false).
                      Supported 19.3 onwards.
       -v /opt/oracle/oradata
                      The data volume to use for the database.
                      Has to be writable by the Unix "oracle" (uid: 54321) user inside the container!
                      If omitted the database will not be persisted over container recreation.
       -v /opt/oracle/scripts/startup | /docker-entrypoint-initdb.d/startup
                      Optional: A volume with custom scripts to be run after database startup.
                      For further details see the "Running scripts after setup and on startup" section below.
       -v /opt/oracle/scripts/setup | /docker-entrypoint-initdb.d/setup
                      Optional: A volume with custom scripts to be run after database setup.
                      For further details see the "Running scripts after setup and on startup" section below.
    View Code

    五、连接

    docker exec -it oracle-19c bash
    sqlplus / as sysdba
    
    sqlplus sys/<your password>@//localhost:1521/<your SID> as sysdba
    sqlplus system/<your password>@//localhost:1521/<your SID>
    sqlplus pdbadmin/<your password>@//localhost:1521/<Your PDB name>

    Oracle Enterprise Manager Express:https://localhost:5500/em/,登录时 Container Name 留空,用户名为 system 或 sys

    密码

    若未指定 ORACLE_PWD 参数,可在输出日志中搜索 ORACLE PASSWORD FOR SYS, SYSTEM AND PDBADMIN: 找到密码

    或者直接修改密码

    docker exec <container name> ./setPassword.sh <your password>

    https://github.com/oracle/docker-images/tree/main/OracleDatabase/SingleInstance

    https://www.cnblogs.com/xiaoyuxixi/p/13739596.html

    https://www.jianshu.com/p/f0139aff1746

    https://github.com/donaldinos/docker-oracle-11g-apex-5

    https://docs.oracle.com/database/apex-5.1/HTMIG/upgrading-to-latest-AE-release.htm

  • 相关阅读:
    阿里云系列——3.企业网站备案步骤---2018-1-4
    关于VS2017安装的一点扩充说明(15.5)
    Git环境配置+VSCode中文乱码问题
    抛砖引玉之~sftp
    关于链接文件的探讨
    VSCode插件MSSQL教程(昨天提了一下)
    SQL Server 2017 安装过程中的一点说明(有点意思)
    PS如何批量生成缩略图(方法可以通用其他重复劳动)
    mdb导入SqlServer
    01.码医入门(完篇)
  • 原文地址:https://www.cnblogs.com/jhxxb/p/14991326.html
Copyright © 2020-2023  润新知