一、Docker 创建 Oracle 容器: 1、查找一下oracle 相关的镜像:
docker search oracle第一个应该是官方给的空的Linux系统,下载之后需要自行在里面安装Oracle。所以选择第二个,镜像中有Oracle 的安装脚本,启动镜像会直接安装。 2、下载镜像:
docker pull jaspeen/oracle-11g3、从Oracle官网下载Oracle11g的安装包: 存放到指定位置并解压,这里存放路径为 /tmp 。解压两个压缩包:
unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip两个都解压完成后,会在解压目录下出现一个database文件夹: 4、创建容器:
docker run --privileged --name docker_oracle -p 1521:1521 -v /tmp:/install jaspeen/oracle-11g容器名称:docker_oracle ,-v /database文件夹的存放路径:/install
等待安装,时间会有点长。。。。。。。。。。。。。。。。。。。。 查看日志,日志中会出现 100% complete,代表数据库安装完成
5、另开起一个终端,设置容器自启动:
docker container update --restart=always docker_oracledocker_oracle :容器名称
6、重启容器:
docker restart docker_oracle7、进入容器:
docker exec -it docker_oracle /bin/bash8、切换到容器内的oracle用户下:
su - oracle9、使用sys用户登录数据库: 10、修改sys用户密码:
alter user sys identified by 123456;二、配置Windows,使用 PL/SQL 连接 Docker Oracle: Docker中的配置到此结束。想要在windows使用 PL/SQL 连接Oracle,还需要进行以下操作。 1、在Windows下安装 oracle 客户端,这里下载的是Windows 精简版: 解压并安装Oracle客户端。 2、配置环境变量:
NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK ORACLE_HOME=\Oracle安装目录 path后添加:%ORACLE_HOME%\bin3、配置oracle TNS: 修改Oralce安装目录\dbhomeXE\network\admin\tnsnames.ora 文件,在 tnsnames.ora 文件中追加以下内容:
TNS名称 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = docker物理机ip )(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = 实例名 ) ) )例如,容器安装的实例名默认为 orcl:
ORA_127 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.127 )(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl ) ) )4、使用PL/SQL Developer连接配置好的数据库: 5、连接成功:
