运行在容器中的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 DBMS_SQL.PARSE的使用方法和示例

《oracleDBMS_SQL.PARSE的使用方法和示例》DBMS_SQL是Oracle数据库中的一个强大包,用于动态构建和执行SQL语句,DBMS_SQL.PARSE过程解析SQL语句或PL/S... 目录语法示例注意事项DBMS_SQL 是 oracle 数据库中的一个强大包,它允许动态地构建和执行

Go语言中三种容器类型的数据结构详解

《Go语言中三种容器类型的数据结构详解》在Go语言中,有三种主要的容器类型用于存储和操作集合数据:本文主要介绍三者的使用与区别,感兴趣的小伙伴可以跟随小编一起学习一下... 目录基本概念1. 数组(Array)2. 切片(Slice)3. 映射(Map)对比总结注意事项基本概念在 Go 语言中,有三种主要

PLsql Oracle 下载安装图文过程详解

《PLsqlOracle下载安装图文过程详解》PL/SQLDeveloper是一款用于开发Oracle数据库的集成开发环境,可以通过官网下载安装配置,并通过配置tnsnames.ora文件及环境变... 目录一、PL/SQL Developer 简介二、PL/SQL Developer 安装及配置详解1.下

通过prometheus监控Tomcat运行状态的操作流程

《通过prometheus监控Tomcat运行状态的操作流程》文章介绍了如何安装和配置Tomcat,并使用Prometheus和TomcatExporter来监控Tomcat的运行状态,文章详细讲解了... 目录Tomcat安装配置以及prometheus监控Tomcat一. 安装并配置tomcat1、安装

oracle如何连接登陆SYS账号

《oracle如何连接登陆SYS账号》在Navicat12中连接Oracle11g的SYS用户时,如果设置了新密码但连接失败,可能是因为需要以SYSDBA或SYSOPER角色连接,解决方法是确保在连接... 目录oracle连接登陆NmOtMSYS账号工具问题解决SYS用户总结oracle连接登陆SYS账号

Oracle数据库如何切换登录用户(system和sys)

《Oracle数据库如何切换登录用户(system和sys)》文章介绍了如何使用SQL*Plus工具登录Oracle数据库的system用户,包括打开登录入口、输入用户名和口令、以及切换到sys用户的... 目录打开登录入口登录system用户总结打开登录入口win+R打开运行对话框,输php入:sqlp

查询Oracle数据库表是否被锁的实现方式

《查询Oracle数据库表是否被锁的实现方式》本文介绍了查询Oracle数据库表是否被锁的方法,包括查询锁表的会话、人员信息,根据object_id查询表名,以及根据会话ID查询和停止本地进程,同时,... 目录查询oracle数据库表是否被锁1、查询锁表的会话、人员等信息2、根据 object_id查询被

mysqld_multi在Linux服务器上运行多个MySQL实例

《mysqld_multi在Linux服务器上运行多个MySQL实例》在Linux系统上使用mysqld_multi来启动和管理多个MySQL实例是一种常见的做法,这种方式允许你在同一台机器上运行多个... 目录1. 安装mysql2. 配置文件示例配置文件3. 创建数据目录4. 启动和管理实例启动所有实例

IDEA运行spring项目时,控制台未出现的解决方案

《IDEA运行spring项目时,控制台未出现的解决方案》文章总结了在使用IDEA运行代码时,控制台未出现的问题和解决方案,问题可能是由于点击图标或重启IDEA后控制台仍未显示,解决方案提供了解决方法... 目录问题分析解决方案总结问题js使用IDEA,点击运行按钮,运行结束,但控制台未出现http://

解决Spring运行时报错:Consider defining a bean of type ‘xxx.xxx.xxx.Xxx‘ in your configuration

《解决Spring运行时报错:Considerdefiningabeanoftype‘xxx.xxx.xxx.Xxx‘inyourconfiguration》该文章主要讲述了在使用S... 目录问题分析解决方案总结问题Description:Parameter 0 of constructor in x