Docker下运行Oracle-XE
- 由于后面学习的需要今天我开始接触了 Docker,可谓漫漫长路何其艰辛,下载个 Virtual tool box 都搞了好久,废话不多说,正文开始!
一、何为 Docker 和 Oracle-XE
1、Docker
- Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows 机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。
- 上面的一段话,就是百度百科对 Docker 的解释。
2、Oracle-XE
- Oracle-XE,是 Oracle 数据库的一个版本。以 Oracle 数据库的知名度,我也无须再多说什么了。
二、下载和初始化 Docker
1、下载 Docker
- 由于 Docker 不能直接运行在 Windows 系统上,要在Windows 系统上运行 Docker,需要安装 Docker toolbox 软件,一开始想当然的,就百度然后到官网去下载,那个龟速无法忍受;最后反复搜索,找到了阿里云镜像的地址来下载:docker_toolbox
- 我选择的是最后一个版本,下载的事情终于解决了。
2、初始化 Docker
- 在初始化的时候,由于我一开始把 Windows 系统自带的虚拟机 Hyper-V 打开了,所以在初始化的时候总是卡在检查虚拟机的步骤,关闭了 Hyper-V 重启系统。现在来来正确操作。
- 安装完 docker toolbox 后重启系统。重启后,新建一个系统变量 MACHINE_STORAGE_PATH,值为你想要用来存放虚拟机的路径,避免 docker 将虚拟机默认安装在系统盘下,我的是 D:/users/DOCKER ; 然后再在该目录下面新建一个 cache 文件夹,去下载 boot2docker 最新版本的镜像,因为 docker 初始化的时候需要 Boo2Docker 得是最新版,一旦检测出不是最新版本便会自动联网下载,这个下载速度也是慢的要死。
- 从 GitHub 上下载 boot2docker 实在忍受不了老半天没反应,只好服务器方法了。
- boot2docker 的镜像下载好了后,也放到 cache 目录下了,想到怎么才能在以后下载镜像的时候不这么慢,找来找去找到了阿里云镜像加速的方法。登录阿里云,打开容器镜像服务
- 这一步操作的前提是已经装好了 git,打开 git-bash,将上面圈着的命令修改成如下:
docker-machine D:/users/DOCKER create --engine-registry-mirror=https://y2622qcp.mirror.aliyuncs.com -d virtualbox default
- 上面的路径为你存放虚拟机的路径。
- 命令执行完成后,打开 virtualbox 会看到有一台虚拟机正在运行。
三、下载 Oracle 镜像和配置
1、下载 Oracle 数据库的 docker 镜像
- 打开 Docker Quickstart Terminal ,在命令中输入:
docker pull wnameless/oracle-xe-11g
- 注意:命令中最后三个字符是阿拉伯数字十一和英文小写g。
- 因为使用了阿里云镜像加速,所以下载速度是可以的,不一会儿就下载好了。
2、安装 Oracle XE
- 同样的,在 Docker Quickstart Terminal 窗口中运行如下命令,启动 Oracle XE 容器:
docker run -d -p 9090:8080 -p 1521:1521 wnameless/oracle-xe-11g
- 将 Oracle XE 1521 端口映射为本机的 1521 端口,同时该容器提供以下的安装信息:
hostname:localhost 端口:1521 SID:XE pwassword:oracle
3、映射 Oracle 数据库的端口
- 为了便于从物理主机上进行数据库的管理,需要将 Oracle 数据库的端口进行映射。
- 打开 virtualBox 软件,选中 default 虚拟机,打开设置-网络-高级-端口转发,进入转发规则编辑页面:
三、可视化管理 Oracle 数据库
- 我这里是用 Navicat 来管理,但是 Navicat 要管理 Oracle 数据库还需要两个东西。
1、下载 Oracle instant client 和 SQL plus
- 去官网 Oracle 下在这两个东西:
- 下载红框圈中的压缩包,用普通方法下载的话,网速只能无话可说,所以你还得去外网服务器的常有操作。
- 下载下来后,加压缩包解压,将 Oracle instant client 放置到适当位置,然后将 SQL plus 放置到 Oracle Instant client 目录下。
2、配置 Navicat
- 打开 Navicat。点击工具-选项
3、连接 Oracle 数据库
- 点击连接-Oracle
- 可以先测试连接,测试成功的话再点击确定。打开 sys 数据库,其概览如下: