Docker部署Oracle 11g详步骤:从拉取到PLSQL连接

需积分: 50 65 下载量 200 浏览量 更新于2023-03-16 收藏 646KB DOCX 举报
"这篇文档详细介绍了如何在Docker中拉取和配置Oracle 11g镜像,并最终通过PLSQL连接到Oracle 11g数据库的步骤。文档首先指导用户从阿里云仓库拉取Oracle 11g的镜像,然后创建并启动容器,接着在容器内部进行必要的环境配置,包括设置Oracle环境变量、创建软链接,以及修改默认的sys和system用户密码。" 在Docker中部署Oracle 11g数据库涉及多个关键步骤: 1. **拉取Oracle 11g镜像**: 使用`docker pull`命令从阿里云的Docker仓库拉取预构建的Oracle 11g镜像。命令是: ``` docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g ``` 这个过程可能需要一些时间,因为镜像体积较大。 2. **查看与确认镜像**: 镜像下载完成后,可以使用`docker images`命令检查镜像是否成功下载。 3. **创建Oracle 11g容器**: 使用`docker run`命令创建一个新的容器,将Oracle 11g服务绑定到宿主机的1521端口,并设置容器的重启策略和名称。示例命令: ``` docker run -d -p 1521:1521 --restart=always --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g ``` 4. **启动容器**: 使用`docker start`命令启动容器,例如: ``` docker start oracle11g ``` 5. **进入容器进行配置**: - **切换用户**:首先,通过`docker exec -it`命令进入容器的bash环境。 - **创建软链接**:在容器内,由于`sqlplus`命令可能不可用,需要创建软链接,使`sqlplus`可直接在路径中找到。这可以通过`ln -s`命令实现。 - **配置环境变量**:使用`export`命令设置`ORACLE_HOME`、`ORACLE_SID`和`PATH`环境变量。 - **修改profile文件**:为了永久保存环境变量,需要编辑`~/.bash_profile`或`~/.bashrc`文件。 - **切换到root用户**:可能需要以root权限执行某些操作,如编辑系统文件。 - **创建软链接**:使用`ln -s`创建从`ORACLE_HOME/bin`到`/usr/bin`的`sqlplus`链接。 - **切换回oracle用户**:确保使用`su - oracle`回到oracle用户,因为Oracle服务通常以该用户运行。 6. **配置数据库**: - **登录sqlplus**:无密码登录`sqlplus`。 - **修改默认密码**:作为`sysdba`连接,修改`sys`和`system`用户的密码。 完成以上步骤后,数据库环境应已准备就绪,可以使用PLSQL或Navicat等工具从宿主机连接到Oracle 11g容器中的数据库。在连接时,确保使用正确的主机IP(通常是宿主机IP)和端口(这里是1521),以及之前设置的用户名和密码。 请注意,实际操作中可能需要根据具体镜像和环境进行微调,如镜像中的默认设置、容器的网络配置等。此外,由于Oracle数据库的复杂性,确保遵循最佳实践和安全指导,例如定期备份、限制网络访问等。