目录
一、分析问题
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、重新编译软件
编译完成后执行验证,整个修复过程解决了。