docker安装oracle11g_实际操作成功

boyanx3周前技术教程6

参考官方镜像地址信息:

https://registry.hub.docker.com/r/iatebes/oracle_11g

Docker image for Oracle Database 11g (database installed)

Build from this guide : https://github.com/jaspeen/oracle-11g


Run Oracle DB 11g from docker

$ docker run -d -p 1521:1521 iatebes/oracle_11g


OS users

  • root/install
  • oracle/install

DB users

  • SYS/oracle

SID

  • orcl

Database location

/opt/oracle

TNS String pattern

(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=<IP_DOCKER_HOST>)(PORT=<PORT_MAPPING>)))(CONNECT_DATA=(SERVICE_NAME=orcl)))

Example in my case with above docker run command : IP_DOCKER_HOST = 10.33.66.127 PORT_MAPPING = 1521

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


Docker run command with folder mapping

Optionally you can map dpdump folder to easy upload dumps:

docker run -d --privileged --name oracle11g -p 1521:1521 -v <local_dpdump>:/opt/oracle/dpdump iatebes/oracle_11g

To execute impdp/expdp just use docker exec command:

docker exec -it oracle11g impdp ..

-------以上参考官方提供的信息;下面是实际操作过程;

docker rm containId 删除以前创建的不需要的oracle容器(首次可省略)


使用 docker pull iatebes/oracle_11g 从仓库拉取镜像文件

docker run -d -p 1521:1521 iatebes/oracle_11g //创建11g容器

docker start c40c11c3737a // 启动容器

docker exec -it containId /bin/bash (进入docker容器的内部;一定先进入容器再切用户)

su oracle (切记一定要切换成oracle用户)

sqlplus sys/oracle as sysdba

Sqlplus 使用sys登录后创建表空间

Create tablespace TEST_DS datafile '/home/oracle_for_docker/TEST_DS.dbf' size 500M autoextend on maxsize unlimited;

在docker容器创建oracle的表空间遇到无法创建问题,导致原因是文件夹的执行权限不足导致,需要授权,注意是在容器里面授权操作。

解决方法:

切换到root su root (root/install)

使用sqlplus登录

注意创建表空间时有可能出现权限不足的问题,需要授权操作:

[root@15de95e3000d oradata]# chmod -Rf 777 /home/oracle_for_docker 授权后就可以创建表空间,最后就是常规操作了,创建用户和授权,导入数据,添加工具连接的配置信息即可连接;

(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=IP)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl))) //官网给出的连接信息

注意将本地或者docker容器外面目录的dmp文件上传到docker oracle容器内部指定的目录,使用下面的指令复制文件:

docker cp 本地文件路径 ID全称:容器路径

到此操作结束,可以愉快的使用orcl了.谢谢浏览!

标签: easyupload

相关文章

微信跳一跳辅助修改分数方法曝光 跳一跳怎么快速加分?

[-海峡网]微信跳一跳辅助刷分外挂可修改分数?这是真的吗?微信跳一跳怎么作弊?微信跳一跳可以迅速刷分吗?又有哪些小技巧呢?跟着小编一起来看看吧!跳一跳辅助修改器存在吗?微信跳一跳修改器能修改分数是假的...

WiFi互传,WP8.1手机与Win10电脑共享文件

IT之家讯 如果电脑里有很多照片和视频还有其他文件,要向Lumia手机里传,除了使用传统的数据线,Wi-Fi用起来也很可靠。用蓝牙也未尝不可,但设置工作稍多了些,不太适合这种懒人,所以放弃。下面这2款...

威纶通软件工程文件下载至HMI的四大方法,你都会吗?

一个工程文件创建好之后,我们要执行程序,肯定要把工程文件下载到HMI,对于威纶通工程文件的下载,是有多种方法的。那么下面小编就给大家介绍四种下载工程文件至 HMI 的方法。第一种方法,使用USB下载线...

文件整理工具,EasyTidy软件体验

在工作和学习时使用电脑,会保存各种文件和文档,时间久了会累积一大堆,为了方便未来取用,通常会建立对应的文件夹放好。有的朋友会将文件一直手动整理,有的会放在一个文件夹里,等到工作完成之后再统一处理。但是...

为什么说 Gradle 是 Android 进阶绕不去的坎——Gradle 系列(1)

请点赞,你的点赞对我意义重大,满足下我的虚荣心。 Hi,我是小彭。本文已收录到 GitHub · Android-NoteBook 中。这里有 Android 进阶成长知识体系,有志同道合的朋友,欢迎...

Axure产品原型在手机上如何运行

图1 模拟丁香园的高保真原型 在一般的开发工作之前,我们通常会设计产品原型,大部分为axure绘制的线框图作为产品的PRD文档,供UI和开发进行前期工作,但是有的时候客户、领导想在开发之前,看到产品的...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。