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 Storeshell
$ docker login
數據庫
$ docker pull store/oracle/database-enterprise:12.2.0.1
安全
啓動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 ps
。app
使用sys
用戶鏈接到數據庫的默認密碼是Oradoc_db1
。dom
能夠經過執行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_SID
,DB_PDB
並DB_DOMAIN
在tnsnames.ora中更新。
該Docker映像具備如下限制。
使用默認密碼啓動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
主機系統中的目錄在哪裏。
12.2.0.1-slim
EE 的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映像標籤。