centos在docker中安装oracle -凯发k8国际

`
wallimn
  • 浏览: 5070180 次
  • 性别:
  • 来自: 北京
最近访客
^=^
博主相关
  • 博客
  • 微博
  • 相册
  • 收藏
  • 文章分类
    社区版块
    • ( 0)
    • ( 22)
    • ( 0)
    存档分类
    最新评论
    • : 先拿走看看
    • wallimn: masuweng 写道发下源码下载地址吧!三个相关文件打了个包 ...
    • masuweng: 发下源码下载地址吧!
    • masuweng:                 
    • wallimn: 水淼火 写道你好,我使用以后,图标不显示,应该怎么引用呢,谢谢 ...

    centos在docker中安装oracle

      博客分类:
    1.拉取oracle镜像,并检查结果,时间较长
    docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
    docker images


    2.创建容器
    docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
    #上面命令说明:创建一个名为oracle11g的容器,并进行端口映射


    3.进入容器,运行命令
    docker exec -it -u root oracle11g bash
    #上面命令说明:进入容器,身份为root。

    vi /etc/profile
    #上面命令说明:编辑profile,加入下面两条环境变量,调整path设置。
    export oracle_home=/home/oracle/app/oracle/prouct/11.2.0/dbhome_2
    export oracle_sid=helowin
    export path=$oracle_home/bin:$path

    source /etc/profile
    #上面命令说明:使环境变量立即生效

    ln -s $oracle_home/bin/sqlplus /usr/bin
    #上面命令说明:创建软连接

    su - oracle
    sqlplus /nolog
    conn / as sysdba
    shutdown immediate
    startup
    select count(*) from tab;
    alter user system identified by oracle;
    alter user sys identified by oracle;
    alter profile default limit password_life_time unlimited;
    alter system set processes=1000 scope=spfile;
    #上面命令说明:切换用户,sqlplus连接oracle,关闭数据库(此时database处于nomount状态,先关再开操作方便。正统的办法是执行两条命令:alter database mount;alter database open;),启动数据库,执行统计表数量的测试命令,修改用户密码、密码不过期、进程数量。
    #如果一切正常,再执行下面命令(sqlplus中,shutdown immediate)关闭数据库。因为后续要进行目录映射,拷贝数据文件、控制文件等,必须要在数据库关闭情况下复制,不然启动会有问题。实际上相当于数据库冷备份与恢复。

    4.退出sqlplus、退出容器,进入宿主机,拷贝数据文件、控制文件
    #多次执行exit,观察命令提示符,进入宿主机器执行命令。
    mkdir -p /opt/oracle/oradata
    docker cp oracle11g:/home/oracle/app/oracle/oradata/ /opt/oracle/oradata/
    #上面命令说明:宿主机创建目录,拷贝容器中oracle的数据文件到宿主机目录


    5.重新创建容器,设置目录映射
    #比较正统的办法,应该是修改容器的启动参数。简单粗暴一点儿,先删除,再重新创建。
    docker rm -f oracle11g
    docker run -d --name oracle11g --restart unless-stopped \
    -v /opt/oracle/oradata/helowin:/home/oracle/app/oracle/oradata/helowin \
    -p 1521:1521 registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g
    #仅映射了数据文件、控制文件,根据需要映射闪回文件、日志文件等。


    6.进入容器,执行命令
    #因为删除容器重新创建,所以要再执行一次。详细情况参见3。关闭数据库,启动数据库。如无异常,就完成了。常见两个异常。情况、原因及处置方法如下。

    #异常1:如果提示ora-00214错误,控制文件不一致。用/home/oracle/app/oracle/oradata/helowin/control01.ctl覆盖/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连接后,关闭数据库,再开。

    #异常2:ora-00205,这个应该是文件访问权限的问题。在容器中,设置数据文件、控制文件(经过映射后,实际为宿主机上的文件)的访问权限。
    chown -r oracle:oinstall /home/oracle/app/oracle/oradata/helowin
    #设置后,sqlplus连接后,关闭数据库,再开。

    ===整理完善,by wallimn,2024-02-06,转载请保留===
    0
    0
    分享到:
    评论

    相关推荐

      docker 安装 oracle11g(centos)

      centos7离线安装oracle 11g_r2所有离线依赖包,并附详细安装说明,安装详细说明和依赖包,轻松在centos7安装oracle

      离线镜像文件大概有3个多g,存放在百度云上面,下面附上我们总结在window10 上和centos 上面创建docker for oracle 12c 容器的经验内容,坑过多少坑了。再也不需要使用安装版的oracle 。 具体: store/oracle/...

      辛苦整理了oraclelinux7 centos7 redhat7离线安装docker教程以及依赖。

      docke安装oracle,删除实例

      centos7下利用docker部署oracle11g,附操作所有流程,简单易学,包用包会,所有命令流程和截图

      centos7.6.1810(或asianux-7.3)操作系统中安装oracle19c数据库以及补丁安装过程

      80 install 在oracle linux 6和7上安装oracle 18c 81 master note for oracle flashback technologies (文档 id 1138253.1) 82 netbackup_troubleshoot_guide 83 oceanstorf面向oracle数据库olap最佳实践 84 ...

      docker-centos7-jre8 基于 centos 7 的带有 oracle jre 8 的 docker 容器

      docker engine是业界事实上的容器运行时,可以在各种linux(centos,debian,fedora,oracle linux,rhel,suse和ubuntu)和windows server操作系统上运行。 docker创建了简单的工具和通用打包方法,将所有应用程序...

      docker engine是业界事实上的容器运行时,可在各种linux(centos,debian,fedora,oracle linux,rhel,suse和ubuntu)和windows server操作系统上运行。docker创建了简单的工具和通用打包方法,将所有应用程序依赖...

      本次博文以oracle 12c数据库的64位企业版为例,学习如何在centos 操作系统中的安装和基本配置,包括安装的准备等。 博文大纲: 一、安装oracle 12c 二、创建oracle 12c数据库 三、oracle 12c数据库的启动与关闭 四...

      oracle oracle的jdk安装在最新的centos容器之上。 该容器基于最新版本的centos构建。

      docker engine是业界事实上的容器运行时,可在各种linux( centos , debian , fedora , oracle linux , rhel , suse和ubuntu )和windows server操作系统上运行。 docker创建了简单的工具和通用打包方法,将...

      docker engine是业界事实上的容器运行时,可在各种linux( centos , debian , fedora , oracle linux , rhel , suse和ubuntu )和windows server操作系统上运行。 docker创建了简单的工具和通用打包方法,将...

      dockerized-oracle-wls ... oracle 数据库实例在容器中运行,但 oracle 数据库实例文件是在主机上而不是在容器中创建的 一些用于创建 weblogic 域(在主机上)并在容器中启动管理服务器的脚本。 它旨在在 b

      dockerhub 快速搭建基础环境、安全环境。dvwa webgoat snort elk openvas mysql redis oracle weblogic tomcat nginx websphere jboss struts2实例 juice-shop centos

      docker-java-oracle:oracle提供的java 81114的docker映像

      用于在文档属性中使用预定义的脚本用下一个别名更新您的“ .bashrc” (或仅更新目标会话) export root_docker_images= " /home/projects/docker-images "馆藏码头工人图像通用的docker镜像集: ubuntu-jdk8-tomcat...

      支持以下操作系统: centos的7 红帽7 软呢帽24 浅顶软呢帽23 浅顶软呢帽26 软呢帽27 浅顶软呢帽29 oraclelinux 7 ubuntu 14.04 ubuntu 16.04要求此角色需要ansible 2.4或更高版本。 需求列在元数据文件中。 如果您...

    global site tag (gtag.js) - google analytics
    网站地图