Docker 拉取 oracle 11g镜像配置

Docker 拉取 oracle 11g镜像配置话不多说开始记录docker拉取阿里的oracle11g镜像并进行配置,用pl/sql可以登录为最终结果navicat连接是在最后一步参考:https://blog.csdn.net/zwx521515/article/details/77982884但是根据这个进行配置会有一些问题,所以写这篇记录一下,希望可以帮助其他人开始:①、开始拉取镜像-执行命令:…

大家好,又见面了,我是你们的朋友全栈君。

话不多说

开始记录docker拉取阿里的oracle11g 镜像并进行配置,

用pl/sql 可以登录为最终结果

navicat连接是在最后一步

参考:https://blog.csdn.net/zwx521515/article/details/77982884

但是根据这个进行配置会有一些问题,所以写这篇记录一下,希望可以帮助其他人

开始:

 ①、开始拉取镜像-执行命令:

         docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

        下载的过程少长,等待吧,喝杯咖啡,休息一会!(镜像6.8G)

        下载完成后 查看镜像: docker images

Docker 拉取 oracle 11g镜像配置

    可以看到已经下载好了

② 、创建容器

        docker run -d -p 1521:1521 –name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

        这里说一下,命令后面的地址一定要是你下载的镜像地址也就是你拉取镜像名字,否则会出现名字已存在等问题!

        如果创建成功能会返回容器id

③、启动容器 

        docker start oracle11g

        Docker 拉取 oracle 11g镜像配置

④、进入镜像进行配置

     1、 docker exec -it oracle11g bash

      Docker 拉取 oracle 11g镜像配置    

       

     2、进行软连接

            sqlplus /nolog

    Docker 拉取 oracle 11g镜像配置

    发现没有这个命令,用不了

     3、切换到root 用户下

            su root

            密码:helowin

        Docker 拉取 oracle 11g镜像配置

        注意这里还是在容器当中。。有朋友退去了。。。。。。。

      4、编辑profile文件配置ORACLE环境变量

export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2

export ORACLE_SID=helowin

export PATH=$ORACLE_HOME/bin:$PATH

        Docker 拉取 oracle 11g镜像配置

        在最后加上

        Docker 拉取 oracle 11g镜像配置

            保存并退出  :wq

       5、创建软连接

            ln -s $ORACLE_HOME/bin/sqlplus /usr/bin

        6、切换到oracle 用户

              这里还要说一下,一定要写中间的内条 –   必须要,否则软连接无效

            Docker 拉取 oracle 11g镜像配置

 ⑤ 、登录sqlplus并修改sys、system用户密码

        sqlplus /nolog

        conn /as sysdba

       Docker 拉取 oracle 11g镜像配置

 

        接着执行下面命令

        alter user system identified by system;

        alter user sys identified by sys;

        也可以创建用户  create user test identified by test;

          并给用户赋予权限  grant connect,resource,dba to test;

    注意了这里的坑开始出现了
    当执行修改密码的时候出现 :    database not open

      提示数据库没有打开,不急按如下操作

      输入:alter database open;

    注意了:这里也许还会提示  :   ORA-01507: database not mounted

      不急!继续!

      Docker 拉取 oracle 11g镜像配置    

    =========== 解决方法===========

     输入:alter database mount;

      输入 alter database open;

       Docker 拉取 oracle 11g镜像配置

      然后就可执行 修改数据库密码的命令了

      改完之后输入:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

      刷新下表 

        exit  是退休sql 软连接

    Docker 拉取 oracle 11g镜像配置

⑥、使用pl/sql 进行连接 

  navicat 连接的直接跳过 第 ⑥ 步

但是 oracle 的 lsnrctl 服务 在第6步所以你还是看完在看第7步(虽然不需要干啥)

第7步是navicat连接的在最后

          之前我们把端口映射到了1521上,所以我们需要进行配置 tnsnames.ora

    几个朋友不知道ora文件在哪,所以添加了这一步   

    pl/sql 安装包,汉化包,秘钥工具 https://download.csdn.net/download/qq_38380025/11168289

     plsql安装配置工具包    https://blog.csdn.net/qq_38380025/article/details/89677588

docker_oracle11 =
 (DESCRIPTION =
   (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.211.135)(PORT =1521))
   )
   (CONNECT_DATA =
     (SERVICE_NAME = orcl)
   )
)

 

    打开pl/sql 进行登录 :提示监听程序当前无法识别连接描述符中请求的服务

 

            Docker 拉取 oracle 11g镜像配置

            Docker 拉取 oracle 11g镜像配置    

        这时我们需要去看一下oracle 的 lsnrctl 服务

        Docker 拉取 oracle 11g镜像配置

        看到这两个了么,任选其一,修改 tnsnames.ora的 service_name=helowinXDB

docker_oracle11 =
 (DESCRIPTION =
   (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.211.135)(PORT =1521))
   )
   (CONNECT_DATA =
     (SERVICE_NAME = helowinXDB)
   )
)

     欧克,登录成功。

   Docker 拉取 oracle 11g镜像配置

第7步是navicat连接

 有几个朋友用的是navicat连的所以故此添加这一步

打开navicat后(navicat12不用配置oci.dll文件了)

直接新建连接

Docker 拉取 oracle 11g镜像配置

 

Docker 拉取 oracle 11g镜像配置

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/139084.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • docker的常用命令汇总_常用docker命令

    docker的常用命令汇总_常用docker命令文章目录Docker命令总结Docker命令总结还在百度Docker命令?推荐一套我用起来特顺手的命令!简介:Docker是一个开源的应用容器引擎,让开发者可以打包应用及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上。使用Docker可以更方便地打包、测试以及部署应用程序。Docker镜像官网阿里云镜像中心Docker环境安装:#安装yum-utilsyuminstall-yyum-utilsdevice-mapper-persistent-dat

  • docker 各种参数配置

    docker 各种参数配置

  • docker里镜像用ipv6无法访问_虚拟服务器端口设置

    docker里镜像用ipv6无法访问_虚拟服务器端口设置前言我有一个朋友,他在Dev和Test服务器用Docker搭建了Redis供项目使用,然后今天Test环境的Redis端口访问不通了,在服务上可以正常连接,真是离了个大齐,让我们试试排查排查问题;正文端口检测lsof已确认在本地用telnetip6381访问不通,那就上服务上看看端口情况DevTestDev环境同时映射到Ipv6和Ipv4端口,Test环境仅映射到Ipv6,那基本上就可以断定是环境问题了容器状态dockerps既然端口映射

  • centos7.4安装docker_docker打包python应用

    centos7.4安装docker_docker打包python应用前言当我们在一台电脑上搭建了python3.6的环境,下次换台电脑,又得重新搭建一次,设置环境变量等操作。好不容易安装好,一会提示pip不是内部或外部命令,一会又提示pip:commandno

  • Jenkins(2)docker容器中安装python3「建议收藏」

    Jenkins(2)docker容器中安装python3「建议收藏」前言使用docker安装jenkins环境,jenkins构建的workspace目录默认是在容器里面构建的,如果我们想执行python3的代码,需进容器内部安装python3的环境。进jenki

  • docker部署web项目_docker web管理工具

    docker部署web项目_docker web管理工具前言前面我们运行的容器并没有一些什么特别的用处。接下来让我们尝试使用docker构建一个web应用程序。我们将在docker容器中运行一个PythonFlask应用来运行一个web

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号