使用Docker安装Oracle数据库

  在不少时候,咱们须要在本地安装Oracle数据库,可是整个安装的过程时间很是长并且安装文件大,那么有不有更好的办法来安装Oracle数据库既能减小安装的时间并且还可以快速进行部署呢?答案就是使用Docker来数据库容器,那么具体该怎么进行呢?本文介绍如何在Win7和Win10上面进行Oracle镜像的安装以及如何使用DataGrip创建链接。html

  一 Windows7上面的安装git

       首先就是在Window7上面安装Docker Toolbox,具体安装的过程,请参考这篇文档。安装完成后在桌面上通常会有一个Oracle VM VirtualBox和一个Docker Quickstart Terminal,通常在进行操做以前右键单击Docker Quickstart Terminal,而后进入启动界面,若是出现下面的界面就表示安装已经成功了。github

图一 启动Docker Quickstart Terminaldocker

  启动完毕后咱们就能够进行镜像的拉取和运行了,这里咱们使用 docker search oracle 来搜索oralce镜像。 数据库

  A    搜索镜像express

图二 搜索Oracle镜像windows

  B 建立volume以持久化数据oracle

  在命令行输入 docker volume create exeed-db命令建立名称为exeed-db的volumeapp

  C 建立并运行Oracle数据库测试

        在命令行中输入:docker run -d --name exeed-db -p 1521:1521 -p 8080:8080 --shm-size=1g --restart=always -e ORACLE_PWD=XXX -v exeed-db:/u01/app/oracle/oradata zerda/oracle-database:11.2.0.2-xe

  这里有几点须要注意的是:

  1 --name exeed-db指定建立的volume .

  2  --shm-size=1g:设置/dev/shm的大小。格式为:。number必须大于0。unit可选,能够是b,k,m或g。若是不指定unit,系统默认使用字节。若是此参数不指定,默认使用64m。

  3  --restart=always  --restart 标志会检查容器的退出代码,并据此来决定是否要重启容器,默认是不会重启。--restart的参数说明  always:不管容器的退出代码是什么,Docker都会自动重启该容器。on-failure:只有当容器的退出代码为非0值的时候才会自动重启。另外,该参数还接受一个可选的重启次数参数,`--restart=on-fialure:5`表示当容器退出代码为非0时,Docker会尝试自动重启该容器,最多5次。(注意:这里若是不限定该重启策略,那么每一次重启电脑后都要手动经过docker start命令来重启当前容器)

  4   ORACLE_PWD用于设置当前Oracle数据库密码。

  5   -v exeed-db:/u01/app/oracle/oradata zerda/oracle-database:11.2.0.2-xe用于指定使用的Oracle镜像若是本地找不到的话那么就会去联网进行下载。

  当上面的命令执行完毕之后,若是出现下面的提示,则表示Oracle已经在当前机器上安装完毕而且没有错误。  

  SQL> Disconnected from Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
  #########################
  DATABASE IS READY TO USE!
  #########################

  D 查看安装镜像的状态

图三 查看已经正确运行的镜像

  E  使用DataGrip来链接建立的Oracle数据库

图四 DataGrip链接Oracle数据库

  这里也许对Host有疑问,不该该是localhost,这里其实咱们安装的oracle是跑在虚拟机上面的,这里的地址指的是虚拟机的地址,咱们能够在命令行中输入 docker-machine ls来查看当前的虚拟机的地址。

图五 获取当前的Docker Machine 信息

  这里咱们使用sys as sysdba来做为登陆用户,这里的密码就是执行docker run 运行时建立的密码,而后点击测试就能够链接本身的oracle数据库了。

  F 后续操做

  使用sys as sysdba登陆后建立新的用户:AfterSales,这里记住要建立默认的表空间,接着咱们就能够给刚才建立的用户AfterSales授予权限了,这样下次咱们就能够经过新建的帐户来进行数据库操做了。

  -- Oracle 管理用户

  -- 建立用户
  CREATE USER AfterSales IDENTIFIED BY XXX  DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp QUOTA UNLIMITED ON users;

  -- 赋予权限
  GRANT CONNECT, CREATE TABLE, CREATE TRIGGER, CREATE PROCEDURE, CREATE VIEW, CREATE SEQUENCE, DEBUG CONNECT SESSION TO AfterSales ;

  -- 删除用户
  DROP USER AfterSales CASCADE;

  二  Windows10上面的安装

  Windows10上面的安装和Windows7上面有些差异,具体使用的技术也是彻底不一样的。

   A   启用Hyper-V

  打开控制面板 - 程序和功能 - 启用或关闭Windows功能,勾选Hyper-V,而后点击肯定便可,如图:

图六 开启Hyper-V

  B 安装Docker

  Docker下载地址请点击这里, 点击如图处便可下载安装包,而后进行安装。

  C 重启机器

  在重启机器后咱们能够在任务栏中发现已经运行的Docker,这点和Windows7上面不一样,Windows7须要每次重启启动Docker Quickstart Terminal,Windows10则不须要。  

图七 Windows10中Docker任务栏图标

  另外后续的过程和Windows7中彻底同样,只不过Windows10中Host再也不是虚拟机的地址了,而是直接使用localhost即可以进行登陆了。

  最后附上Oracle官方给出的在Docker上面安装Oracle的文档,请点击这里。 

相关文章
相关标签/搜索