一、當更新代碼的時候,提示更新失敗,如下錯誤:
圖1
圖2
圖3
二、解決方法:
先備份,先備份,先備份,代碼和數據庫都要備份,要給自己留個后路,實在不行了可以恢復。
1. 更新源代碼,解壓升級包,然后解壓里面的auto_update.zip,就會有 update.sql和update.zip兩個文件
1.1. 將update.zip壓縮文件夾上傳到項目目錄中,并解壓
1.2. 解壓后會看到這些文件夾有的修改時間會變成當天的時間,說明已經替換成功當前的代碼。
2. 手動倒入sql (重點)
2.1. 用工具打開 update.sql 這個數據庫文件
2.2. 根據錯誤提示關鍵字,刪除報錯的sql,然后保存。例如 :
圖1 錯誤,就刪除下面的數據
圖2 錯誤,就刪除下面的數據
圖3 錯誤,直接搜索數字,這里搜索的是 76
??注意:刪除的時候,需要從錯誤的這一行sql之前的數據全部需要刪除,即:如果第3行數據報錯了,那就需要把 1 2 3 這三行數據全部都刪除
3. 使用工具或者寶塔的數據庫管理工具,導入修改后的sql文件,記得修改數據庫的前綴 eb_
3.1. 如下圖提示,就說明執行成功
4. 然后重啟swoole服務。更新完畢。
參考文檔手動升級: https://doc.www.2233z.cn/mer/mer2/4498