將資料庫從一部伺服器移轉至另一部,不必熬夜等候。
SQLmig 透過四個引導步驟,備份、移轉並還原您的 MySQL 和 MariaDB 資料庫。而且過程安全無虞:在目標伺服器上寫入任何資料之前,它會比較兩部伺服器,並明確告訴您可能遇到的問題:版本不同、資料庫引擎不同、特殊定序,以及舊版物件。
一次付費,無須訂閱。授權適用於安裝在一台電腦上,適用於整個第 4 版,使用期限不限,並包含更新。支援 Windows、macOS 和 Linux。SQLmig 4 上市促銷優惠:折扣 −25%。價格以美元計。
MySQL 5.7,正式環境
MySQL 8.0,新伺服器
移轉路徑:支援
外鍵、檢視表、保留字:未偵測到問題
定序:匯入時將套用 2 項已知調整
utf8mb3:有 14 個物件標示為需檢查
目標伺服器的 max_allowed_packet:64 MB,足夠
問題從來不會在產生 dump 檔時出現。
問題會在匯入時出現,一小時後,維護時段已經過了一半,資料庫也已還原了一半。
$ mysqldump -h prod -u root --all-databases > dump.sql
$ mysql -h new-server -u root < dump.sql
ERROR 1273 (HY000) at line 41: Unknown collation: 'utf8mb4_0900_ai_ci'
ERROR 1005 (HY000) at line 2188: Can't create table `crm`.`facturation`
ERROR 2006 (HY000): MySQL server has gone away
# 3 個錯誤。浪費 2 小時。新伺服器上的資料庫只還原了一半,而且伺服器已經在運作,資料卻不完整或已損毀。
不同版本之間無法互通
例如,MySQL 8 中建立的定序在 5.7 中並不存在。舊版的 ROW_FORMAT 在一邊可以使用,到了另一邊卻會造成阻礙。SQL 模式在不同系列版本之間也會變得更嚴格。來源端能順利輸出的內容,目標端卻可能拒絕接受。
資料庫引擎也不例外
MySQL 和 MariaDB 不支援相同的定序、資料表選項,也不接受檢視表與常式中相同的語法。dump 檔不會提醒您,但匯入時就會。
所有操作都塞在一行命令裡
終端機歷史紀錄中的錯誤主機、過多的 --all-databases、檔案遭到覆寫:基礎架構中風險最高的操作,偏偏也最不需要任何確認。
沒有人有時間稽核
手動檢查 40 個資料庫的定序、DEFINER、檢視表、限制名稱和 max_allowed_packet,需要整整一天。因此,我們略過這個步驟,祈禱一切順利。
差異不在移轉過程中,而是在移轉之前。
使用命令列
您會在匯入時才發現不相容之處。
您得手動重新檢查 dump 檔,才能了解錯誤原因。
進度到 80% 時失敗,您就得從頭重來。
沒有任何機制能阻止您寫入正式環境伺服器,並因操作失誤而覆寫資料。
要在終端機中輸入的 SQL 指令相當複雜,而且選項會因資料庫引擎而異。
如果您不完全熟悉所有命令列選項,就無法確定資料庫是否已正確遷移。
六個月後,沒有人記得資料庫是如何移轉的,也不記得當時使用了哪些命令列選項。資料可能在移轉控管不當時已遭到損毀,卻無人知情。
使用 SQLmig
伺服器設定只需設定一次,並會在不同工作階段之間保留。
遷移專案中的相容性問題會在建立傾印檔前逐項列出。
每則警告都會說明需要檢查的項目,以及原因。
傾印檔會保留在檔案庫中:您可以稍後重新啟動後,再繼續匯入。
基於安全考量,未勾選「目標」角色的伺服器無法意外接收任何匯入作業。
移轉時,您可以自動重新命名來源伺服器與目標伺服器上的資料庫。
無論是您還是同事,每次執行的程序都相同:只需點幾下即可完成,不必是專家。
歷史記錄會保留日期、狀態、版本、資料庫和完整記錄檔。
四個步驟。無論使用哪一台伺服器,流程都一樣。
將伺服器放入「來源」區域,也可以選擇將另一台放入「目標」區域,然後由左至右逐步操作。若只需備份,請將目標留空:第 2 步和第 4 步就會消失。
選擇資料庫
SQLmig 會連線並確認伺服器的實際版本,接著列出您的應用程式資料庫,並排除系統結構描述。每個資料庫都會顯示資料表數量、預估大小和定序。
分析遷移
16 項檢查會比對來源、目標和您所選取的項目。報告會將每個項目標示為「正常」、「警告」或「錯誤」。報告中指出的錯誤必須先處理,才能繼續。
建立傾印檔
每個資料庫建立一個檔案,或將所有資料庫合併為單一檔案。檔案包含結構、資料、常式和觸發程序;只要 SQL 帳戶有讀取權限,也會包含事件。
匯入至目標
選擇要還原的資料庫,必要時重新命名,然後開始匯入。SQLmig 會套用已知的調整,但不會修改您的檔案,接著確認所有內容都已成功匯入。
幾秒內,SQLmig 就能替您檢查這些項目。
針對您即將遷移的確切選取項目執行 16 項檢查。每項檢查都會回報狀態、說明,以及可行時的處理方式。
遷移路徑:來源 → 目標
兩台伺服器的連線與識別資訊
目標拒絕的 SQL 模式
ENUM 和 SET 的大小限制
外鍵條件約束名稱
超出限制的檢視欄位名稱
分割區與儲存引擎
仍使用 utf8 / utf8mb3 的物件
目標缺少的定序
用作物件名稱的保留字
檢視、常式和事件的 DEFINER
儲存物件中含有 ASC/DESC 的 GROUP BY
匯入時會拒絕的空值或不完整日期
舊版 InnoDB ROW_FORMAT 和 KEY_BLOCK_SIZE
目標的 max_allowed_packet 容量不足
升級版本時的 MySQL Shell 檢查
匯入期間,SQLmig 會套用已知的調整,例如將 MySQL 8 定序轉換為 5.7 相容格式、調整舊版 InnoDB 資料列格式、處理與空值日期相關的模式,以及處理新版 MariaDB 傾印檔中的「sandbox」指令,而且絕不會修改原始傾印檔。
專為不能失敗的作業而設計的工具。
傾印檔案庫
關閉 SQLmig,明天再回來:傾印檔仍會保留在檔案庫中,並附有來源、資料庫、日期和大小資訊。選擇目標並匯入即可,無須重新設定,只需點一下。
匯入時重新命名資料庫
只要點一下,即可將 hosting1_wordpress 還原為 hosting2_wordpress,或為所選項目全部套用前綴。SQLmig 會記住這些對應關係,供下次使用。
部分匯入
一份包含 30 個資料庫的合併傾印檔?只還原其中 3 個即可。SQLmig 會在正式啟用前,提示您檢查相依項目。
為您安裝的 SQL 用戶端
mysqldump、mariadb-dump、MySQL Shell:SQLmig 會安裝與您的伺服器對應的官方用戶端,不會影響您電腦上可能已在運作的 SQL 伺服器。
保護正式環境
請在敏感伺服器上取消勾選「目標」設定:SQLmig 就不會意外在該伺服器上寫入資料。該伺服器的「目標」按鈕會直接變成不可用。
加密連線
透過 TCP 使用 TLS,最高支援 VERIFY_IDENTITY、憑證授權單位憑證、用戶端憑證,或在本機使用 UNIX 通訊端。如有需要,文件也提供 AWS RDS 連線指南。
歷史紀錄與日誌
作業類型、日期、伺服器、版本、相關資料庫、傾印模式,以及完整日誌。即使六個月後,也能說明實際執行過哪些作業。
分析現有傾印檔
即使是由其他工具產生的 .sql 檔案也沒問題:SQLmig 會讀取檔案、計算資料庫和資料表數量、追蹤進度,並指出可能在目標伺服器上造成問題的項目。
可攜式設定,支援 16 種語言
匯出伺服器設定和偏好設定,並輕鬆匯入另一台安裝 SQLmig 的電腦。介面提供 16 種語言,並可選擇日間、夜間或自動主題。
免費備份。取得授權即可遷移。
SQLmig 可免費安裝和使用:連線一台 SQL 伺服器,備份數量不限。這是送給社群的禮物,讓每個人都能隨時備份 SQL 伺服器上的資料。SQLmig 授權則會解鎖其他所有功能:將資料遷移並匯入另一台伺服器。購買前,您就能確切知道自己要買的是什麼。
功能
免費
使用授權
SQL 伺服器數量
1
不限
連線測試與版本偵測
是
是
列出資料庫並建立備份
是
是
分別傾印,或將多個資料庫合併傾印至單一檔案
是
是
選擇遷移的目標伺服器
-
是
相容性預檢(16 項檢查)
-
是
為遷移準備傾印檔
-
是
匯入前分析傾印檔中的 SQL
-
是
匯入並還原至目標伺服器
-
是
匯入時重新命名資料庫
-
是
SQLmig 4.x 更新
是
是
一份授權。一次付款。SQLmig 功能不受限制。
授權包含的內容
永久適用於 SQLmig 4。
免費包含第 4 版的所有更新。
每份授權可用於一台電腦,可轉移:在此解除授權,然後在其他電腦上啟用。
Windows、macOS 和 Linux 均使用同一份授權,您可自行選擇安裝在哪個平台。
解鎖所有遷移、分析和還原功能。
還在猶豫嗎?安裝 SQLmig,現在就免費進行一次實際備份。只要十分鐘,您就會知道這個工具是否適合您。
大家最常問我們的問題。
授權是訂閱制嗎?
不是。這是一次性購買。授權永久有效,並涵蓋第 4 版的所有更新。
SQLmig 5 推出後會怎麼樣?
只要您繼續使用第 4 版,您的授權就能持續使用。每個主要版本都只需購買一次授權。
我更換電腦後,授權會不見嗎?
不會。在 SQLmig 中,點選「設定」→「SQLmig 授權」,再點選「解除授權」,然後在新電腦上啟用即可。每份授權一次只能在一台電腦上使用。
需要一直連上網際網路嗎?
不需要。首次在線上驗證後,SQLmig 可在離線狀態下驗證授權,最長可達 30 天;每次連線上網驗證時,期限就會重新計算。
我的 SQL 伺服器密碼會如何儲存?
您可以選擇將伺服器密碼儲存在 SQLmig 中;在此情況下,SQLmig 會以加密方式儲存密碼。或者,您也可以選擇完全不儲存密碼,這樣只需在每次使用 SQLmig 執行操作時提供密碼即可。
我可以從 MySQL 移轉至 MariaDB,或反向移轉嗎?
可以。SQLmig 支援不同資料庫引擎之間的移轉,並會提醒您注意可能的問題:定序、儲存引擎、資料表選項及 SQL 功能。切換前務必先在副本上測試。
為什麼我不能直接將資料庫從 MySQL 5.7 移轉至 8.4?
因為這樣會跳過中間的 MySQL 8.0 系列。SQLmig 會先讓您移轉至 MySQL 8.0,這也是 MySQL 官方文件建議的做法:使用 SQLmig 即可輕鬆完成這個中間步驟,並大幅減少最終切換時的意外。
SQLmig 會取代我的備份策略嗎?
不會,而且 SQLmig 也不會這麼宣稱。SQLmig 可執行備份和邏輯移轉,但無法取代即時複寫、資料庫引擎的實體備份,也不能取代您內部的測試程序。
SQLmig 可搭配哪些 SQL 伺服器使用?
SQLmig 可搭配 MySQL 5.0、MySQL 5.1、MySQL 5.5、MySQL 5.6、MySQL 5.7、MySQL 8.0、MySQL 8.4、MySQL 9.7、MySQL 26.7、MariaDB 10.6、MariaDB 10.11、MariaDB 11.4 和 MariaDB 11.8 使用。
想將資料移轉到另一台 SQL 伺服器嗎?這次使用 SQLmig,就能輕鬆完成。
立即把握 SQLmig 4 的上市優惠,以 $149.99 購買授權(原價 $199.99)。一次付清,無須訂閱。您也可以立即使用 SQLmig,在任意伺服器上免費開始備份。
MySQL 5.0 至 26.7 · MariaDB 10.6 至 11.8 · Windows、macOS 和 Linux · 介面提供 16 種語言
授權適用於安裝在一台電腦上。價格以美元計。