首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Oracle xe 11g在docker中,在ubuntu上重新启动停靠程序后,创建的用户将丢失。

Oracle xe 11g在docker中,在ubuntu上重新启动停靠程序后,创建的用户将丢失。
EN

Stack Overflow用户
提问于 2022-03-31 08:02:35
回答 1查看 809关注 0票数 0

我已经在Ubuntu 21.10上安装了 pulled ,并且按照官方的使用说明,我提取了oracle 11g xe映像:

docker pull oracleinanutshell/oracle-xe-11g

然后我启动了图像:

docker run -d -p 49161:1521 -p 8080:8080 oracleinanutshell/oracle-xe-11g

并使用Oracle I连接为系统并创建标准用户,授予适当的权限(创建/删除表、序列等)。

然后,我以标准用户的身份连接起来,开始创建和填充一些表。

但是当停止停靠映像并重新启动它时,用户和所有表都丢失了。如何解决这一问题?

非常感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-31 08:47:05

您需要创建一个卷以保持持久数据。而且,一旦你开始处理这些事情。最好是用船坞组合来处理。

选项1使用码头

首先创建卷:

代码语言:javascript
复制
docker volume create db-vol

然后,使用以下命令将数据存储在哪里:

代码语言:javascript
复制
docker run -d -p 49161:1521 -p 8080:8080 -v db-vol:/opt/oracle/oradata oracleinanutshell/oracle-xe-11g

选项2使用码头组合

代码语言:javascript
复制
version: '3'

services: 
  oracle-db:
    image: oracleinanutshell/oracle-xe-11g:latest
    ports:
      - 1521:1521
      - 5500:5500
    volumes:
      - db-vol:/opt/oracle/oradata
volumes:
 db-vol:

请在这里找到所需概念的理论:

https://docs.docker.com/storage/volumes/

https://hub.docker.com/r/oracleinanutshell/oracle-xe-11g

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71688988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档