在Docker中安装配置Oracle11g并实现数据持久化 - 许爱琪

时间:2024-03-12 19:06:51
1、拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
clipboard
由于镜像我已经拉取,所以此处显示已存在,查看镜像信息
docker iamges
clipboard
2、创建并容器信息
docker run -d -p 1521:1521 --name oracle_11g registry.aliyuncs.com/helowin/oracle_11g
docker run -d -p 8081:8080 -p 1522:1521 --name oracle11g -v /u01/app/oracle/oradata/11g:/u01/app/oracle registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
由于此处我的容器已经创建(命令如想,容器名称 oracle_11g)此处我直接启动即可。
docker start oracle_11g
clipboard
3、进入控制台设置用户信息
docker exec -it oracle_11g bash
clipboard
登录sqlplus,此处发现sqlplus命令不可用,所以需要进行相关配置,操作步骤如下:
clipboard
(1)、切换到root用户模式下
su root
输入密码helowin
clipboard
(2)、编辑profile文件配置ORACLE环境变量
vi /etc/profile 并在文件最后添加如下命令
export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2
export ORACLE_SID=helowin
export PATH=$ORACLE_HOME/bin:$PATH
clipboard
clipboard
推出并保存。
(3)、软件连接
ln -s $ORACLE_HOME/bin/sqlplus /usr/bin
clipboard
因为我已经创建过所以包标志已存在。
(4)、切换到oracle 用户
clipboard
登录sqlplus并修改sys、system用户密码
sqlplus /nolog
conn /as sysdba
clipboard
接着执行下面命令
alter user system identified by oracle;
alter user sys identified by oracle;
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
clipboard
4、登录验证
clipboard
登录成功
clipboard
5、提交修改
docker commit 容器名称或ID 新的镜像名称:版本
docker run -d -p 8080:8080 -p 1521:1521 -v /u01/app/oracle/oradata/11g:/u01/app/oracle registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
docker exec -it f412c945d07f /bin/bash