网站首页 > 技术文章 正文
参考官方镜像地址信息:
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了.谢谢浏览!
猜你喜欢
- 2025-07-14 淘宝内部分享:怎么跳出MySQL的10个大坑(下)
- 2025-07-14 remap_table在进行impdp时的使用(impdp exclude table)
- 2025-07-14 数据库工程师必学的 100 个数据库命令(全栈实操版)
- 2025-07-14 docker搭建系统环境(docker 构建)
- 2024-10-20 Oracle和MySQL的数据导入,差别为什么这么大
- 2024-10-20 「服务器数据恢复」存储硬盘坏道导致oracle数据库损坏的数据恢复
- 2024-10-20 【服务器数据恢复】ext3文件系统下oracle数据恢复案例
- 2024-10-20 每天自动备份Oracle数据库 oracle定时备份
- 2024-10-20 Oracle DBA的一天 oracle dba入门
- 2024-10-20 开发过程中遇到Oracle的两三事 oracle开发环境
你 发表评论:
欢迎- 652℃几个Oracle空值处理函数 oracle处理null值的函数
- 644℃Oracle分析函数之Lag和Lead()使用
- 642℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 634℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 629℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 615℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 615℃【数据统计分析】详解Oracle分组函数之CUBE
- 590℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- oracle面试 (55)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)