亞馬遜雲科技:對Amazon Aurora進行資料庫變更管理

全球IT資訊發表於2023-04-20

亞馬遜雲科技Amazon Aurora是一個與MySQL和PostgreSQL相容的關聯式資料庫,它為雲端計算而構建,將傳統企業資料庫的效能和可用性與開源資料庫的簡單性和成本效益結合在一起。

 本教程是在Bytebase中為Amazon Aurora MySQL設定資料庫變更管理的分步指南。透過Bytebase,團隊可以有一個正式的稽核和釋出過程來進行Amazon Aurora資料庫Schema變更和資料變更。

 Bytebase為團隊提供了一個圖形化介面來執行資料庫變更並保留完整的變更歷史。你可以使用Bytebase免費版來完成本教程。

  功能包括

  • 變更工作流程

  • Schema編輯器

  • SQL編輯器

  • 變更歷史

  • DML回滾

  • 漂移檢測

  準備工作

 在開始之前,請確保你:

  • 有一個Amazon Aurora MySQL例項。

  • 安裝了Docker。

  透過Docker部署Bytebase

 1、確保Docker正在執行,並輸入以下命令啟動Bytebase Docker容器。

 2、Bytebase在Docker中執行,你可以透過localhost:5678訪問它。

 3、在瀏覽器中訪問localhost:5678。註冊第一個管理員賬戶,該賬戶將被授予[工作區所有者]角色。

  在Bytebase中新增一個Amazon Aurora MySQL例項

 在Bytebase中,例項可以是你的內部MySQL例項,也可以是Amazon RDS例項等。在本教程中,例項是你的“Amazon Aurora MySQL例項”。

 1、訪問localhost:5678並作為工作區所有者登入。

 2、點選新增例項。

 3、填寫欄位並點選建立,請注意這些欄位。

  • 型別:MySQL,如果你使用Aurora PostgreSQL,選擇PostgreSQL代替。

  • 環境:選擇“測試”,如果你選擇“開發”,你將需要手動批准所有未來的更改請求。

  建立一個專案

 在Bytebase中,專案將邏輯上相關的資料庫、工單和使用者組合在一起,這與其他開發工具(如Jira和GitLab)中的專案概念相似。所以在你處理資料庫之前,必須先建立一個專案。

 1、點選頂部導航欄上的專案。

 2、點選建立專案,建立一個新的專案TestAurora,鍵為TAR,模式為標準。點選建立。

  透過Bytebase建立一個Amazon Aurora MySQL資料庫

 在Bytebase中,一個資料庫是由“CREATE DATABASE xxx”建立的。一個資料庫總是屬於一個單一的專案。一個工單代表了開發人員和DBA之間在建立資料庫、變更Schema時的特定合作活動。它類似於其他問題管理工具中的工單的概念。

 1、點選左側邊欄上的專案>TestAurora。點選建立資料庫,建立一個新的資料庫。你也透過點選轉移資料庫來轉入你現有的資料庫。

 2、在表格中填寫名稱-db_demo,環境-Test,和例項-Amazon Aurora MySQL。點選建立。

 3、Bytebase將建立一個工單來自動建立資料庫。由於是測試環境,該工單將預設自動執行而不需要等待你的批准。點選解決,這個問題就完成了。

  在Amazon Aurora MySQL中建立一個表

 在第四步中,你建立了一個工單,使用UI工作流建立一個資料庫,然後執行了它。讓我們繼續建立一個表。

 1、訪問你的專案,並點選變更Schema。

 2、選擇db_demo並點選下一步。

 3、這就是你可以嘗試使用Schema編輯器的地方。這是一個用於變更Schema的視覺化編輯器。建立一個名為t1的表,有兩列:id和name。

 4、點選預覽工單,Bytebase會自動預覽一個帶有相應SQL語句的工單。確認它是正確的,然後點選建立。

 5、由於該問題是針對測試環境的,所以預設情況下會自動批准。同時,Bytebase在執行SQL之前已經執行了幾個任務檢查,其中一個任務檢查被稱為SQL Reivew。你可以定製你自己的SQL審查策略。

 6、點選解決,該工單將變成完成。

 7、在工單頁面,點選檢視變化,你可以看到Schema差異。

 透過SQL編輯器新增一些資料和查詢

 1、轉到專案TestAurora,並點選改變資料。

 2、選擇db_demo並點選下一步。

 3、按以下方式填寫SQL,然後點選建立。

 4、在其執行後,單擊解決。

 5、點選左側欄的SQL編輯器。輸入查詢並點選執行。你將看到新的記錄。

  回滾資料變更

 Bytebase支援MySQL的回滾。在資料變更完成後,Bytebase可以解析MySQL二進位制日誌並從日誌中建立回滾SQL語句。這允許你在需要時恢復該資料變化。

 1、回到工單中,將SQL回滾開啟。

 2、如果例項沒有設定binlog_format=ROW,它可能會失敗。

 3、進入Amazon RDS,點選引數組,建立一個新的引數組,將binlog_format設定為ROW。

 4、把這個引數組應用到你的資料庫例項。

 5、回到Bytebase SQL編輯器,並切換到管理模式。

 6、根據亞馬遜文件。輸入以下內容,將binlog的保留時間設定為24小時。

 7、鍵入以下內容以檢查它是否設定成功。

 8、重新啟動Aurora MySQL例項。

 9、重複步驟六,但這一次,我們可以看到預覽回滾工單。點選它,然後在問題頁面上點選建立。

 10、回滾總是需要明確的批准。

 11、在批准回滾之前,讓我們去SQL編輯器並且查詢。Bella這條資料已經插入。

 12、回到工單頁面,點選批准。回滾的SQL將執行。

 13、進入SQL編輯器,再次查詢。Bella這條記錄已經不在那裡了-回滾成功。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70007680/viewspace-2947143/,如需轉載,請註明出處,否則將追究法律責任。

相關文章