一种快速部署开发用oracle的办法
前段时间工作中需要在不少开发环境中快速提供开发可用的oracle环境,由于一一培训并部署原生oracle人力和时间成本过高,后来使用docker版本oracle,大大方便了开发工作的快速启动,方法记录如下:
1. 前提条件
需要在相关环境上安装好docker,建议版本在17以上,越新越好;同时安装好 docker-compose 。
docker安装(CentOS系统上)可以参考官方文档: https://docs.docker.com/install/linux/docker-ce/centos/
docker-compose 安装参考官方文档: https://docs.docker.com/compose/install/
2. 安装完毕后,编辑好oracle的docker-compose 启动描述文件
使用oracle-xe-11 版本,
首先,下载镜像并创建目录
docker pull sath89/oracle-xe-11g
mkdir oracle-xe-11g
cd oracle-xe-11g
vi docker-compose.yaml
docker-compose.yaml描述文件内容如下:
version: "3"
services:
orcl11g:
image: sath89/oracle-xe-11g
environment:
processes: "500"
sessions: "555"
transactions: "610"
DEFAULT_SYS_PASS: "oracle"
ports:
- "18080:8080"
- "11521:1521"
volumes:
- ./db-data:/u01/app/oracle
- ./db-initsql:/docker-entrypoint-initdb.d
最后启动该oracle镜像:
docker-compose up -d
注意:若使用docker-compose up 命令启动一段时间(比如30秒)后ctrl+C中断,再docker-compose up -d 则可能出现该oracle再也无法启动,报错信息各异。此时使用 docker-compose down -v清理一次,并删除挂载的目录后,再次启动即可。
3. oracle的基本管理
管理员权限连接上该oracle实例:
sqlplus /nolog
connect system@oracle@//localhost:11521/XE;
注意:上述命令中,oracle为system的默认密码,在docker-compose.yaml 中进行配置,且仅在初次启动时生效;11521为docker映射的端口;XE为默认ServiceName
创建应用数据库以及用户名:
create tablespace user1 datafile '/u01/app/oracle/oradata/XE/user1_1.dbf' size 10m autoextend on;
create user user1 identified by password1234 default tablespace user1 temporary tablespace temp quota unlimited on user1;
grant resource to user1;
grant connect to user1;
注意:上述命令将创建用户user1,密码为password1234,默认表空间名为user1,初始大小为10m且自动扩展;同时赋予该用户基本的connect和resources权限
解锁用户
alter user user1 account unlock;
彻底删除用户和对应的表空间:
drop user user1 cascade
; drop tablespace user1 including contents and datafiles
;
最后,特别说明:
1. 该版本的oracle支持的最大表空间为11G左右,即其总表空间大小达到11G左右时会出现无法分配空间的情况。
2. 上述SQL指令,若无特别说明,则应该在sqlplus管理员权限模式下执行。
一种快速部署开发用oracle的办法的更多相关文章
- 【FindReport】图表快速部署开发
在线帮助文档:http://help.finereport.com/ 开发部署环境:Java Tomcat 数据可视化工具 大屏动态显示
- 开发环境中快速部署Oracle Essbase(Rapid deployment of oracle essbase in development envrioments)
版本:Oracle Enterprise Performance Management System Release11.1.2.4 快速部署自动安装组件: Essbase Oracle Essbas ...
- 为 Python Server Pages 和 Oracle 构建快速 Web 开发环境。
为 Python Server Pages 和 Oracle 构建快速 Web 开发环境. - 在水一方 - 博客频道 - CSDN.NET 为 Python Server Pages 和 Oracl ...
- Linux上oracle精简版客户端快速部署
RHEL6 + Oracle 11g客户端快速部署 需求:只是用到客户端的sqlplus, sqlldr功能. 方案:用精简版实现客户端的快速部署 1.上传oracle精简版客户端到服务器/tmp目录 ...
- ios-实现项目在开发、测试、正式环境快速部署
快速部署:简单的来说,就是不用更改开发.测试.正式环境下的 url ,来实现在同一台测试手机快速部署三种项目状态. Bundle ID一样只会出现一个app:不一样会出现三个app: 具体步骤: 一. ...
- Spring Boot 五种热部署方式,极速开发就是生产力!
1.模板热部署 在 Spring Boot 中,模板引擎的页面默认是开启缓存的,如果修改了页面的内容,则刷新页面是得不到修改后的页面的,因此我们可以在application.properties中关闭 ...
- 开发阶段,将SpringBoot应用快速部署到K8S
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- 如何使用华为软件开发云快速部署PHP网站
华为软件开发云这个工具,从去年推出我就一直在关注,毕竟是华为最新的一款软件开发工具,最近我一直在使用华为软件开发云进行开发项目管理,它有在线编译和构建.云端在线代码检查等功能,编译省去了很多物理机器的 ...
- 快速部署ldap服务
快速部署ldap服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.LDAP概述 .什么是目录服务 ()目录是一类为了浏览和搜索数据二十几的特殊的数据库,例如:最知名的的微软公 ...
随机推荐
- Post传值到后台经典场景(C#)
经典场景 传输内容包含 文件 注意事项:类型必须为form-data [HttpPost] [Route("api/Test")] public JsonResult Test(s ...
- 如何开始DDD
在开始DDD之前,你需要了解DDD的一些基础知识,聚合(AggregateRoot).实体(Entity).值对象(ValueObject),工厂(Factory),仓储(Repository)和领域 ...
- 基于Flume的日志收集系统方案参考
前言 本文将简单介绍两种基于Flume的日志收集系统可能的架构方案,可根据不同的实际场景参考使用. 方案一 示例图如下: 说明: 每个日志源(http上报.日志文件等)对应一个Agent-c用于收集对 ...
- OpenGL10-骨骼动画原理篇(1)
视频教程请关注 http://edu.csdn.net/lecturer/lecturer_detail?lecturer_id=440 本例程展示如何建立骨骼动画,有些人叫蒙皮动画 定义如下: 当前 ...
- SaltStack快速入门-配置管理
1:定义远程配置时描述位置,salt配置用的是一种yaml的描述语法,saltstack也是可以分环境的,比如测试环境.生产环境,默认是base,base也是必须存在的,修改内容如下: file_ro ...
- mysql更新表中日期字段时间
DATE_ADD和DATE_SUB函数可以用INTERVAL关键字标识的时间间隔进行加减操作,类似于PHP中的strtotime函数. 1.更新表中有效期valid_time字段值都增加一天 UPDA ...
- mybatis教程6(逆向工程)
什么是逆向工程 简单点说,就是通过数据库中的单表,自动生成java代码. Mybatis官方提供了逆向工程,可以针对单表自动生成mybatis代码(mapper.java\mapper.xml\po类 ...
- mybatis mapper xml文件的导入方式和查询方式
mybatis mapper xml文件的导入方式和查询方式 ssm框架 Mybatis mapper与SQLSession的关系 每个基于MyBatis的应用都是以一个SqlSessionFact ...
- 一文看懂https如何保证数据传输的安全性的【转载、收藏】
一文看懂https如何保证数据传输的安全性的 一文看懂https如何保证数据传输的安全性的 大家都知道,在客户端与服务器数据传输的过程中,http协议的传输是不安全的,也就是一般情况下http是明 ...
- VS2015企业版专业版密钥
亲测可用,有需要的可以mark一下! 专业版:HMGNV-WCYXV-X7G9W-YCX63-B98R2企业版:HM6NR-QXX7C-DFW2Y-8B82K-WTYJV