目錄
一、分析問題
1、崩潰問題本地調試gdb調試:
二、解決問題
1. 停止 MySQL 服務
2. 卸載 MySQL 相關包
3. 刪除 MySQL 數據目錄
4. 清理依賴和緩存
5.重新安裝mysql數據庫
6.創建程序需要的數據庫
三、驗證
1、動態庫更新了
2、頭文件更新了
3、重新編譯軟件
最近在跨平臺移植,后臺包含數據庫代碼時,運行程序出現如下圖崩潰:
一、分析問題
1、崩潰問題本地調試gdb調試:
(bdc 為調試程序)
sudo gdb ./bdc
1.1、這里輸入r,運行該程序:
1.2、運行到崩潰點,輸入bt;
代碼編譯過程沒問題,且崩潰在第三方庫mysql中。
分析推測可能時mysql安裝有問題
二、解決問題
因為我這里已經安裝過mysql庫,為了保證安裝無問題,可以首先卸載已有的mysql
1. 停止 MySQL 服務
在卸載之前,需要先停止正在運行的 MySQL 服務。打開終端,執行下面的命令:
sudo systemctl stop mysql
2. 卸載 MySQL 相關包
使用apt命令卸載 MySQL 服務器和客戶端包。在終端中執行以下命令:
sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*
此命令會移除 MySQL 相關的所有包,并刪除配置文件。
3. 刪除 MySQL 數據目錄
卸載 MySQL 包之后,需要手動刪除 MySQL 的數據目錄,以確保完全清除 MySQL。在終端中執行以下命令:
sudo rm -rf /etc/mysql /var/lib/mysql /var/log/mysql
4. 清理依賴和緩存
最后,清理不再需要的依賴和 apt 緩存。在終端中執行以下命令:
sudo apt-get autoremove sudo apt-get autoclean
5.重新安裝mysql數據庫
ubuntu22.04下安裝mysql以及mysql-workbench_ubuntu mysql workbench-CSDN博客
6.創建程序需要的數據庫
通過workbench創建數據庫
三、驗證
1、動態庫更新了
2、頭文件更新了
3、重新編譯軟件
編譯完成后執行驗證,整個修復過程解決了。