ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

docker安装oracle,并实现数据持久化

2021-06-28 12:06:02  阅读:173  来源: 互联网

标签:helowin 持久 test 版本控制 oracle home docker


文章目录


拉取镜像

docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

启动一个临时容器,获取初始化数据

docker run -d --name test --restart unless-stopped \
-p 1521:1521 registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
mkdir -p /var/oracle11/data
docker cp test:/home/oracle/app/oracle/oradata/helowin /var/oracle11/data
cd /var/oracle11/data
chown -R 500.500 helowin  # 500 500 是容器内 oracle 组和用户的 id

启动容器

docker rm -f test
docker run -d --name oracle11g --restart unless-stopped \
-v /var/oracle11/data/helowin:/home/oracle/app/oracle/oradata/helowin \
-p 1521:1521 registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

初始化数据库

docker exec -it oracle11g bash
su - oracle		#密码为helowin
cd /home/oracle/
source .bash_profile
sqlplus / as sysdba		# 连接 oracle 数据库
alter user system identified by oracle;                   # 修改 DBA 账号的密码
alter user sys identified by oracle;                      # 修改 DBA 账号的密码
alter profile default limit password_life_time unlimited; # 设置密码为永不过期
create user test identified by oracle;                    # 创建一个 test 用户,密码 oracle
select * from dba_users t where t.username = 'TEST';      # 查询用户是否创建成功
grant connect, resource to test;                          # 给用户授予连接和数据权限

解决修改密码时提示“ORA-01109: database not open”的问题

在这里插入图片描述

删除新生成的版本控制文件,将数据卷中的版本控制文件复制为新生成的版本控制文件

rm -rf /home/oracle/app/oracle/flash_recovery_area/helowin/control02.ctl
cp /home/oracle/app/oracle/oradata/helowin/control01.ctl /home/oracle/app/oracle/flash_recovery_area/helowin/control02.ctl
sqlplus / as sysdba          # 以 dba 身份连接 oracle 数据库
shutdown immediate           # 关闭数据库实例(这里会报错,不用管)
startup                      # 启动实例

标签:helowin,持久,test,版本控制,oracle,home,docker
来源: https://blog.csdn.net/anqixiang/article/details/118296293

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有