赞
踩
编译教程的部分在文章中段,开始部分已编译完成的镜像拉取使用教程
写在前面:
只要镜像,不想自己编译的小伙伴,可以直接拉取我编译完成的镜像,使用命令为:
docker pull chasm98l/oracle19c
此镜像已编译并安装数据库实例,启动镜像命令为:
docker run --name oracle-19c -p 1521:1521 chasm98l/oracle19c
注:镜像名字中的chasm98l中的“l”为字母L的小写,自己手动输入的童鞋注意了。
数据库的SID为orcl,所有密码均为"000000",即六个零。
见到如图所示的提示,即为启动成功。启动镜像完成之后即可进入容器,或直接通过连接工具连接数据库进行使用。
1.进入容器
需要进入容器以连接sqlplus,命令为:
docker exec -it oracle-19c bash
需要管理员权限进入容器以删除文件,命令为:
docker exec -it -u root oracle-19c bash
注:进入容器之后,所在位置并非主目录,可使用“cd /”命令回到主目录。
2.以下为几个常用的数据库账户和密码:
管理员用户名:sys 密码:000000
用户名:system 密码:000000
我自己建的测试用户:c##mycim2 密码:000000
3.以下为几个可能使用的参数:
ORACLE_SID=orcl
ORACLE_PDB=pdb1
本镜像为标准企业版安装。
注:oracle 19c版本中,进入sqlplus后若提示 ORA-01034: ORACLE not available,原因可能是连接sqlplus时未指定数据库实例SID到导致,解决使用exit命令退出当前连接,重新连接时在密码后加指定连接的实例,示例如下,
数据库管理员连接命令:
sqlplus sys/000000/PDB1 as sysdba
看到这里的童鞋才是真的想自己折腾,下面我们开始自己动手编译oracle镜像。
1.准备环境和所需文件
环境:编译环境须为Linux环境,需要可以联网。
文件:(其他oracle版本请自行下载对应版本安装包)
(1) oracle 19c Linux版安装包,官网链接为:Database Software Downloads | Oraclehttps://www.oracle.com/database/technologies/oracle-database-software-downloads.html
安装包的名字应该为LINUX.X64_193000_db_home.zip。
(2) 编译文件,可直接通过git clone到自己本地,命令为
git clone https://github.com/oracle/docker-images.git
2.移动文件,开始编译:(19.3.0文件夹为19c编译使用的位置,其他版本请自行选择对应位置放置安装包)
(1)将安装包放到编译文件 \docker-images\OracleDatabase\SingleInstance\dockerfiles\19.3.0 的文件夹中,不要修改安装包的命名。
(2)返回到当前位置的上一级,可以看到buildContainerImage.sh文件即可开始编译,命令为:
(其他版本请修改命令中19.3.0为对应的版本参数)
./buildContainerImage.sh -v 19.3.0 -e
-e 为安装企业版
注:编译过程可能会出现连接超时的问题,此问题是网络配置有误,可自行百度错误信息解决。
- Oracle Database container image for 'ee' version 19.3.0 is ready to be extended:
-
- --> oracle/database:19.3.0-ee
-
- Build completed in 792 seconds.
当出现上面的提示,就表示镜像制作完成了,剩下就是利用该镜像启动容器即可。
注:此时的镜像中尚未安装数据库实例,还无法正常使用。
3.安装数据库实例
使用命令启动镜像,并安装数据库实例(根据自己需要修改SID,密码,端口等)
docker run --name oracle-19c -p 1521:1521 -p 5500:5500 -e ORACLE_SID=orcl -e ORACLE_PDB=pdb1 -e ORACLE_PWD=000000 oracle/database:19.3.0-ee
如果"DATABASE IS READY TO USE!"提示信息,表示数据库已成功安装了。
此时即可正常使用,此时可以将当前容器状态保存为新的镜像以便后续使用(本文开头的镜像便是此时的状态)。
注:oracle 19c版本中,进入sqlplus后若提示ORA-01034: ORACLE not available,原因可能是连接sqlplus时未指定数据库实例SID导致,使用exit命令退出当前连接,重新连接,连接命令:
sqlplus sys/000000@orcl as sysdba
其中:sys为管理员用户名
000000为密码
orcl为SID
as sysdba 为以管理员身份创建连接的参数
至此,编译完成,可投入正常使用祝大家编译顺利!!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。