当前位置: 首页 > article >正文

银河麒麟V10(Kylin Linux V10)下MySQL编译安装的常见问题与解决方案

1. 银河麒麟V10下MySQL编译安装前的准备工作在银河麒麟V10操作系统上编译安装MySQL首先需要做好充分的准备工作。这个国产操作系统基于Linux内核但有些细节和常见的CentOS、Ubuntu等发行版有所不同。我在这类国产化替代项目中踩过不少坑总结出几个关键点。系统自检是第一步。建议先执行uname -a确认系统架构银河麒麟V10常见的有x86_64和aarch64两种版本。我遇到过同事在ARM架构服务器上误装x86软件包导致的各种诡异错误。内存检查也很重要编译MySQL 5.7至少需要2GB空闲内存可以用free -h查看。有次在虚拟机里编译时因为swap分区没设置好导致编译过程中被OOM killer强制终止。开发工具链的安装要特别注意版本兼容性。银河麒麟V10自带的GCC版本可能较低而MySQL 5.7要求GCC 4.8以上。我推荐用系统包管理器先更新基础工具sudo yum install -y gcc gcc-c make bison ncurses-devel openssl-devel目录规划容易被忽视但很重要。建议建立清晰的目录结构比如/usr/soft存放所有源码包/usr/local/mysql作为安装目录/data/mysql作为数据目录记得提前用mkdir -p创建这些目录并给当前用户赋权。有次我忘了给数据目录写权限导致初始化数据库时报错排查了半天才发现是权限问题。2. 解决CMake和GCC的版本兼容问题MySQL的编译依赖CMake和GCC这两个工具的版本问题是最常见的拦路虎。在银河麒麟V10上系统自带的CMake版本通常较低需要手动升级。卸载旧版CMake时有个细节要注意不能简单地yum remove cmake因为可能有其他依赖包。我推荐这样彻底清理sudo rpm -qa | grep cmake | xargs sudo rpm -e --nodeps下载新版CMake时官网提供了.sh格式的安装脚本但在银河麒麟上可能会遇到libcrypto.so缺失的问题。更稳妥的方式是下载预编译的tar包。比如对于aarch64架构wget https://cmake.org/files/v3.22/cmake-3.22.0-linux-aarch64.tar.gz tar -zxvf cmake-3.22.0-linux-aarch64.tar.gz -C /usr/local/建立软链接时要小心覆盖系统命令。我习惯把新版本工具放在/usr/local/bin下而不是直接替换/usr/bin下的文件。这样可以随时切换版本sudo ln -sf /usr/local/cmake-3.22.0-linux-aarch64/bin/* /usr/local/bin/GCC的编译安装更复杂些。在银河麒麟上编译GCC 4.9.4时可能会遇到mpfr库版本冲突。我的经验是先安装依赖库到自定义目录export CUSTOM_PATH/usr/local/gcc-deps ./configure --prefix$CUSTOM_PATH/gmp-5.0.2 make make install然后编译GCC时指定这些库的路径./configure --with-gmp$CUSTOM_PATH/gmp-5.0.2 \ --with-mpfr$CUSTOM_PATH/mpfr-3.1.2 \ --with-mpc$CUSTOM_PATH/mpc-0.93. MySQL源码编译的典型错误处理下载MySQL源码时建议选择带Boost库的版本。我在内网环境遇到过下载失败的情况可以先用其他机器下载好boost_1_59_0.tar.gz然后手动放到指定目录。CMake配置阶段最容易出问题。常见的错误是找不到Boost库这时需要明确指定路径cmake .. -DWITH_BOOST/usr/soft/mysql-5.7.27/boost/boost_1_59_0如果遇到CMake Error at cmake/boost.cmake:81可以尝试以下三种方案手动下载Boost并解压到指定目录添加-DDOWNLOAD_BOOST1参数让CMake自动下载删除CMakeCache.txt后重新配置编译过程中的报错也各有特点。比如出现prctl.h not found错误时需要从系统目录复制头文件cp /usr/include/sys/prctl.h /usr/soft/mysql-5.7.27/include还有次遇到error: nullptr was not declared这是因为GCC版本太低不支持C11特性。这时要么升级GCC要么修改源码中的C11语法。多核编译能大幅提升速度但要注意系统负载。我一般用nproc查看CPU核心数然后留出2个核心不给编译用make -j $(($(nproc)-2))4. 安装后的配置与优化编译完成后安装只是第一步。在银河麒麟V10上还需要进行一些特殊配置。初始化数据库时建议使用mysqld_safe方式/usr/local/mysql/bin/mysqld --initialize-insecure --usermysql --basedir/usr/local/mysql --datadir/data/mysql这里有个细节银河麒麟的SELinux策略可能导致权限问题。如果启动失败可以尝试restorecon -R /data/mysql配置文件调整也很关键。我建议在/etc下创建my.cnf时保留原系统的配置习惯[mysqld] basedir/usr/local/mysql datadir/data/mysql socket/tmp/mysql.sock character-set-serverutf8mb4系统服务集成方面银河麒麟V10使用systemd管理服务。可以这样创建服务单元文件cat /etc/systemd/system/mysqld.service EOF [Unit] DescriptionMySQL Server Afternetwork.target [Service] Usermysql Groupmysql ExecStart/usr/local/mysql/bin/mysqld_safe Restarton-failure [Install] WantedBymulti-user.target EOF最后别忘了设置环境变量。我通常在/etc/profile.d/下创建单独的文件echo export PATH/usr/local/mysql/bin:$PATH /etc/profile.d/mysql.sh source /etc/profile.d/mysql.sh5. 国产化环境下的特殊问题处理在银河麒麟V10这类国产操作系统上还会遇到一些特有的问题。依赖库冲突比较常见。比如系统自带的openssl可能与MySQL需要的版本不兼容。我的解决方法是静态编译cmake .. -DWITH_SSLsystem -DOPENSSL_ROOT_DIR/usr/local/openssl中文路径支持需要特别注意。银河麒麟默认使用zh_CN.UTF-8编码但MySQL的表名大小写敏感。建议在my.cnf中明确设置lower_case_table_names1 collation-serverutf8mb4_general_ci性能调优方面国产CPU如飞腾、鲲鹏需要针对架构优化。可以在编译时添加特定参数CFLAGS-marcharmv8-a -mtunecortex-a72 CXXFLAGS$CFLAGS cmake ..监控系统资源使用也很重要。我习惯用银河麒麟自带的ksysguard工具观察MySQL进程的资源占用情况。6. 验证与故障排查指南安装完成后系统的验证和故障排查同样重要。基础验证包括/usr/local/mysql/bin/mysqladmin version /usr/local/mysql/bin/mysqlshow如果连接失败先检查socket文件位置。银河麒麟的/tmp目录可能有特殊权限设置可以改用其他位置[client] socket/var/lib/mysql/mysql.sock日志分析是排查问题的利器。银河麒麟的日志系统可能将MySQL错误日志记录在/var/log/messages中建议在my.cnf中明确指定日志路径log-error/var/log/mysqld.log性能测试时可以用sysbench工具。在ARM架构上运行需要调整一些参数sysbench oltp_read_write --db-drivermysql --mysql-hostlocalhost --mysql-port3306 prepare遇到无法启动的情况可以尝试安全模式/usr/local/mysql/bin/mysqld_safe --skip-grant-tables 7. 安全加固与日常维护在国产化环境中安全配置需要更加谨慎。基础安全设置包括ALTER USER rootlocalhost IDENTIFIED BY 复杂密码; DELETE FROM mysql.user WHERE User; FLUSH PRIVILEGES;防火墙配置要适应银河麒麟的防火墙管理方式firewall-cmd --add-servicemysql --permanent firewall-cmd --reload备份策略建议结合国产化环境特点。我常用物理备份方式innobackupex --userroot --passwordxxx /backup/mysql/定期维护可以通过银河麒麟的定时任务实现echo 0 3 * * * /usr/local/mysql/bin/mysqlcheck -A -o | crontab -国产CPU的NUMA架构需要特别关注。可以在my.cnf中添加[mysqld] innodb_numa_interleaveON

相关文章:

银河麒麟V10(Kylin Linux V10)下MySQL编译安装的常见问题与解决方案

1. 银河麒麟V10下MySQL编译安装前的准备工作 在银河麒麟V10操作系统上编译安装MySQL,首先需要做好充分的准备工作。这个国产操作系统基于Linux内核,但有些细节和常见的CentOS、Ubuntu等发行版有所不同。我在这类国产化替代项目中踩过不少坑,总…...

还纠结网安行不行?2026最新行业真相出炉!

还纠结网安行不行?2026最新行业真相出炉! 入行与提升建议, 想在网络安全领域立足并取得良好发展,你需要关注以下几点: 学习资源 如果你是也准备转行学习网络安全(黑客)或者正在学习,这里开源…...

SEO_如何通过内容优化有效提升SEO效果

SEO:如何通过内容优化有效提升SEO效果在当今互联网时代,搜索引擎优化(SEO)已经成为了每个网站运营者的必修课。而其中,内容优化是提升SEO效果的核心手段之一。通过优质、高质量的内容,可以大大提升网站在搜…...

EFDTR:用“傅里叶变换”做实例分割?

EFDTR:让机器“用曲线画轮廓”的实例分割新思路 很多实例分割方法,做法都很直观:让模型给目标“涂满像素”,最后得到一张 mask。这样效果通常不错,但代价也很明显——输出很重、后处理多,而且轮廓信息并不天然“规整”。 这篇论文提出的 EFDTR,想走一条更“几何化”的…...

iData K1S 键盘型工业终端的效能标杆——精准输入与高效扫描的完美平衡

在工业数据采集场景中,并非所有作业都适合纯触屏操作。在仓储分拣、快递揽收、制造巡检等需要大量数字和字母输入的场景中,实体键盘的盲打效率和准确率依然是触屏无法替代的。iData K1S【产品测试】正是这样一款专为高频输入高频扫描场景设计的键盘型工业…...

爬虫对抗实战:深入解析ZLibrary反爬机制与应对策略

爬虫对抗实战:深入解析ZLibrary反爬机制与应对策略(完善版) 导语 ZLibrary 作为全球最大的在线电子资源库之一,拥有超过千万册的电子书籍、期刊、论文等资源,涵盖了学术研究、文学创作、职业学习等多个领域,是全球数百万学者、学生和研究者获取资源的重要平台。然而,为…...

Youtu-VL-4B-Instruct智能助手:HR简历图像解析+关键信息抽取+结构化入库

Youtu-VL-4B-Instruct智能助手:HR简历图像解析关键信息抽取结构化入库 1. 引言:当HR遇上成堆的简历图片 想象一下,你是公司的人力资源专员。每天,你的邮箱和招聘平台后台都会收到几十份、甚至上百份简历。这些简历格式五花八门&…...

Chandra OCR问题解决:两张卡部署常见问题与优化配置指南

Chandra OCR问题解决:两张卡部署常见问题与优化配置指南 1. 引言:为什么选择Chandra OCR Chandra OCR作为一款布局感知的OCR模型,在处理复杂文档时展现出显著优势。它能将图片/PDF转换为保留完整排版信息的Markdown、HTML或JSON格式&#x…...

智能客服工单系统:SpringCloud高可用、Agent智能分流与MCP协议深度面试实录

智能客服工单系统:SpringCloud高可用、Agent智能分流与MCP协议深度面试实录面试背景:随着企业规模化发展,智能客服和工单系统需应对高并发用户咨询、实时分流、复杂知识库检索与AI智能辅助。本文选取智能客服与工单场景,结合Sprin…...

告别虚拟机卡顿:在Ubuntu 18.04双系统上,用ROS Melodic和MoveIt!为机械臂仿真铺路

告别虚拟机卡顿:Ubuntu 18.04双系统下的ROS机械臂仿真环境搭建指南 当你在虚拟机上运行Gazebo机械臂仿真时,是否经历过画面卡成PPT的绝望?或是看着YOLOv5目标检测模型训练进度条几乎停滞的崩溃?这些性能瓶颈的根源,往往…...

Qwen-Image从零开始:开发者如何利用该镜像快速验证自定义图文Prompt工程效果

Qwen-Image从零开始:开发者如何利用该镜像快速验证自定义图文Prompt工程效果 1. 为什么选择这个镜像 如果你正在寻找一个开箱即用的多模态大模型开发环境,这个基于Qwen-Image定制的镜像可能是你的理想选择。想象一下,你拿到一台新电脑&…...

实战篇:杰理AC632N板级配置与低功耗管理解析

1. 杰理AC632N开发板核心配置解析 第一次拿到杰理AC632N开发板时,很多开发者都会遇到一个共同问题:官方资料不完整。这时候就需要我们通过阅读源码来理解板级配置。board_ac632n_demo.c这个文件就像开发板的"身份证",记录着所有关键…...

TPFanCtrl2双风扇协同技术解析:破解ThinkPad性能释放瓶颈的创新方案

TPFanCtrl2双风扇协同技术解析:破解ThinkPad性能释放瓶颈的创新方案 【免费下载链接】TPFanCtrl2 ThinkPad Fan Control 2 (Dual Fan) for Windows 10 and 11 项目地址: https://gitcode.com/gh_mirrors/tp/TPFanCtrl2 一、问题发现:程序员视角下…...

SEO_避开这些SEO误区,让你的优化事半功倍(308 )

SEO误区一:堆砌关键词在过去的几年中,很多网站都曾尝试过堆砌关键词来提升SEO效果,这是一个非常明显的SEO误区。尽管在早期的搜索引擎算法中,关键词密度高的页面可能会得到更高的排名,但现代的搜索引擎算法已经足够智能…...

MicroPython驱动ST7789屏避坑实录:从GB2312到完整中文字库的升级之路

MicroPython驱动ST7789屏实战:突破GB2312限制的全套中文显示方案 在物联网设备开发中,TFT显示屏作为人机交互的重要窗口,其显示效果直接影响用户体验。当我们从128x160分辨率的ST7735升级到240x240的ST7789时,本以为只是简单的驱动…...

国产安路FPGA原语实战:从查找手册到IODELAY仿真全流程解析

国产安路FPGA原语实战:从查找手册到IODELAY仿真全流程解析 在硬件设计领域,FPGA工程师常常需要直接调用底层硬件资源以实现精确控制。国产安路FPGA作为新兴力量,其原语使用方式与主流厂商存在差异,这成为许多开发者面临的现实挑战…...

鼠标在线测试工具:全维度检测鼠标性能,本地处理更安全

这款免费在线鼠标测试工具是一款功能全面的鼠标性能检测类工具,可实现鼠标移动、滚轮、按键、响应速度的全维度检测,同时能生成详细的性能分析报告。工具全程在本地浏览器完成数据处理,无需下载安装、无数据上传,操作界面直观且反…...

保姆级教程:用Python和PyTorch复现LSS(Lift-Splat-Shoot)算法,手把手搭建你的第一个BEV感知模型

保姆级教程:用Python和PyTorch复现LSS(Lift-Splat-Shoot)算法,手把手搭建你的第一个BEV感知模型 在自动驾驶领域,鸟瞰图(BEV)感知正迅速成为核心技术范式。想象一下,当人类驾驶员需要…...

探索和利时DCS软件MACS 6.5.4虚拟机:功能、案例与学习指南

和利时DCS软件MACS 6.5.4 虚拟机(送一个工程案例),可以在线仿真,送学习资料。 不含加密狗,8小时软件会自动退出,退出重新打开软件即可最近在工业自动化控制领域,和利时DCS软件MACS 6.5.4虚拟机引…...

跨平台实战:Windows QGC与Linux JMAVSim模拟器局域网联调指南

1. 环境准备与基础概念 在开始跨平台联调之前,我们需要先理解几个关键组件。QGroundControl(QGC)是无人机领域最流行的开源地面站软件,相当于飞行器的"指挥中心";而JMAVSim是PX4生态中的轻量级仿真器&#x…...

基于STM32的指纹密码锁系统功能说明

(N27)基于STM32指纹密码锁proteus仿真设计本文档详细阐述了一款基于STM32微控制器的指纹密码锁系统的整体架构与核心功能。该系统融合了指纹识别与传统密码验证两种身份认证方式,并集成了LCD人机交互界面、非易失性数据存储以及系统状态管理等…...

从零开始:5分钟快速理解Docker Engine的核心工作原理

从零开始:5分钟快速理解Docker Engine的核心工作原理 当你第一次听说Docker时,可能会被各种术语搞得晕头转向——容器、镜像、Dockerfile、Docker Compose... 但所有这些概念的核心,都建立在Docker Engine这个基础组件之上。作为Docker技术栈…...

Dify多租户Token成本分摊难题破解(含RBAC+Namespace+Model Provider三级计费模型):某金融客户落地实录

第一章:Dify多租户Token成本分摊难题的业务动因与技术挑战在企业级AI应用平台中,Dify作为低代码LLM编排框架被广泛用于构建面向多个业务部门或外部客户的SaaS服务。当同一Dify实例承载多个租户(Tenant)时,底层大模型调…...

3大智能功能深度解析:Zotero茉莉花插件如何提升中文文献管理效率

3大智能功能深度解析:Zotero茉莉花插件如何提升中文文献管理效率 【免费下载链接】jasminum A Zotero add-on to retrive CNKI meta data. 一个简单的Zotero 插件,用于识别中文元数据 项目地址: https://gitcode.com/gh_mirrors/ja/jasminum Zote…...

番茄小说下载器:一站式离线阅读解决方案

番茄小说下载器:一站式离线阅读解决方案 【免费下载链接】Tomato-Novel-Downloader 番茄小说下载器不精简版 项目地址: https://gitcode.com/gh_mirrors/to/Tomato-Novel-Downloader 在地铁通勤时网络突然中断,正看到精彩章节却无法加载&#xff…...

从 0 到可用:Claude Code × Amazon Bedrock 实战打通指南

这条链路本质就是一件事:让 Claude Code 不再走 Anthropic 直连,而是通过 AWS Bedrock 调模型。路径很清晰,两段:Bedrock 开通 Claude 权限 → Claude Code 切 AWS 凭证下面把整个过程拆成一套可以直接落地的流程。一、先把 Bedr…...

华为eNSP防火墙安全策略实战:基于区域互访的精细化流量控制

1. 华为eNSP防火墙安全策略入门指南 第一次接触华为eNSP防火墙配置的朋友可能会被各种区域和策略搞得晕头转向。其实理解防火墙的核心逻辑很简单——就像小区门禁管理:Trust区域相当于业主家(最高信任级别),DMZ区域是小区会所&am…...

Qwen3.5-9B开源部署教程:Gradio一键启动GPU加速推理服务

Qwen3.5-9B开源部署教程:Gradio一键启动GPU加速推理服务 1. 前言:为什么选择Qwen3.5-9B Qwen3.5-9B是通义千问团队最新推出的开源大语言模型,相比前代产品在多模态理解和推理能力上有了显著提升。对于开发者而言,这个模型最大的…...

OceanBase 初识:为什么需要一个“既能跑又能跳“的数据库

status: 学习中OceanBase 初识:为什么需要一个"既能跑又能跳"的数据库 从一个真实场景说起 想象你在运营一个电商平台。双十一零点,订单像洪水一样涌入: OLTP 场景:用户下单、支付、库存扣减 → 要求极低延迟、强一致性…...

基于RexUniNLU的智能客服质检系统开发

基于RexUniNLU的智能客服质检系统开发 1. 引言 电商客服每天要处理成千上万的客户咨询,从商品咨询到售后问题,从物流跟踪到投诉处理。传统的人工质检方式就像大海捞针,质检员只能抽查少量对话,既费时又容易遗漏关键问题。更头疼…...