Ubuntu mysql 错误解决

本文详细记录了在Linux环境下使用sudo安装MySQL-5.6版本时遇到的问题及解决过程,包括编译错误、配置失败等,并最终通过卸载特定依赖库成功解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

</pre>      学习sql编程的时侯第一步就栽了个跟头,在我的host主机上安装mysql的时候,有两个版本,一个是mysql-5.6 一个mysql-5.5版本的,一向使用最新技术的我首选的安装了5.6版本的,结果这便成了浪费我几小时的祸根。           首先我使用 sudo apt-get install mysql-server-5.6 mysql-client-5.6 安装的5.6版本的,之后我写了个qt的测试程序在qt的pro文件中加上: qt += sql <pre name="code" class="cpp"><pre style="margin-top: 0px; margin-bottom: 0px; white-space: pre-wrap; word-wrap: break-word; color: rgb(75, 75, 75); line-height: 19.5px; background-color: rgb(255, 255, 255);"><span lang="EN-US" style="line-height: 1.5; color: navy;">#include</span><span lang="EN-US" style="line-height: 1.5; color: silver;"> </span><span lang="EN-US" style="line-height: 1.5; color: green;"><QtCore/QCoreApplication></span><span lang="EN-US" style="line-height: 1.5;"><o:p></o:p></span>
#include <QSqlDatabase>
#include <QDebug>
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
    db.setHostName("localhost");
    db.setDatabaseName("mysql");
    db.setUserName("root");
    db.setPassword("1111");
    if (!db.open())
        qDebug() << "Failed to connect to root mysql admin";
    return a.exec();
}


结果编译报错,说是连接不上mysql.....  之后各种纠结之后,还是没有搞定,最后选择了退回到mysql5.5版本。这结果问题来了。再次安装5.5版本时,提示说configure错误。我一次又一次的尝试去安装,--purge 卸载之后再安装,依然时错误,之后又是修改权限,又是建立软连接什么的,结果还是一样一样的,就是不成功,恨不得从源码安装的心都有了,后来发现了一个帖子:http://www.linuxidc.com/Linux/2014-04/100752.htm
但是我这个恩比较偷懒,我运行了下面的命令:
    sudo rm /var/lib/mysql/ -R
    sudo rm /etc/mysql/ -R
    sudo apt-get autoremove mysql* --purge
    #注意这一句我没有运行#sudo apt-get remove apparmor  ##因为我看上去这个好像没什么影响,但是我错了 这才是关键
    sudo apt-get install mysql-server mysql-common
这些命令之后安装依旧是配置错误,crazy.....
      最后我加上了上面命令中注释掉的 apparmor 一切就变得美好了.. 坑爹呀.....
之后查了查这个程序,只是说空间使用分析什么的,完全看不出和mysql有什么关系.长个记性吧.... 




end


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值