基于docker部署Oracle 19c的详细记录

目录
  • 一. 拉取Oracle 19c镜像
  • 二. 查看镜像
  • 三. 创建Oracle 19c镜像的容器
    • 3.1创建目录
    • 3.2 创建实例
    • 3.3 查看日志
  • 四、 修改密码
  • setPassword.sh 脚本如下
  • 五、连接数据库
    • 5.1测试方案一:进入容器内部测试
    • 5.2测试方案二:用navicat连接测试

一. 拉取Oracle 19c镜像

[root@node08002 docker]# docker pull registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c
19c: Pulling from zhuyijun/oracle
bce8f778fef0: Pull complete
3fc3fd32c0bc: Pull complete
02948dd6d654: Pull complete
67f2dfeb2f1b: Pull complete
2e42d8039fd9: Pull complete
b94f01bb60c6: Pull complete
Digest: sha256:3898a9394720f30ce7f0b83ef2d172f4cd11b958282e0505f83cf2b0e5eaf7d4
Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c
registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c

二. 查看镜像

[root@node08002 docker]# docker images
REPOSITORY                                          TAG       IMAGE ID       CREATED         SIZE
registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle   19c       7b5eb4597688   20 months ago   6.61GB
[root@node08002 docker]# 

三. 创建Oracle 19c镜像的容器

3.1创建目录

[root@node08002 docker]# mkdir /opt/oradata
[root@node08002 docker]# chmod -R 777 /opt/oradata/
[root@node08002 docker]# 

3.2 创建实例

[root@node08002 docker]# docker run -d -it --name oracle19c -p 1521:1521 -p 5500:5500 -v /opt/oradata:/opt/oracle/oradata registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c

3.3 查看日志

[root@node08002 ~]# docker logs -f oracle19c
ORACLE EDITION: ENTERPRISE
ORACLE PASSWORD FOR SYS, SYSTEM AND PDBADMIN: CRiP1dWzDHA=1

LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 06-APR-2022 10:28:18
Copyright (c) 1991, 2019, Oracle.  All rights reserved.
Starting /opt/oracle/product/19c/dbhome_1/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 19.0.0.0.0 - Production
System parameter file is /opt/oracle/product/19c/dbhome_1/network/admin/listener.ora
Log messages written to /opt/oracle/diag/tnslsnr/1249a4a7bb32/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 19.0.0.0.0 - Production
Start Date                06-APR-2022 10:28:18
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /opt/oracle/product/19c/dbhome_1/network/admin/listener.ora
Listener Log File         /opt/oracle/diag/tnslsnr/1249a4a7bb32/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521)))
The listener supports no services
The command completed successfully
Prepare for db operation
8% complete
Copying database files
31% complete
Creating and starting Oracle instance
32% complete
36% complete
40% complete
43% complete
46% complete
Completing Database Creation
51% complete
54% complete
Creating Pluggable Databases
58% complete
77% complete
Executing Post Configuration Actions
100% complete
Database creation complete. For details check the logfiles at:
 /opt/oracle/cfgtoollogs/dbca/ORCLCDB.
Database Information:
Global Database Name:ORCLCDB
System Identifier(SID):ORCLCDB
Look at the log file "/opt/oracle/cfgtoollogs/dbca/ORCLCDB/ORCLCDB.log" for further details.
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Apr 6 10:48:37 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle.  All rights reserved.

四、 修改密码

系统默认的system密码修改成oracle

[root@node08002 ~]# docker exec oracle19c ./setPassword.sh oracle

setPassword.sh 脚本如下

[root@node08002 ~]# docker exec -it oracle19c /bin/bash
[oracle@1249a4a7bb32 ~]$ ls
setPassword.sh
[oracle@1249a4a7bb32 ~]$ pwd
/home/oracle
[oracle@1249a4a7bb32 ~]$ cat setPassword.sh
#!/bin/bash
# LICENSE UPL 1.0
#
# Copyright (c) 1982-2018 Oracle and/or its affiliates. All rights reserved.
#
# Since: November, 2016
# Author: gerald.venzl@oracle.com
# Description: Sets the password for sys, system and pdb_admin
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
# 

ORACLE_PWD=$1
ORACLE_SID="`grep $ORACLE_HOME /etc/oratab | cut -d: -f1`"
ORACLE_PDB="`ls -dl $ORACLE_BASE/oradata/$ORACLE_SID/*/ | grep -v pdbseed | awk '{print $9}' | cut -d/ -f6`"
ORAENV_ASK=NO
source oraenv

sqlplus / as sysdba << EOF
      ALTER USER SYS IDENTIFIED BY "$ORACLE_PWD";
      ALTER USER SYSTEM IDENTIFIED BY "$ORACLE_PWD";
      ALTER SESSION SET CONTAINER=$ORACLE_PDB;
      ALTER USER PDBADMIN IDENTIFIED BY "$ORACLE_PWD";
      exit;
EOF

[oracle@1249a4a7bb32 ~]$ 

五、连接数据库

sqlplus system/oracle@xxx.xxx.xxx.xxx:1521/ORCLCDB

5.1测试方案一:进入容器内部测试

[root@node08002 ~]# docker exec -it oracle19c /bin/bash
[oracle@1249a4a7bb32 ~]$ sqlplus system/oracle@localhost:1521/ORCLCDB

SQL*Plus: Release 19.0.0.0.0 - Production on Thu Apr 7 01:54:17 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle.  All rights reserved.
Last Successful login time: Thu Apr 07 2022 01:53:14 +00:00
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
SQL> Show user;
USER is "SYSTEM"
SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
[oracle@1249a4a7bb32 ~]$ 

5.2测试方案二:用navicat连接测试

[root@node08002 ~]# docker exec -it oracle19c /bin/bash
[oracle@1249a4a7bb32 ~]$ cd /opt/oracle/product/19c/dbhome_1/network/admin/
[oracle@1249a4a7bb32 admin]$ ls
listener.ora  samples  shrept.lst  sqlnet.ora  tnsnames.ora
[oracle@1249a4a7bb32 admin]$ vim sqlnet.ora
[oracle@1249a4a7bb32 admin]$ cat sqlnet.ora
NAME.DIRECTORY_PATH= (TNSNAMES, EZCONNECT, HOSTNAME)
[oracle@1249a4a7bb32 admin]$ vim sqlnet.ora
[oracle@1249a4a7bb32 admin]$ cat sqlnet.ora
NAME.DIRECTORY_PATH= (TNSNAMES, EZCONNECT, HOSTNAME)
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8
SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
[oracle@1249a4a7bb32 admin]$ exit
exit
[root@node08002 ~]# docker ps -a
CONTAINER ID   IMAGE                                                   COMMAND                  CREATED        STATUS                  PORTS                                                                                  NAMES
1249a4a7bb32   registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c   "/bin/sh -c 'exec $O…"   16 hours ago   Up 16 hours (healthy)   0.0.0.0:1521->1521/tcp, :::1521->1521/tcp, 0.0.0.0:5500->5500/tcp, :::5500->5500/tcp   oracle19c
[root@node08002 ~]# docker restart oracle19c
oracle19c
[root@node08002 ~]# 

很奇怪,又要修改一次密码,具体操作步骤如下:

[root@node08002 ~]# docker exec -it oracle19c /bin/bash
[oracle@1249a4a7bb32 ~]$ sqlplus system/oracle@localhost:1521/ORCLCDB

SQL*Plus: Release 19.0.0.0.0 - Production on Thu Apr 7 02:59:52 2022
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.

Last Successful login time: Thu Apr 07 2022 02:59:10 +00:00

Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> alter user system identified by oracle;

User altered.

SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

终于可以连接了

到此这篇关于基于docker部署Oracle 19c的文章就介绍到这了,更多相关docker部署Oracle 19c内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Docker安装Oracle_11g的方法

    Docker安装Oracle_11g 1.拉取oracle_11g镜像 docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 2.创建oracle11g容器 docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 3.查看oracle11g容器是否创建成功 docker ps -a 4

  • Docker 拉取 oracle 11g镜像配置的详细教程

    话不多说 开始记录docker拉取阿里的oracle11g 镜像并进行配置, 用pl/sql 可以登录为最终结果 navicat连接是在最后一步 参考:https://www.jb51.net/article/223375.htm 但是根据这个进行配置会有一些问题,所以写这篇记录一下,希望可以帮助其他人 开始: ①.开始拉取镜像-执行命令: docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 下载的过程少长,等待吧,喝

  • 解析Docker 下拉取oracle 11g镜像配置的问题

    1.拉取镜像 docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 镜像详情:https://dev.aliyun.com/detail.html?spm=5176.1972343.2.8.E6Cbr1&repoId=1969 由于镜像我已经拉取,所以此处显示已存在,查看镜像信息 docker iamges 2.创建并容器信息 docker run -d -p 1521:1521 --name oracle_11g re

  • 如何在mac上用docker对Oracle进行部署使用

    如何在mac上用docker对Oracle进行部署使用 首先安装docker 安装docker可以直接去官网进行下载,但是貌似官网的速度有点慢,这边有条件的推荐复制下载链接在迅雷进行下载(有会员的话会更快哦-) docker官网 dockerMac版下载链接 其他系统需要安装docker请自行去官网选择系统安装 下载完成后的安装需要把Docker的图标拖进application中,安装成功之后会在mac启动台中出现Docker的Logo. 同时安装成功之后在Mac顶端会出现Docker的图标,如

  • 基于docker部署Oracle 19c的详细记录

    目录 一. 拉取Oracle 19c镜像 二. 查看镜像 三. 创建Oracle 19c镜像的容器 3.1创建目录 3.2 创建实例 3.3 查看日志 四. 修改密码 setPassword.sh 脚本如下 五.连接数据库 5.1测试方案一:进入容器内部测试 5.2测试方案二:用navicat连接测试 一. 拉取Oracle 19c镜像 [root@node08002 docker]# docker pull registry.cn-hangzhou.aliyuncs.com/zhuyijun/

  • 基于docker部署Jenkins的详细教程

    0.我做这个文档的时候,大概是19年12月前后,那会er2.200是最新版的. 1.下载镜像 docker pull jenkins/jenkins 一定要安装最新版的 jenkins,旧版本,很多插件无法安装 2.查看jenkins的详细信息 docker inspect jenkins:2.200 3.创建jenkins 目录(做持久化) mkdir /home/jenkins_home 4.启动容器 docker run -d --name Jenkins_01 -p 8081:8080

  • 基于docker 部署canvas-lms的详细步骤

    准备: 一台8G内存的服务器.安装好docker, pull一个ubuntu镜像下来, 可以是最新版也可以是官方支持的14/ 16 更新时间: 2018-04-04 Step 1: 启动docker然后加载ubuntu镜像.命令如下: sudo docker run -it ubuntu # -it 是链接输入输出, 后面有一个command参数, 默认为/bin/bash Step 2: 安装vim, sudo (ubuntu镜像可能会非常精简, 没有sudo, 没有vim等文本编辑器) ap

  • centos8使用Docker部署Django项目的详细教程

    引言 在本文中将介绍在Docker中通过django + uwsgi + nginx部署方式部署Django项目, 由于记录的是学习过程,使用的都是目前较高的版本. python  版本为3.8.3 django  版本为3.0.6 nginx   版本为1.17.10 好了简单的介绍之后,就进入正题了. 创建一个工作目录 创建一个工作目录用来存放项目,和Dockerfile等文件. mkdir uwsgidocker 简单说明一下各个文件 docker-compose.yml: Docker

  • docker部署蜗牛影院系统详细流程分析

    环境声明 宿主机OS: Cetnos7.9 最小化安装 docker Version: 20.10.6 系统要求硬件配置: CPU2核以上,内存8G cpu核心数低于2核,影院端将无法登录 mysql数据库: mysql5.6 容器 redis数据库: redis4.0 容器 安装centos7.9 先停止防火墙和关闭SELinux 查看防火墙状态 firewall-cmd --state #或 systemctl status firewalld.service 停止firewall syst

  • 基于Docker部署GitLab环境搭建的方法步骤

    注意:建议虚拟机内存2G以上,一定要配置阿里云的加速镜像 1.下载镜像文件 docker pull beginor/gitlab-ce:11.0.1-ce.0 2.创建GitLab 的配置 (etc) . 日志 (log) .数据 (data) 放到容器之外, 便于日后升级 mkdir -p /mnt/gitlab/etc mkdir -p /mnt/gitlab/log mkdir -p /mnt/gitlab/data 3.运行GitLab容器 进入/mnt/gitlab/etc目录,运行一

  • 基于Docker部署Tomcat集群、 Nginx负载均衡的问题小结

    写在前面 看完Dokcer相关的书籍,正好有个项目要这样搞,所以自己练习一下. 当作一百世一样.这里的道理很明白:我思故我在,既然我存在,就不能装作不存在.无论如何,我要为自己负起责任.--王小波<三十而立> 结构图: 这里仅作为一种学习,一般这种负载的话,Nginx是放到主机侧的, JavaWeb(Tomcat)应用放到容器里. 效果 新建文件夹. D=uag;mkdir $D;cd $D;mkdir uag_nginx uag_tomcat8; ls uag_nginx uag_tomca

  • Docker部署Microsoft Sql Server详细步骤

    目录 1 背景 2 创建容器 3 修改SA密码 4 链接mssql 5 容器外链接mssql 总结 1 背景 自 SQL Server 2019 CU3 起,支持 Ubuntu 18.04. 自 SQL Server 2019 CU10 起,支持 Ubuntu 20.04. Docker 引擎 1.8+ 至少 2 GB 的磁盘空间 至少 2 GB 的 RAM 博主机器: Welcome to Ubuntu 20.04.3 LTS (GNU/Linux 5.11.0-37-generic x86_

  • 基于docker部署skywalking实现全链路监控功能

    目录 一.概述 简介 功能 架构图 二.快速部署 环境说明 下载镜像 安装elasticsearch 修改系统参数 启动elasticsearch 安装oap 安装ui 三.spring-boot实例部署 项目地址 制作jar包 启动jar包 访问ui 访问demo接口 仪表盘 拓扑图 追踪 告警 指标 一.概述 简介 skywalking是一个开放源码的,用于收集.分析,聚合,可视化来自于不同服务和本地基础服务的数据的可观察的平台,skywalking提供了一个简单的方法来让你对你的分布式系统

  • Zabbix6通过ODBC方式监控Oracle 19C的详细过程

    目录 前言 1.19C客户端安装 1.1 19C客户端下载 1.2 客户端安装 2.数据库相关操作 2.1 确认监听状态 2.2 实例名及服务名 2.3 Zabbix用户创建 3.客户端配置 3.1 配置环境变量 3.2 添加Oracle驱动 3.3 验证是否配置成功 4.Zabbix监控 前言 本文详细介绍了Zabbix6通过ODBC方式监控Oracle 19C的过程 1.19C客户端安装 1.1 19C客户端下载 #创建zabbix目录,进入zabbix目录 [root@jeames ~]#

随机推荐