docker 部署oracle

Oracle數據庫服務器Docker映像文檔

Oracle Database Server 12c R2是行業領先的關係數據庫服務器。Oracle數據庫服務器Docker映像包含在Oracle Linux 7上運行的Oracle數據庫服務器12.2.0.1企業版。該映像包含具備一個pdb的多租戶配置中的默認數據庫。sql

有關Oracle Database Server 12c R2的更多信息,請參考http://docs.oracle.com/en/database/docker

登陸Docker商店

使用您的憑證登陸Docker Storeshell

$ docker login數據庫

拉取鏡像

$ docker pull store/oracle/database-enterprise:12.2.0.1安全

啓動Oracle數據庫服務器實例

啓動Oracle數據庫服務器實例就像執行同樣簡單bash

$ docker run -d -it --name <Oracle-DB> store/oracle/database-enterprise:12.2.0.1服務器

其中<Oracle-DB>,容器的名稱12.2.0.1是Docker映像標籤。oracle

當該STATUS字段顯示(healthy)在的輸出中時,數據庫服務器就能夠使用了docker psapp

鏈接到數據庫服務器容器

使用sys用戶鏈接到數據庫的默認密碼是Oradoc_db1dom

從容器內部鏈接

能夠經過執行SQL * Plus來鏈接數據庫服務器,

$ docker exec -it <Oracle-DB> bash -c "source /home/oracle/.bashrc; sqlplus /nolog"

從容器外部鏈接

數據庫服務器爲經過SQL Net協議的 Oracle客戶端鏈接公開端口1521,爲Oracle XML DB公開端口5500。能夠使用SQL Plus或任何JDBC客戶端從容器外部鏈接到數據庫服務器。

要從容器外部進行鏈接,請使用-P-p選項as來啓動容器,

$ docker run -d -it --name <Oracle-DB> -P store/oracle/database-enterprise:12.2.0.1

選項-P表示端口由Docker分配。經過執行如下操做能夠發現映射的端口

$ docker port <Oracle-DB> 1521/tcp -> 0.0.0.0:<mapped host port>

使用它<mapped host port>並在環境變量指向的目錄中<ip-address of host>建立。tnsnames.ora``TNS_ADMIN

ORCLCDB=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=<ip-address of host>)(PORT=<mapped host port>))
    (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ORCLCDB.localdomain)))
ORCLPDB1=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=<ip-address> of host)(PORT=<mapped host port>))
    (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ORCLPDB1.localdomain)))

要使用SQL * Plus從容器外部進行鏈接,

$ sqlplus sys/Oradoc_db1@ORCLCDB as sysdba

自定義配置

Oracle數據庫服務器容器還提供用於啓動容器的自定義配置參數。全部自定義配置參數都是可選的。能夠在ENV文件(ora.conf)中提供如下自定義配置參數列表。

DB_SID

此參數更改ORACLE_SID數據庫的。默認值設置爲 ORCLCDB

DB_PDB

此參數修改PDB的名稱。默認值設置爲ORCLPDB1

DB_MEMORY

此參數設置Oracle服務器的內存要求。此值肯定要爲SGA和PGA分配的內存量。默認值設置爲2GB。

DB_DOMAIN

此參數設置要用於數據庫服務器的域。默認值爲 localdomain

使用自定義配置參數啓動Oracle數據庫服務器

$ docker run -d -it --name <Oracle-DB> -P --env-file ora.conf store/oracle/database-enterprise:12.2.0.1

確保的自定義值DB_SIDDB_PDBDB_DOMAIN在tnsnames.ora中更新。

注意事項

該Docker映像具備如下限制。

  1. 支持單個實例數據庫。
  2. 不支持Dataguard。
  3. 不支持數據庫選項和修補程序。

修改SYS用戶默認密碼

使用默認密碼啓動Oracle數據庫服務器Oradoc_db1。建立容器時使用的密碼不安全,應更改。要更改密碼,請使用SQL * Plus鏈接到數據庫並執行

alter user sys identified by <new-password>;

資源需求

容器的最低要求是8GB磁盤空間和2GB內存。

數據庫日誌

能夠使用如下命令查看數據庫警報日誌

$ docker logs <Oracle-DB>

哪裏 是容器的名稱

重用現有數據庫

該Oracle數據庫服務器映像使用Docker數據捲來存儲數據文件,重作日誌,審覈日誌,警報日誌和跟蹤文件。數據量安裝在的容器內部/ORCL。要使用docker run命令啓動具備數據量的數據庫,

$ docker run -d -it --name <Oracle-DB> -v OracleDBData:/ORCL store/oracle/database-enterprise:12.2.0.1

OracleDBData是Docker建立並安裝在容器內部的數據卷/ORCL。經過重用OracleDBData數據卷,能夠將持久化的數據文件與另外一個容器重用。

使用主機系統目錄進行數據量

要將主機系統上的目錄用於數據量,

$ docker run -d -it --name <Oracle-DB> -v /data/OracleDBData:/ORCL store/oracle/database-enterprise:12.2.0.1

/data/OracleDBData主機系統中的目錄在哪裏。

Oracle Database Server 12.2.0.1企業版Slim Variant

12.2.0.1-slimEE 的Slim Variant(標籤)減小了磁盤空間(4GB)的要求,並加快了容器的啓動速度。該映像不支持如下功能-分析,Oracle R,Oracle標籤安全性,Oracle文本,Oracle Application Express和Oracle DataVault。使用苗條的變體

$ docker run -d -it --name <Oracle-DB> store/oracle/database-enterprise:12.2.0.1-slim

其中<Oracle-DB>,容器的名稱12.2.0.1-slim是Docker映像標籤。

相關文章
相關標籤/搜索