使用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的文檔,請點擊這裏。 

相關文章
相關標籤/搜索