Oracle數據庫服務器Docker映像文檔
Oracle Database Server 12c R2是行業領先的關系數據庫服務器。Oracle數據庫服務器Docker映像包含在Oracle Linux 7上運行的Oracle數據庫服務器12.2.0.1企業版。該映像包含具有一個pdb的多租戶配置中的默認數據庫。
有關Oracle Database Server 12c R2的更多信息,請參考http://docs.oracle.com/en/database/
登錄Docker商店
使用您的憑證登錄Docker Store
$ docker login
拉取鏡像
$ docker pull store/oracle/database-enterprise:12.2.0.1
啟動Oracle數據庫服務器實例
啟動Oracle數據庫服務器實例就像執行一樣簡單
$ docker run -d -it --name <Oracle-DB> store/oracle/database-enterprise:12.2.0.1
其中<Oracle-DB>
,容器的名稱12.2.0.1
是Docker映像標簽。
當該STATUS
字段顯示(healthy)
在的輸出中時,數據庫服務器就可以使用了docker ps
。
連接到數據庫服務器容器
使用sys
用戶連接到數據庫的默認密碼是Oradoc_db1
。
從容器內部連接
可以通過執行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映像具有以下限制。
- 支持單個實例數據庫。
- 不支持Dataguard。
- 不支持數據庫選項和修補程序。
修改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-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映像標簽。