先說明一下

1. 很多教程采用的是 本地數據庫 和 云端數據庫 同步,而今天我們 采用 云端1 同步 云端2 數據庫; 因為,很多人根本不會用 本地數據庫,所以,為了大家簡單易懂,我們就來最簡單的操作,一看就會的那種。

2. 本教程用到的工具或素材:寶塔控制面板、Navicat for MySQL軟件、數據庫版本 Mysql 5.6

3. 場景:常用于我們的 應用從舊版升級到新版,卻沒有 升級腳本的時候;因為僅僅覆蓋網頁并不能達到升級的目的,還要數據庫升級。

4. 數據庫比對最常用于

A. 小程序或者公眾號沒有升級文件,一般是 upgrade.php ,升級文件就是 manifest.xml 中 <upgrade><![CDATA[升級文件]]></upgrade>
,或者可以看到 manifest.xml 中 <upgrade><![CDATA[為空]]></upgrade>

B. 升級文件也有,可就是 覆蓋升級后,后臺設置無法保存,這種境況一般就是缺少數據庫字段或者數據庫表;


假定,我們需要升級應用程序 某拼團,某拼團的完整數據庫文件 all.sql ,我們自己的 微擎數據庫名 mswiner ,現在,我們需要把自己微擎里面的應用升級,網頁文件已經覆蓋,下面,我們開始 完整的數據庫對比同步結構,進行升級。



第一步:安裝 Navicat for MySQL,這個軟件是付費的,請百度搜索“Navicat for MySQL 破解版”,根據相關的教程即可激活,這個是第一步,也非常簡單,請自行操作,不再累贅解釋。

第二步:去你的服務器控制面板,左邊,數據庫,找到你想升級的應用 所在微擎的數據庫,權限,設置為所有人。







第三步:去你的服務器控制面板,phpMyAdmin,用戶--添加數據庫--xinshujuku(名字隨便寫),注意,權限選擇 所有人




第四步:把新的 數據庫文件 all.sql 導入到我們新建的數據庫 xinshujuku,注意看是否導入成功,有沒有報錯哦;

沒有這個應用的整體數據庫怎么辦?

用記事本打開這個應用的 manifest.xml 文件,找到

<install><![CDATA[

這個就是開始標志;

下方這個是結束標志;

]]></install>

這兩個標志中間的,復制下來,到數據庫  SQL 執行,就是一樣的效果了;





第五步:在你的電腦上,打開 Navicat for MySQL軟件,左上角--新建--填寫服務器 IP 地址,數據庫的用戶名、密碼,測試連接 或者 確定。






連接成功后,雙擊你的數據庫,就可以看到這個數據庫里面的所有 表,如下:





如果連接失敗,請檢查你的數據庫權限,需要是“所有人”,或者你的 服務器 沒有開啟 3306 端口,自己到 阿里云 服務器 安全組規則,放行 3306 端口;

第六步:同樣的道理,在 Navicat for MySQL軟件 左上角,繼續 進行同樣的操作,連接上你的 準備升級的那個 微擎數據庫(就是 目標數據庫,要升級的那個,我這里演示是 mswiner 這個是我的微擎數據庫);






先檢查兩個數據庫,是否都已經連接成功,成功后兩個 數據庫圖標是綠色的。





左邊數據庫,是你導入 數據庫文件的 源,右邊是目標,就是我們要升級 同步的 微擎數據庫,選好以后,開始【比對】,耐心等待,可能時間較長,具體時間長短,以你的服務器性能、數據庫里面內容的多少而決定,快則 幾分鐘,慢則 一二十分鐘或者更長時間,很多時候,會一直顯示 40%,不用管它,正常情況,對比完成后如下圖:



第七步: 同步結構

下拉多選,然后 鼠標右鍵 勾選已選擇的;

第一行 SET FOREIGN_KEY_CHECKS = 0 和 最后一行 SET FOREIGN_KEY_CHECKS = 1 ,不勾選;

檢查,檢查不要弄錯了,然后,點擊右下角 “運行查詢”;




同步完成后, 關閉即可;




第八步: 回到你的寶塔控制面板,刪除你新建的 數據庫(xinshujuku),你也可以不刪除,隨便你,為了安全,我會刪除,原因自己百度。同時,把自己的微擎數據庫,權限改為 本地數據庫;

10.jpg (179.54 KB, 下載次數: 0)

下載附件

2019-6-18 13:20 上傳




GAME OVER ,收工,完成結構同步了!就是這么簡單!