运行在容器中的Oracle XE - 11g

2023-11-08 16:50
文章标签 oracle 运行 容器 xe 11g

本文主要是介绍运行在容器中的Oracle XE - 11g,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这里写图片描述

Oracle XE

Oracle是这样介绍XE的:11g XE(Express Edition)简化版是在Oracle11gR2基础之上一个入门级的小体量数据库,免费用于开发/部署与发布,下载很快,使用简单。

特性

Oracle XE主要适用对象:

  • 适用与适用Node.js, Python, PHP, Java, .NET, XML和开源项目的开发者
  • 需要一个免费可用于DBA进行起步阶段的数据库培训或者部署
  • 需要一个免费的起步阶段的数据库的独立软件提供商ISV(Independent Software Vendors )和硬件提供商
  • 因课程需要的教育机构或者学生

简单总结:免费的入门级的关系型数据库

限制

Oracle是这样解释XE的,一个强大的,性能已经得到证实的业界领先的软件,而且升级简单无需其他成本和复杂的移植。
为什么需要升级,因为这是一个精简版,精简的根本在于如下的限制,正是因为有了这个限制,XE才是真正的精简版而不至于才华横溢。

资源项限制
CPU一台机器上不超过一CPU
内存内存不会超过1G
数据数据库存储的数据量不会超过11G

由于有这些限制,导致即使机器性能出众也无法发挥,特别适合淘汰废弃的机器用于安装和使用,是一个非常环保的软件。

镜像获取

docker pull liumiaocn/oracle:11.2.0

启动设定

端口信息

设定项目设定值
Oracle监听端口1521
APEX服务端口8080

##环境变量

环境变量设定说明建议设定
DEFAULT_SYS_PASS系统用户密码-
processes进程数量设定值-
sessions会话数量设定值建议值:processes*1.1 + 5
transactions事务数量设定值建议值:sessions*1.1

##数据卷

数据卷容器内卷路径
Oracle数据卷/u01/app/oracle

启动实例

docker run -d                       \
-p 38080:8080 -p 31521:1521         \
-e DEFAULT_SYS_PASS=liumiaocn       \
-e processes=500                    \
-e sessions=555                     \
-e transactions=611                 \
--name oracle-11g                   \
liumiaocn/oracle:11.2.0

启动Oracle容器

[root@liumiaocn ~]# docker run -d                       \
> -p 38080:8080 -p 31521:1521         \
> -e DEFAULT_SYS_PASS=liumiaocn       \
> -e processes=500                    \
> -e sessions=555                     \
> -e transactions=611                 \
> --name oracle-11g                   \
> liumiaocn/oracle:11.2.0
f66b569769e6ba7eacf57b141afccc76cef973f3da3c6a79557c98e5d4727c2b
[root@liumiaocn ~]#

结果确认

切换至oracle用户,使用sqlplus以sysdba的身份登录进行确认

[root@liumiaocn ~]# docker exec -it oracle-11g sh
# su - oracle
oracle@32d01719b30a:~$ sqlplus /nologSQL*Plus: Release 11.2.0.2.0 Production on Tue Sep 11 15:01:15 2018Copyright (c) 1982, 2011, Oracle.  All rights reserved.SQL> connect /as sysdba
Connected.
SQL> select * from v$instance;INSTANCE_NUMBER INSTANCE_NAME
--------------- ----------------
HOST_NAME
----------------------------------------------------------------
VERSION 	  STARTUP_T STATUS	 PAR	THREAD# ARCHIVE LOG_SWITCH_WAIT
----------------- --------- ------------ --- ---------- ------- ---------------
LOGINS	   SHU DATABASE_STATUS	 INSTANCE_ROLE	    ACTIVE_ST BLO EDITION
---------- --- ----------------- ------------------ --------- --- -------1 XE
32d01719b30a
11.2.0.2.0	  11-SEP-18 OPEN	 NO	      1 STOPPED
ALLOWED    NO  ACTIVE		 PRIMARY_INSTANCE   NORMAL    NO  XESQL>

设定确认

sessions稍微发生了一些变化

SQL> conn /as sysdba
Connected.
SQL> show parameter processesNAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes 		     integer	 0
db_writer_processes		     integer	 1
gcs_server_processes		     integer	 0
global_txn_processes		     integer	 1
job_queue_processes		     integer	 500
log_archive_max_processes	     integer	 4
processes			     integer	 500
SQL> show parameter sessionsNAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
java_max_sessionspace_size	     integer	 0
java_soft_sessionspace_limit	     integer	 0
license_max_sessions		     integer	 0
license_sessions_warning	     integer	 0
sessions			     integer	 772
shared_server_sessions		     integer
SQL> show parameter transactionsNAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
transactions			     integer	 611
transactions_per_rollback_segment    integer	 5
SQL>

参考文章

https://www.oracle.com/database/technologies/appdev/xe.html

这篇关于运行在容器中的Oracle XE - 11g的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/371208

相关文章

Oracle数据库常见字段类型大全以及超详细解析

《Oracle数据库常见字段类型大全以及超详细解析》在Oracle数据库中查询特定表的字段个数通常需要使用SQL语句来完成,:本文主要介绍Oracle数据库常见字段类型大全以及超详细解析,文中通过... 目录前言一、字符类型(Character)1、CHAR:定长字符数据类型2、VARCHAR2:变长字符数

如何将Tomcat容器替换为Jetty容器

《如何将Tomcat容器替换为Jetty容器》:本文主要介绍如何将Tomcat容器替换为Jetty容器问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat容器替换为Jetty容器修改Maven依赖配置文件调整(可选)重新构建和运行总结Tomcat容器替

C++从序列容器中删除元素的四种方法

《C++从序列容器中删除元素的四种方法》删除元素的方法在序列容器和关联容器之间是非常不同的,在序列容器中,vector和string是最常用的,但这里也会介绍deque和list以供全面了解,尽管在一... 目录一、简介二、移除给定位置的元素三、移除与某个值相等的元素3.1、序列容器vector、deque

C++常见容器获取头元素的方法大全

《C++常见容器获取头元素的方法大全》在C++编程中,容器是存储和管理数据集合的重要工具,不同的容器提供了不同的接口来访问和操作其中的元素,获取容器的头元素(即第一个元素)是常见的操作之一,本文将详细... 目录一、std::vector二、std::list三、std::deque四、std::forwa

Oracle存储过程里操作BLOB的字节数据的办法

《Oracle存储过程里操作BLOB的字节数据的办法》该篇文章介绍了如何在Oracle存储过程中操作BLOB的字节数据,作者研究了如何获取BLOB的字节长度、如何使用DBMS_LOB包进行BLOB操作... 目录一、缘由二、办法2.1 基本操作2.2 DBMS_LOB包2.3 字节级操作与RAW数据类型2.

Java终止正在运行的线程的三种方法

《Java终止正在运行的线程的三种方法》停止一个线程意味着在任务处理完任务之前停掉正在做的操作,也就是放弃当前的操作,停止一个线程可以用Thread.stop()方法,但最好不要用它,本文给大家介绍了... 目录前言1. 停止不了的线程2. 判断线程是否停止状态3. 能停止的线程–异常法4. 在沉睡中停止5

查看Oracle数据库中UNDO表空间的使用情况(最新推荐)

《查看Oracle数据库中UNDO表空间的使用情况(最新推荐)》Oracle数据库中查看UNDO表空间使用情况的4种方法:DBA_TABLESPACES和DBA_DATA_FILES提供基本信息,V$... 目录1. 通过 DBjavascriptA_TABLESPACES 和 DBA_DATA_FILES

Python容器类型之列表/字典/元组/集合方式

《Python容器类型之列表/字典/元组/集合方式》:本文主要介绍Python容器类型之列表/字典/元组/集合方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 列表(List) - 有序可变序列1.1 基本特性1.2 核心操作1.3 应用场景2. 字典(D

在VSCode中本地运行DeepSeek的流程步骤

《在VSCode中本地运行DeepSeek的流程步骤》本文详细介绍了如何在本地VSCode中安装和配置Ollama和CodeGPT,以使用DeepSeek进行AI编码辅助,无需依赖云服务,需要的朋友可... 目录步骤 1:在 VSCode 中安装 Ollama 和 CodeGPT安装Ollama下载Olla

Oracle登录时忘记用户名或密码该如何解决

《Oracle登录时忘记用户名或密码该如何解决》:本文主要介绍如何在Oracle12c中忘记用户名和密码时找回或重置用户账户信息,文中通过代码介绍的非常详细,对同样遇到这个问题的同学具有一定的参... 目录一、忘记账户:二、忘记密码:三、详细情况情况 1:1.1. 登录到数据库1.2. 查看当前用户信息1.