鲲鹏社区首页
中文
注册
开发者
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

启动MySQL时报version `GLIBCXX_3.4.29' not found的解决方法

问题现象描述

启动MySQL时报错:/usr/local/mysql/bin/mysqld: /usr/local/mysql/bin/mysqld: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /usr/local/mysql/bin/mysqld)。

关键过程、根本原因分析

系统libstdc++.so.6版本低,缺少GLIBCXX_3.4.29。

结论、解决方案及效果

  1. 下载gcc 12.3.1(GCC for openEuler 3.0.3)。
    1
    2
    cd /home
    wget https://mirrors.huaweicloud.com/kunpeng/archive/compiler/kunpeng_gcc/gcc-12.3.1-2024.12-aarch64-linux.tar.gz
    
  2. 执行以下命令解压。
    1
    tar zxvf gcc-12.3.1-2024.12-aarch64-linux.tar.gz
    
  3. 备份当前系统的libstdc++.so.6,创建高版本libstdc++.so.6软链接。
    1
    2
    mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak
    ln -s /home/gcc-12.3.1-2024.12-aarch64-linux/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6
    
  4. 检查当前库版本,若有输出,则说明已满足需求。
    1
    strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX_3.4.29
    
  5. 重新启动MySQL。