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映像标签。