• <menu id="w2i4a"></menu>
  • logo dbForge Studio for MySQL教程

    文檔首頁>>dbForge Studio for MySQL教程>>如何借助dbForge Studio for MySQL自動測試數據恢復過程

    如何借助dbForge Studio for MySQL自動測試數據恢復過程


    dbForge Studio for MySQL是一個在Windows平臺被廣泛使用的MySQL客戶端,它能夠使MySQL開發(fā)人員和管理人員在一個方便的環(huán)境中與他人一起完成創(chuàng)建和執(zhí)行查詢,開發(fā)和調試MySQL程序,自動化管理MySQL數據庫對象等工作。

    點擊下載dbForge Studio for MySQL最新試用版

    當基于復雜的數據庫結構開發(fā)軟件應用程序時,通常有必要在相同的輸入數據上運行各種業(yè)務邏輯測試方案。這就是重復恢復測試數據的問題所在。本文提供了一種最簡單方法工具僅使用dbForge Studio for MySQL自動化該過程 。

    測試數據恢復是一個耗時且費力的過程,通常是手動完成的。因此,其自動化對于確??焖?,可靠和具有成本效益的交付至關重要。但是,在開始詳細介紹如何借助dbForge Studio for MySQL自動化測試數據恢復過程之前,讓我們首先了解一些術語。

    慧都現推出“軟件國產化服務季”dbForge Studio for MySQL直降2000元,在線訂購正版授權最低只要1026元! 點擊查看詳情>>

    什么是DevOps?

    DevOps是一個相當新且迅速傳播的概念,它描述了一組旨在使軟件開發(fā)和交付流程自動化的實踐,以便開發(fā)和IT團隊可以縮短整個服務生命周期并提供持續(xù)交付的高質量軟件。

    為什么選擇DevOps用于數據庫?

    數據庫更改是執(zhí)行應用程序部署時延遲的主要原因。因此,旨在提高數據庫變更交付速度的數據庫開發(fā)自動化導致迭代次數縮短,并且無疑對軟件應用程序的持續(xù)交付產生積極影響。

    如何使用dbForge Studio for MySQL自動執(zhí)行測試數據恢復

    背景:
    假設我們的數據庫源代碼位于遠程存儲庫上,并且它的測試數據必須從其他來源(例如腳本文件夾,另一個數據庫或文件)生成或獲取。

    先決條件:

    • 已安裝的dbForge Studio for MySQL
    • 先前使用dbForge Studio for MySQL配置的必需模板文件(.scomp,.dcomp,.dit和/或.dgen)。

    步驟1.克隆存儲庫

    假設在遠程Git存儲庫中有一個腳本文件夾,我們需要將其用作創(chuàng)建數據庫的數據源。首先,我們需要將此遠程存儲庫克隆到本地文件夾。在這個工作示例中,我們將存儲庫克隆到D:\ Temp \ DevOps_MySQL \。以下是此操作的CMD命令:

    git clone https://github.com/repository-name/sakila.git D:\Temp\DevOps_MySQL

    其中:
    repository-name
    要克隆的存儲庫的名稱
    sakila
    包含要使用的測試數據的數據庫的名稱

    注意:
    在運行上述命令之前,請確保您的計算機上已安裝Git for Windows客戶端。

    步驟2.在服務器上創(chuàng)建或重新創(chuàng)建數據庫

    在服務器上部署數據庫之前,需要創(chuàng)建或重新創(chuàng)建數據庫(刪除舊數據庫,然后創(chuàng)建新數據庫)。這可以通過數據庫創(chuàng)建腳本,CMD和dbForge Studio for MySQL輕松完成。我們不會在本文中強調這一點,因為這些操作非常基礎。

    要在服務器上創(chuàng)建sakila數據庫,我們將使用以下命令行腳本:

    dbforgemysql.com /execute /connection:"User Id=%user-name%;password=%your-password%;Host=%your-host%" /inputfile "D:\Temp\DevOps_MySQL\Create_sakila2.sql"

    請注意,您需要輸入自己的憑據才能使此腳本正常工作。

    對于喜歡PowerShell操作環(huán)境的用戶,我們還提供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數據庫同步。同步的結果是,將創(chuàng)建在配置模板時選擇的所有表,視圖,過程,函數和觸發(fā)器。

    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的“模式比較”功能來準備有問題的文件。

    使用dbForge Studio for MySQL自動進行數據庫開發(fā)

    步驟4.用數據填充數據庫

    在上一步中,我們恢復了數據庫結構。現在我們需要的是用測試數據填充數據庫。dbForge Studio for MySQL可以擁有三種不同的工具,可用于用數據填充數據庫。由于這三個都可以從命令行調用,因此可以在數據庫自動化過程中使用,因此我們將分別考慮它們。

    使用數據比較功能填充數據庫

    您可以使用dbForge Studio for MySQL內置的高級“Date Comparison”功能輕松地還原位于腳本文件夾或另一個數據庫中的參考數據。使用以下腳本將數據插入country表:

    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提供了一種簡單有效的方法,即使用尖端的Data Import/Export functionality將這些數據直接導入所需的表中。
    使用以下腳本將數據插入地址表:

    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)非常重要。

    dbForge Studio for MySQL-自動運行DevOps

    本文中提供的所有腳本均返回退出狀態(tài)。結果,如果您編譯這三個腳本-用于還原數據庫結構,同步數據庫模式和填充數據庫,則將獲得一個MySQL數據庫自動化腳本,用于還原測試數據,從而可以監(jiān)視和控制執(zhí)行階段。

    結論

    dbForge Studio for MySQL是功能豐富的IDE,使您可以輕松地將DevOps方法擴展到MySQL和MariaDB數據庫的開發(fā)和部署。下載dbForge Studio For MySQL,讓您的應用開發(fā)沖出國際。

    慧都現推出“軟件國產化服務季”dbForge Studio for MySQL直降2000,在線訂購正版授權最低只要1026元! 點擊查看詳情>>

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();