docker 安装orcale11数据库

初次安装流程

1.拉取 oracle 11g 镜像(有6g,要等较长的时间):

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

2.执行以下命令以创建并运行 Oracle 11g 容器(其中:30026为映射主机端口,8081为管理界面端口,helowin为Oracle数据库唯一实例ID,这些都是可以配置的):

docker run -d -p 30026:1521 -p 8081:8080 \
--name oracle_11g \
-e ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2 \
-e ORACLE_SID=helowin \
registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g

3.查看容器是否启动:

docker ps -a|grep oracle_11g

4.进入容器:

docker exec -it oracle_11g bash

5.依次执行(单步执行):

# 1. 切换至root用户(默认是oracle用户),密码为helowinsu root# 2. 创建软链接ln -s $ORACLE_HOME/bin/sqlplus /usr/bin# 3.切换回oracle用户su oracle# 4. 登录sql plussqlplus / as sysdba## 4.1 修改system用户密码为systemalter user system identified by system;## 4.2 修改sys用户密码为systemalter user sys identified by system;## 4.3 新增一个测试用户(用户名:test,密码:test123);create user test identified by test123;## 4.4 将dba权限给内部管理员账号和密码grant connect,resource,dba to test;## 4.5 修改密码策略规则为:密码永不过期ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;## 4.6 修改数据库最大连接数;alter system set processes=1000 scope=spfile;## 4.7 最后重启数据库;shutdown immediate;startup;# 5.退出exit

6.navicat验证,账号密码有3个:
• system/system
• sys/system
• test/test123

2.导出为镜像

1.docker images 找到oracle_11g的IMAGE ID

REPOSITORY                                                                TAG                 IMAGE ID            CREATED             SIZE
oracle_11g                                                                test                bc20dd23fb5a        3 hours ago         6.86GB
flannel/flannel                                                           v0.24.1             5309e5fd33b8        5 months ago        76MB
flannel/flannel-cni-plugin                                                v1.2.0              a55d1bad692b        11 months ago       8.04MB
busybox                                                                   latest              beae173ccac6        2 years ago         1.24MB
httpd                                                                     latest              dabbfbe0c57b        2 years ago         144MB
prom/node-exporter                                                        latest              1dbe0e931976        2 years ago         20.9MB
fortio/fortio                                                             latest_release      acf790649534        2 years ago         12.1MB

2.停止镜像

docker stop 7d7e07743b89

3.容器实例创建一个新的Docker镜像

docker commit  7d7e07743b89 oracle_11g:test

4.保存镜像文件为tar包(二选一)
当前目录

docker save -o oracle_11g.tar oracle_11g:test

指定目录(/var/tmp)

docker save -o /var/tmp/orcale_11g.tar oracle_11g:test

5.下载镜像并上传到linux服务器

6.docker load 命令来从tar文件重新加载镜像

docker load -i orcale_11g.tar

此时执行 docker images 命令可以看到被加载的镜像

docker images 

使用镜像

1.执行以下命令以创建并运行 Oracle 11g 容器(其中:30026为映射主机端口,8081为管理界面端口,helowin为Oracle数据库唯一实例ID,这些都是可以配置的):

docker run -d -p 30026:1521 -p 8081:8080 \
--name oracle_11g \
-e ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_2 \
-e ORACLE_SID=helowin \
oracle_11g:test

注意最后一行有变化,使用的是load的镜像

3.查看容器是否启动:

docker ps -a|grep oracle_11g

4.进入容器:

在这里插入代码片
docker exec -it oracle_11g bash

5.依次执行(单步执行):

# 1. 切换至root用户(默认是oracle用户),密码为helowinsu root# 2. 创建软链接ln -s $ORACLE_HOME/bin/sqlplus /usr/bin# 3.切换回oracle用户su oracle# 4. 登录sql plussqlplus / as sysdba## 4.1 修改system用户密码为systemalter user system identified by system;## 4.2 修改sys用户密码为systemalter user sys identified by system;## 4.3 新增一个测试用户(用户名:test,密码:test123);create user test identified by test123;## 4.4 将dba权限给内部管理员账号和密码grant connect,resource,dba to test;## 4.5 修改密码策略规则为:密码永不过期ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;## 4.6 修改数据库最大连接数;alter system set processes=1000 scope=spfile;## 4.7 最后重启数据库;shutdown immediate;startup;# 5.退出exit

6.navicat验证,账号密码有3个:
• system/system
• sys/system
• test/test123

4.1报错解决

SQL> alter user system identified by system;
SP2-0640: Not connected 

解决方法: 执行命令 sqlplus / as sysdba

SQL> alter user system identified by system;
alter user system identified by system*
ERROR at line 1:
ORA-01109: database not open

解决方法: 执行命令 ALTER DATABASE OPEN;

SQL> ALTER DATABASE OPEN;
ALTER DATABASE OPEN
*
ERROR at line 1:
ORA-01507: database not mounted

解决方法: 执行命令 ALTER DATABASE MOUNT;

SQL> ALTER DATABASE MOUNT;
ALTER DATABASE MOUNT
*
ERROR at line 1:
ORA-00214: control file
'/home/oracle/app/oracle/flash_recovery_area/helowin/control02.ctl' version 864
inconsistent with file '/home/oracle/app/oracle/oradata/helowin/control01.ctl'
version 841

解决方法:

cd /home/oracle/app/oracle/oradata/helowin

ls 可以看到control01.ctl

复制文件:cp control01.ctl /home/oracle/app/oracle/flash_recovery_area/helowin
进入目录:cd /home/oracle/app/oracle/flash_recovery_area/helowin
重命名control02.ctl:cp control02.ctl control02.ctl.bkk
重命名control01.ctl为control02.ctl:cp control01.ctl control02.ctl

然后登录sql plus

sqlplus / as sysdba

SQL> 后面为要执行的内容,依次执行下面的sql。

SQL> ALTER DATABASE MOUNT;Database altered.SQL> ALTER DATABASE OPEN;Database altered.SQL> alter user system identified by system;User altered.SQL> alter user sys identified by system;User altered.SQL> create user test identified by test123;User created.SQL> grant connect,resource,dba to test;Grant succeeded.SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;Profile altered.SQL> alter system set processes=1000 scope=spfile;System altered.SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup;
ORACLE instance started.Total System Global Area 1603411968 bytes
Fixed Size                  2213776 bytes
Variable Size             402655344 bytes
Database Buffers         1191182336 bytes
Redo Buffers                7360512 bytes
Database mounted.
Database opened.
SQL> exit

可以使用上面的3个账号进行验证了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/45790.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python学习1---深浅拷贝

在Python中,当我们复制对象时,有两种主要的方式:深拷贝(Deep Copy)和浅拷贝(Shallow Copy)。 一、浅拷贝(Shallow Copy) 浅拷贝创建一个新对象,但是它包含的…

[1]从概念到实践:电商智能助手在AI Agent技术驱动下的落地实战案例深度剖析(AI Agent技术打造个性化、智能化的用户助手)

电商智能助手进化论:AI Agent技术引领下的智能化升级与实战效果评估 1.LLM Agent 的整体概述 1.0 Agent 在学术界的热度持续攀升 人工智能应用的几个阶段LLM Agent 的构成要素 语言模型 (LLM) 仅限于它们所训练的知识,并且这些知识很快就会过时。且 LLM 具备以下缺点: 会产…

PG大会周五于杭州举办;Pika发布4.0;阿里云MySQL上线Zero-ETL集成能力

重要更新 1. PostgreSQL中国技术大会举行12日(周五)于杭州举办,是PostgreSQL社区年度的大会,举办地点:杭州君尚云郦酒店(杭州市上城区临丁路1188号),感兴趣的可以考虑现场参加 ( [1]…

【公益案例展】华为云X《无尽攀登》——攀登不停,向上而行

‍ 华为云公益案例 本项目案例由华为云投递并参与数据猿与上海大数据联盟联合推出的 #榜样的力量# 《2024中国数据智能产业最具社会责任感企业》榜单/奖项”评选。 大数据产业创新服务媒体 ——聚焦数据 改变商业 夏伯渝,中国无腿登珠峰第一人,一生43年…

Guava LocalCache源码分析:LocalCache生成

Guava LocalCache源码分析:Cache生成 版本LocalCache参数说明Cache构建过程LocalCache介绍LocalCache实例化将builder中的属性赋值到LocalCache中分段 LocalCache为guava本地缓存的解决方案,提供了基于容量,时间和引用的缓存回收方式&#xf…

目标检测大揭秘:算法种类与优劣分析

目标检测大揭秘:算法种类与优劣分析🔍 在当今这个信息爆炸的时代,图像识别技术正逐渐成为我们生活中不可或缺的一部分。目标检测作为图像识别领域的重要分支,已经广泛应用于安全监控、自动驾驶、智能家居等多个领域。今天&#x…

算法复杂度<数据结构 C版>

什么是算法复杂度? 简单来说算法复杂度是用来衡量一个算法的优劣的,一个程序在运行时,对运行时间和运行空间有要求,即时间复杂度和空间复杂度。 目录 什么是算法复杂度? 大O的渐近表达式 时间复杂度示例 空间复杂度…

Python向某个网页发起请求

在Python中,向某个网页发起请求最常用的库是requests。该库简单易用,支持HTTP的GET、POST、PUT、DELETE等方法。以下是如何使用requests库向网页发起请求的例子: 首先,你需要确保安装了requests库。如果你还没有安装,…

Jenkins 离线升级

1. 环境说明 环境 A: jenkins 版本:2.253使用 systemctl 管理的 jenkins 服务 环境 B: 可以上网的机器,装有 docker-compose docker 和 docker-compose 安装,这里都略了。 2. 安装旧版本 2.1 环境 A jenkins 目录打包文件 …

2024辽宁省大学数学建模竞赛试题思路

A题 (1) 建立模型分析低空顺风风切变对起飞和降落的影响 模型假设 飞机被视为质点,忽略其尺寸和形状对风阻的影响。风切变仅考虑顺风方向的变化,忽略其他方向的风切变。飞机的飞行速度、高度和姿态(如迎角、俯仰角)是变化的&am…

(补充):java各种进制、原码、反码、补码和文本、图像、音频在计算机中的存储方式

文章目录 前言一、进制1 逢几进一2 常见进制在java中的表示3 进制中的转换(1)任意进制转十进制(2)十进制转其他进制二、计算机中的存储1 计算机的存储规则(文本数据)(1)ASCII码表(2)编码规则的发展演化2 计算机的存储规则(图片数据)(1)分辨率、像素(2)黑白图与灰度…

服务器操作集合

服务器使用PC作为代理访问外网 1、PC上启动代理,比如nginx 下载nginx:http://nginx.org/en/download.html 修改配置文件,在conf下: http {include mime.types;default_type application/octet-stream;sendfile o…

深入理解二叉树遍历:递归与迭代实现

介绍 在数据结构中,二叉树是一种重要且常见的数据结构,它的遍历方式包括先序、中序和后序三种。本文将通过Java语言,详细讲解如何实现这三种遍历方式的递归和迭代版本。 二叉树定义 首先,我们定义二叉树的节点类 TreeNode&…

罗技K380无线键盘及鼠标:智慧互联,一触即通

目录 1. 背景2. K380无线键盘连接电脑2.1 键盘准备工作2.2 电脑配置键盘的连接 3. 无线鼠标的连接3.1 鼠标准备工作3.2 电脑配置鼠标的连接 1. 背景 有一阵子经常使用 ipad,但是对于我这个习惯于键盘打字的人来说,慢慢在 ipad 上打字,实在是…

面试真题 | ARM体系架构基础知识

ARM体系架构基础知识 什么是ARM架构?它有哪些特点和优势? 参考答案 ARM架构(Advanced RISC Machine)是一种处理器架构,广泛应用于移动设备、嵌入式系统和低功耗应用中。以下是ARM架构的一些特点和优势: 简化指令集:ARM采用精简指令集(RISC, Reduced Instruction Set Co…

cv::Mat 操作多维矩阵的思路

现在有一个 [20(rows) * 20(cols) * 144(channels)]的矩阵&#xff0c;我们想截取一个[20 * 20 * 80]的子矩阵&#xff1a; int dims[3] {20, 20, 144}; cv::Mat mat(cv::Size(dims[1], dims[0]), CV_32FC(dims[2]), (void*)input); const std::vector<cv::Range>&…

conda install问题记录

最近想用代码处理sar数据&#xff0c;解放双手。 看重了isce这个处理平台&#xff0c;在安装包的时候遇到了一些问题。 这一步持续了非常久&#xff0c;然后我就果断ctrlc了 后面再次进行尝试&#xff0c;出现一大串报错&#xff0c;不知道是不是依赖项的问题 后面看到说mam…

模块化(一)nodejs

模块化 一.模块化的基本概念1.1 什么是模块化1.2 模块化规范 二.Node.js 中的模块化2.1 Node.js 中模块的分类2.2 加载模块2.3 Node.js 中的模块作用域2.4 向外共享模块作用域中的成员 一.模块化的基本概念 1.1 什么是模块化 模块化 是指解决一个 复杂问题 时&#xff0c;自顶…

从Centos7升级到Rocky linux 9后,网卡连接显示‘Wired connection 1‘问题解决方法

问题描述 从Centos7升级到Rocky9后, 发现网卡eth0的IP不正确。通过nmcli查看网卡连接&#xff0c;找不到name为eth0的连接&#xff0c;只显示’Wired connection 1’ 查看/etc/NetworkManager/system-connections/&#xff0c;发现找不到网卡配置文件。 原因分析 centos7使…

华为OD机试 - 堆内存申请(Java 2024 D卷 100分)

华为OD机试 2024D卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试&#xff08;JAVA&#xff09;真题&#xff08;D卷C卷A卷B卷&#xff09;》。 刷的越多&#xff0c;抽中的概率越大&#xff0c;每一题都有详细的答题思路、详细的代码注释、样例测…