Ubuntu数据连接访问崩溃问题

目录

一、分析问题

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、重新编译软件

编译完成后执行验证,整个修复过程解决了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/78056.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux系统编程 day10 接着线程(中期头大,还要写论文)

线程有点懵逼 线程之前函数回顾以及总结部分(对不清楚的问题再思考) 线程控制原语 进程控制原语 pthread_create(); fork(); pthread_self(); getpid(); pthread_exit(); exit(); pthread_join(); …

《浔川AI翻译v6.1.0问题已修复公告》

《浔川AI翻译v6.1.0问题已修复公告》 尊敬的浔川AI翻译用户: 感谢您对浔川AI翻译的支持与反馈!我们已针对 **v6.1.0** 版本中用户反馈的多个问题进行了全面修复,并优化了系统稳定性。以下是本次修复的主要内容: 已修复问题 ✅…

深入理解 java synchronized 关键字

🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/literature?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,…

华三(H3C)与华为(Huawei)设备配置IPsec VPN的详细说明,涵盖配置流程、参数设置及常见问题处理

以下是针对华三(H3C)与华为(Huawei)设备配置IPsec VPN的详细说明,涵盖配置流程、参数设置及常见问题处理: 一、华三(H3C)设备IPsec VPN配置详解 1. 配置流程 华三IPsec VPN配置主要…

KBEngine 源代码分析(一):pyscript 目录文件介绍

pyscript 目录文件 pyscript 目录提供了 KBEngine 把 C++ 代码中的类注册到 Python 的机制 同时也提供了 C++ 调用 Python 方法的例子 相对现在的 C++ 17/20 ,这个目录的分装相对不优雅 不过不影响学习如何使用 Python 官方库提供的 API ,实现 C++ Python 混合编程 C++ …

线程入门3

synchronized修饰方法 synchronized可以修饰代码块(在线程入门2中有例子),也可以修饰普通方法和静态方法。 修饰普通方法 修饰普通方法简化写法: 修饰静态方法 修饰静态方法简化写法: 注意:利用synchronized上锁,锁的…

linux上Flexlm命令

FlexLM 是一种灵活的许可证管理系统,广泛用于各种软件产品中,如 Autodesk 的 AutoCAD 和 Autodesk 的其他产品。它允许软件开发商控制软件的使用和分发,同时提供灵活的许可证管理策略。在 Linux 系统中使用 FlexLM 通常涉及到几个关键步骤&am…

【Java学习方法】终止循环的关键字

终止循环的关键字 一、break 作用:跳出最近的循环(直接结束离break最近的那层循环) 使用场景:一般搭配if条件判断,如果满足某个条件,就结束循环,(场景:常见于暴力枚举中…

【论文精读】Reformer:高效Transformer如何突破长序列处理瓶颈?

目录 一、引言:当Transformer遇到长序列瓶颈二、核心技术解析:从暴力计算到智能优化1. 局部敏感哈希注意力(LSH Attention):用“聚类筛选”替代“全量计算”关键步骤:数学优化: 2. 可逆残差网络…

关于在Springboot中设置时间格式问题

目录 1-设置全局时间格式1.Date类型的时间2.JDK8时间3.使Date类和JDK8时间类统统格式化时间 2-关于DateTimeFormat注解 1-设置全局时间格式 1.Date类型的时间 对于老项目来说,springboot中许多类使用的是Date类型的时间,没有用到LocalDateTime等JDK8时…

面试篇:Java并发与多线程

基础概念 什么是线程?线程和进程的区别是什么? 线程 是程序执行的最小单位,它是 CPU 调度和执行的基本单元。一个进程可以包含多个线程,这些线程共享进程的资源(如内存),但每个线程有自己的栈…

【Qt/C++】QPrinter关于QInternal::Printer的解析

1. 问题分析 QInternal::Printer在Qt框架中并不是一个直接暴露给用户的API。相反,它是一个枚举值,用于标识QPaintDevice的类型。在Qt中,QPaintDevice是一个抽象类,用于任何可以进行绘制的设备,如窗口、图像、打印机等…

uniapp返回上一页接口数据更新了,页面未更新

注意:不是组件套组件可以不使用setTimeout延时 返回上一页一般会走onshow,但是接口更新了页面未更新 onShow(() > {// 切换城市后重新调用数据if (areaId.value) {const timer setTimeout(async () > {timer && clearTimeout(timer);…

MCU开发学习记录11 - ADC学习与实践(HAL库) - 单通道ADC采集、多通道ADC采集、定时器触发连续ADC采集 - STM32CubeMX

名词解释: ADC: Analog-to-Digital SAR:Successive Approximation Register 本文将介绍ADC的概念、相关函数以及STM32CubeMX生成ADC的配置函数。针对于ADC实践:单通道采集芯片内部温度传感器(ADC1_ch16)&a…

68元撬动未来:明远智睿2351开发板重塑嵌入式开发生态

在嵌入式开发领域,价格与性能的矛盾始终存在:高端开发板功能强大但成本高昂,低价产品则往往受限于性能与扩展性。明远智睿2351开发板以68元(含税)的定价打破这一僵局,通过四核1.4G处理器、全功能Linux系统与…

关于ubuntu密码正确但是无法登录的情况

参考这个文章: https://blog.csdn.net/cuichongxin/article/details/117462494 检查一下是不是用户被lock了 输入passwd -s username 如果用户是L状态,那么就是lock了。 使用 passwd -u username 解锁 关于 .bashrc 不生效 有几点: ~/.…

LeetCode-47. 全排列 II

1、题目描述: 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums [1,1,2] 输出: [[1,1,2],[1,2,1],[2,1,1]]示例 2: 输入:nums [1,2,3] 输出&am…

Python 设计模式:访问者模式

1. 什么是访问者模式? 访问者模式是一种行为设计模式,它允许你在不改变对象结构的前提下,定义新的操作。通过将操作封装在访问者对象中,访问者模式使得你可以在不修改元素类的情况下,向元素类添加新的功能。 访问者模…

基于stm32的智能门锁系统

标题:基于stm32的智能门锁系统 内容:1.摘要 摘要:随着科技的飞速发展,人们对家居安全的要求日益提高,智能门锁系统应运而生。本研究的目的是设计并实现一个基于STM32的智能门锁系统。采用STM32微控制器作为核心控制单元,结合指纹…

GitHub 常见高频问题与解决方案(实用手册)

目录 1.Push 提示权限错误(Permission denied) 2.push 报错:rejected non-fast-forward 3.忘记添加 .gitignore,上传了无关文件 4. 撤销最近一次 commit 5.clone 太慢或失败 6.如何切换/创建分支 7.如何合并分支 8.如何删除远程分支 9.如何 Fork + PR(Pull Reque…