java 数据库转储_从源控制数据库驱动的应用程序所需的转储开始?
与完全基于脚本或数据库增量工具相比,使用转储文件作为数据和模式迁移的基础有哪些优缺点?
上下文是应用程序正在 生产环境 中,并且只有一个 生产环境 数据库 . 应用程序和数据库架构正在积极开发中 . 关键用户数据存在于 生产环境 数据库中,必须通过部署新版本或修订来推进 .
正在讨论的解决方案是:
转储文件基础 -
从参考点转储文件开始 .
数据库alter scripts被检入源代码管理 .
部署需要加载转储文件,然后运行alter脚本
架构迁移
整个模式和某些非用户配置数据在SCM中存储为DDL和DML .
针对最新版本模式的迁移脚本存储在SCM中 .
部署需要加载架构然后迁移数据 . 3 .
我的直觉是使用二进制格式作为基础是不好的,但我需要能够说服其他人(如果确实如此),谁认为这是必要的 .
我重新制定了这个问题,以便更容易回答 .
以下是原始问题:
我正在与数据库驱动的企业应用程序团队合作,并希望改进我们的流程 . 目前,围绕所有层更新数据库有很多手动过程 . 目标是实现自动化流程,以自动化方式更新数据库(符合原子提交的理念,更接近持续交付),这将带来许多优势 . 我认为应该在源代码控制中表示模式(以及应用程序配置所需的某些数据),此外,还需要从当前 生产环境 数据库转换和加载用户数据所需的任何脚本 . 我已经读过,不建议在源代码管理中使用转储文件(.dmp),直觉上,我强烈同意 . 但是我对项目的每个人都不同意 . 反驳的论点是,实际上不可能,或者至少太难,不能从转储文件开始 . 我违背了我对数据库知识的限制,无法真正进行有意义的辩论......我更像是一名开发人员,而不是数据库专家 . 建议的替代方案是保留更改脚本以将转储更改为最新模式 . 有人能帮我理解每种方法的优缺点吗?基于转储的方法是必要的,一个好主意,还是一个好主意,为什么?可能相关的一点背景:应用程序正在 生产环境 中,因此每个新版本必须作为部署过程的一部分导入数据,并且出于集成和UAT层的明显原因,这应该是真实数据 . 然而,这个应用程序不是由客户“运送”和安装的,在给定时间内只有一个 生产环境 实例,在内部维护 . 我意识到我的项目会有详细的细节,所以答案必须解决一般情况 .
java 数据库转储_从源控制数据库驱动的应用程序所需的转储开始?相关推荐
- java计算机毕业设计商店管理系统源码+数据库+系统+lw文档+mybatis+运行部署
java计算机毕业设计商店管理系统源码+数据库+系统+lw文档+mybatis+运行部署 java计算机毕业设计商店管理系统源码+数据库+系统+lw文档+mybatis+运行部署 本源码技术栈: 项目 ...
- 基于JAVA人事管理系统计算机毕业设计源码+数据库+lw文档+系统+部署
基于JAVA人事管理系统计算机毕业设计源码+数据库+lw文档+系统+部署 基于JAVA人事管理系统计算机毕业设计源码+数据库+lw文档+系统+部署 本源码技术栈: 项目架构:B/S架构 开发语言:Ja ...
- 基于JAVA高校体育场馆管理计算机毕业设计源码+数据库+lw文档+系统+部署
基于JAVA高校体育场馆管理计算机毕业设计源码+数据库+lw文档+系统+部署 基于JAVA高校体育场馆管理计算机毕业设计源码+数据库+lw文档+系统+部署 本源码技术栈: 项目架构:B/S架构 开发语 ...
- java计算机毕业设计银行贷款管理系统源码+数据库+系统+lw文档+部署
java计算机毕业设计银行贷款管理系统源码+数据库+系统+lw文档+部署 java计算机毕业设计银行贷款管理系统源码+数据库+系统+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语言:Ja ...
- java计算机毕业设计口腔医院网站源码+数据库+lw文档+系统
java计算机毕业设计口腔医院网站源码+数据库+lw文档+系统 java计算机毕业设计口腔医院网站源码+数据库+lw文档+系统 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件: ...
- java计算机毕业设计医院管理系统源码+数据库+系统+lw文档+mybatis+运行部署
java计算机毕业设计医院管理系统源码+数据库+系统+lw文档+mybatis+运行部署 java计算机毕业设计医院管理系统源码+数据库+系统+lw文档+mybatis+运行部署 本源码技术栈: 项目 ...
- java计算机毕业设计问卷调查系统源码+数据库+系统+lw文档+mybatis+运行部署
java计算机毕业设计问卷调查系统源码+数据库+系统+lw文档+mybatis+运行部署 java计算机毕业设计问卷调查系统源码+数据库+系统+lw文档+mybatis+运行部署 本源码技术栈: 项目 ...
- java计算机毕业设计教务管理系统源码+数据库+系统+lw文档+mybatis+运行部署
java计算机毕业设计教务管理系统源码+数据库+系统+lw文档+mybatis+运行部署 java计算机毕业设计教务管理系统源码+数据库+系统+lw文档+mybatis+运行部署 本源码技术栈: 项目 ...
- java计算机毕业设计汽车销售系统源码+数据库+系统+lw文档+mybatis+运行部署
java计算机毕业设计汽车销售系统源码+数据库+系统+lw文档+mybatis+运行部署 java计算机毕业设计汽车销售系统源码+数据库+系统+lw文档+mybatis+运行部署 本源码技术栈: 项目 ...
最新文章
- 带修莫队 ---- 离散化 + 暴力 + 带修莫队 F. Machine Learning
- Centos7上yum安装mongodb4-2
- 第二章 -- (第一单元) -- 自动安装虚拟机
- html frame跳转实例,HTML frame标签怎么用?frame标签的具体使用实例
- 前端 HTML 常用标签 head标签相关内容 script标签
- 西瓜书+实战+吴恩达机器学习(十二)监督学习之AdaBoost
- 《WF编程》系列之4 - 漫游工作流:Widows Workflow Runtime及其服务
- 管理信息系统期末测试题
- HP服务器raid卡型号b110i安装2008R2认不到硬盘缺少硬盘驱动
- mysql 嵌入式linux版本_PHP专栏 : MySQL 数据库安装详细
- 十年了,测试变了,我也变了,但总有一些东西未变
- html td 超链接,web开发---给td添加超链接
- java项目前有红色叉号_eclipse导入项目后出现红色叉号的解决方案
- Linux平台被勒索软件REvil盯上
- SublimeLinter进行PHP代码检查
- es5和es6声明类的区别/es5和es6继承的区别
- E03.03 A ‘Masculinity Crisis’? China Says the Boys Are Not All Right
- ubuntu安装HBuilder过程
- Python爬虫实现抓取腾讯视频所有电影-源码【实战必学】
- 1、LLC电路之RLC电路
热门文章
- python读取excel指定行列_pandas读取excel指定行列索引header和index_col参数
- python turtle绕原点旋转_Python基本图形绘制
- java soap 头_如何在Java中添加Soap标头
- Python 单元测试(unittest)
- 04Hadoop中的setPartitionerClass/SortComparator/GroupingComparator问题
- session 详解
- IconFont的制作使用
- Sublime text使用快捷键
- vscode使用php调试
- JavaScript强化教程—— RegExp 对象