提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:鲍佳佳|2020-12-28 11:51:04.007|阅读 125 次
概述:当基于复杂的数据库结构开发软件应用程序时,通常需要在相同的输入数据上运行各种业务逻辑测试方案。这就是重复恢复测试数据的问题所在。本文提供了仅使用一种工具dbForge Studio for MySQL自动化该过程的最简单方法 。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
dbForge Studio for MySQL是一个在Windows平台被广泛使用的MySQL客户端,它能够使MySQL开发人员和管理人员在一个方便的环境中与他人一起完成创建和执行查询,开发和调试MySQL程序,自动化管理MySQL数据库对象等工作。
点击下载dbForge Studio for MySQL最新试用版
当基于复杂的数据库结构开发软件应用程序时,通常需要在相同的输入数据上运行各种业务逻辑测试方案。这就是重复恢复测试数据的问题所在。本文提供了仅使用一种工具dbForge Studio for MySQL自动化该过程的最简单方法 。
测试数据恢复是一个耗时且费力的过程,通常是手动完成的。因此,其自动化对于确保快速,可靠和具有成本效益的交付至关重要。但是,在开始详细介绍如何借助dbForge Studio for MySQL自动化测试数据恢复过程之前,让我们首先了解一些术语。
什么是DevOps?
DevOps是一个相当新且迅速传播的概念,它描述了一组旨在使软件开发和交付流程自动化的实践,以便开发和IT团队可以缩短整个服务生命周期并提供持续交付的高质量软件。
为什么选择DevOps用于数据库?
数据库更改是执行应用程序部署时延迟的主要原因。因此,旨在提高数据库更改交付速度的数据库开发自动化导致迭代次数缩短,并且无疑对软件应用程序的持续交付产生积极影响。
如何使用dbForge Studio for MySQL自动执行测试数据恢复
背景:
假设我们的数据库源代码位于远程存储库上,并且它的测试数据必须从其他来源(例如脚本文件夹,另一个数据库或文件)生成或获取。
先决条件:
步骤1.克隆存储库
假设在远程Git存储库中有一个脚本文件夹,我们需要将其用作创建数据库的数据源。首先,我们需要将此远程存储库克隆到本地文件夹。在这个工作示例中,我们将存储库克隆到D:\ Temp \ DevOps_MySQL \。以下是此操作的CMD命令:
git clone //github.com/repository-name/sakila.git D:\Temp\DevOps_MySQL
其中:
repository-name
要克隆的存储库的名称
sakila
包含要使用的测试数据的数据库的名称
注意:
在运行上述命令之前,请确保您的计算机上已安装Git for Windows客户端。
步骤2.在服务器上创建或重新创建数据库
在服务器上部署数据库之前,需要创建或重新创建数据库(删除旧数据库,然后创建新数据库)。这可以通过数据库创建脚本,CMD和dbForge Studio for MySQL轻松完成。我们不会在本文中强调这一点,因为这些操作非常基础。
要在服务器上创建sakila数据库,我们将使用以下命令行脚本:
dbforgemysql.com /execute /connection:"User Id=%user-name%;password=%your-password%;Host=%your-host%" /inputfile " D:\Temp\DevOps_MySQL\Create_sakila2.sql"
请注意,您需要输入自己的凭据才能使此脚本正常工作。
对于喜欢PowerShell操作环境的用户,我们还提供PS脚本:
.\dbforgemysql.com /execute /connection:"User Id=%user-name%;password=%your-password%;Host=%your-host%" /inputfile "D:\Temp\DevOps_MySQL\Create_Sakila2.sql" if ($? -eq $true) { Write-host "Database sakila2 created" -ForegroundColor Cyan } else { Write-host "Error" -ForegroundColor Yellow }
同样,不要忘记将自己的凭据添加到脚本中。
步骤3.在本地和远程数据库之间同步架构
下面是CMD和PS脚本,用于将空的本地sakila2数据库的模式与远程sakila数据库同步。同步的结果是,将创建在配置模板时选择的所有表,视图,过程,函数和触发器。
CMD
dbforgemysql.com /schemacompare /compfile:"D:\Temp\DevOps_MySQL\sakila vs sakila2.scomp" /sync @echo %ERRORLEVEL%
PS
.\dbforgemysql.com /schemacompare /compfile:"D:\Temp\DevOps_MySQL\sakila vs sakila2.scomp" /sync if ($? -eq $true) { Write-host "Objects for sakila2 created" -ForegroundColor Cyan } else { Write-host "Error" -ForegroundColor Yellow }
注意:
提供的脚本表示您先前已经配置并保存了模式比较模板文件(.scomp)以同步指定的数据库。请不要忘记使用dbForge Studio for MySQL的“模式比较”功能来准备有问题的文件。
步骤4.用数据填充数据库
在上一步中,我们恢复了数据库结构。现在我们需要的是用测试数据填充数据库。dbForge Studio for MySQL可以拥有三种不同的工具,可用于用数据填充数据库。由于这三个都可以从命令行调用,因此可以在数据库自动化过程中使用,因此我们将分别考虑它们。
使用数据比较功能填充数据库
您可以使用dbForge Studio for MySQL内置的高级“日期比较”功能轻松地还原位于脚本文件夹或另一个数据库中的参考数据。使用以下脚本将数据插入国家/地区表:
CMD
dbforgemysql.com /datacompare /compfile:"D:\Temp\DevOps_MySQL\country.dcomp" /sync @echo %ERRORLEVEL%
PS
.\dbforgemysql.com /datacompare /compfile:"D:\Temp\DevOps_MySQL\country.dcomp" /sync if ($? -eq $true) { Write-host "Data inserted in sakila2" -ForegroundColor Cyan } else { Write-host "Error" -ForegroundColor Yellow }
注意:
上面提供的脚本表示您先前已经配置并保存了数据比较模板文件(.dcomp)以同步指定数据库中的数据。请不要忘记在运行脚本之前准备有问题的文件。
使用数据导入/导出功能填充数据库
如果参考数据不是存储在数据库本身中,而是存储在单独的文件中,则“数据导入”是用数据填充数据库的最佳选择。dbForge Studio for MySQL提供了一种简单有效的方法,即使用最先进的数据导入/导出功能将这些数据直接导入所需的表中。
使用以下脚本将数据插入地址表:
CMD
dbforgemysql.com /dataimport /templatefile:"D:\Temp\DevOps_MySQL\address.dit" @echo %ERRORLEVEL%
PS
.\dbforgemysql.com /dataimport /templatefile:"D:\Temp\DevOps_MySQL\address.dit" if ($? -eq $true) { Write-host "Data inserted in sakila2" -ForegroundColor Cyan } else { Write-host "Error" -ForegroundColor Yellow }
注意:
上面提供的脚本表示您先前已经配置并保存了数据导入模板文件(.dit),以将数据导入到指定的表中。请不要忘记在运行脚本之前准备有问题的文件。
使用数据生成器功能填充数据库
dbForge Studio for MySQL具有生成数据的强大功能。它最适合需要在数据库中填充大量实际数据,但又不能或不想在磁盘上存储大量数据的情况。在这种情况下,同样,预先配置了数据生成器模板文件(.dgen),您可以使用以下脚本将数据插入actor表:
CMD
dbforgemysql.com /generatedata /projectfile:"D:\Temp\DevOps_MySQL\actor.dgen" @echo %ERRORLEVEL%
PS
.\dbforgemysql.com /generatedata /projectfile:"D:\Temp\DevOps_MySQL\actor.dgen" if ($? -eq $true) { Write-host "Data inserted in sakila2" -ForegroundColor Cyan } else { Write-host "Error" -ForegroundColor Yellow }
注意:
在运行上面提供的脚本之前,配置和保存数据生成器模板文件(.dgen)非常重要。
本文中提供的所有脚本均返回退出状态。结果,如果您编译了三个脚本-用于还原数据库结构,同步数据库模式和填充数据库,您将获得一个MySQL数据库自动化脚本来还原测试数据,从而可以监视和控制执行阶段。
结论
dbForge Studio for MySQL是功能丰富的IDE,使您可以轻松地将DevOps方法扩展到MySQL和MariaDB数据库开发和部署。立即下载dbForge Studio for MySQL!
好消息!!!为庆祝慧都成立17周年”dbForge Studio for MySQL直降2000,在线订购正版授权最低只要1026元! 点击查看详情>>
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
文章转载自:本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
dbForge Studio for MySQL是与专业化MySQL数据库紧密相连的先进开发环境。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢