Macos系统编译percona及部分函数在Macos系统上运算差异

LaTeX参考文献管理:从BibTeX到BibLaTeX的完整指南与实战避坑 在学术写作与专业文档排版中,参考文献管理是确保内容严谨性与格式规范性的核心技术环节。其核心原理在于将文献元数据(作者、标题、年份等)与文档内容分离存储,通过引用键(Citation Key)建立动态关联,从而实现文献信息的集中管理与自动格式化。这项技术的核心价值在于彻底解决了手动维护引用顺序与文献列表时易出错、效率低下的痛点,实现了“一处修改,全局更新”的自动化工作流。在应用场景上,它广泛服务于学术论文、技术报告、书籍著作等需要严格遵循特定引用格式(如IEEE、APA、国标GB/T 7714)的文档生产。本 阅读详情

欢迎来到 GreatSQL社区分享的MySQL技术文章,如有疑问或想学习的内容,可以在下方评论区留言,看到后会进行解答

本文来源:原创投稿

  • GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。
  1. 准备

  2. 编译环境部署

2.1 首先先安装Cmake

2.2 也可以使用软件包管理工具brew进行安装

2.3 其他软件包安装类同,注意安装包版本

2.4 所有软件包安装完成后解压percona源码到自己目录

  1. 可能出现的问题

  2. 目前percona部分函数在Macos系统与ubuntu、centos上的差异

1. 准备

编译环境所需软件包,依次安装:

CMake3.21.2、OpenSSL1.1、ncurses、bison3.5.1、m4、boost1.73、flex 2.6.4

以上软件包可以自行到对应官网下载安装,下载地址参考如下

2. 编译环境部署

2.1 首先先安装Cmake

双击cmake安装包进行安装,安装完成后执行命令查看cmake版本

$cmake --version

2.2 也可以使用软件包管理工具brew进行安装

以下具体以brew方式安装为样例

  • 1)首先安装软件包管理⼯具
brew /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
  • 2)使用以下命令先查看需要安装的版本是否存在,例如:
$ brew search openssl

找到对应版本1.1后执行命令进行安装

$ brew install openssl@1.1

安装完成执行以下命令后根据提示设置环境变量

$ brew link openssl --force

编辑⽤户根⽬录.profile 文件(Macos系统版本不同文件名可能存在不同,根据提示操作相应文件)加⼊环境变量,添加该文件如:

根据安装完提示加⼊

export PATH="/usr/local/opt/openssl@1.1/bin:$PATH"
export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"

2.3 其他软件包安装类同,注意安装包版本

2.4 所有软件包安装完成后解压percona源码到自己目录

进入percona源码目录,根据自己设置命令中相应资源目录:

  • -DWITH_ROCKSDB :boost压缩包目录
  • -DCMAKE_INSTALL_PREFIX:编译完成后默认安装目录
  • 其他参数可根据需要自行添加和修改,命令参考如下:
$ cmake -DCMAKE_BUILD_TYPE=DEBUG -DWITH_DEBUG=true -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost/ -DCMAKE_INSTALL_PREFIX=/usr/local/percona/ -DWITH_ZLIB=bundled -DWITH_LIBEVENT=bundled 

执行成功后再执行编译并安装,其中-j10表示10个编译命令并行编译可以提高编译速度,具体并行编译命令使用个数可以根据自身电脑配置情况设定

$ make -j10 && make install

编译并安装完成后配置my.cnf文件启动数据库

3. 可能出现的问题

  • 1)编译过程中如果出现提示xcode安装,根据提示安装即可
  • 2)因为Macos系统默认使用自己的ssl库,在cmake编译过程中如果出现提示找不到ssl库错误,此时可以在cmake命令后加入参数指定openssl目录
  • DWITH_SSL='/usr/local/opt/openssl@1.1'
  • 3)出现错误后,再次执行cmake 命令前先清理CMakeCache.txt文件

4. 目前percona部分函数在Macos系统与ubuntu、centos上的差异

由于系统原因目前percona一些函数运算结果与其他系统存在一定的差异例如:以整数123456求正弦值等为例

file

Enjoy GreatSQL :)

文章推荐:

GreatSQL MGR FAQ https://mp.weixin.qq.com/s/J6wkUpGXw3YkyEUJXiZ9xA

万答#12,MGR整个集群挂掉后,如何才能自动选主,不用手动干预 https://mp.weixin.qq.com/s/07o1poO44zwQIvaJNKEoPA

『2021数据技术嘉年华·ON LINE』:《MySQL高可用架构演进及实践》 https://mp.weixin.qq.com/s/u7k99y6i7riq7ScYs7ySnA

一条sql语句慢在哪之抓包分析 https://mp.weixin.qq.com/s/AYibbzl860D90rOeyjB6IQ

万答#15,都有哪些情况可能导致MGR服务无法启动 https://mp.weixin.qq.com/s/inSGpd0Q_XIl2Mb-VsvNsA

技术分享 | 为什么MGR一致性模式不推荐AFTER https://mp.weixin.qq.com/s/rNeq479RNsklY1BlfKOsYg

关于 GreatSQL

GreatSQL是由万里数据库维护的MySQL分支,专注于提升MGR可靠性及性能,支持InnoDB并行查询特性,是适用于金融级应用的MySQL分支版本。

Gitee: https://gitee.com/GreatSQL/GreatSQL

GitHub: https://github.com/GreatSQL/GreatSQL

Bilibili: https://space.bilibili.com/1363850082/video

微信&QQ群: 可搜索添加GreatSQL社区助手微信好友,发送验证信息“加群”加入GreatSQL/MGR交流微信群

QQ群:533341697 微信小助手:wanlidbc

本文由博客一文多发平台 OpenWrite 发布!

C++读取中文文本文件乱码问题:从编码原理到跨平台解决方案 字符编码是计算机处理文本信息的基础,它定义了字节序列与字符之间的映射规则。其核心原理在于为每个字符分配唯一的数字标识,并通过特定算法进行存储和传输。在C++工程实践中,正确处理字符编码对于确保文本数据的正确读写、显示和交换至关重要,尤其是在处理多语言和跨平台应用时。当文件存储编码与程序解释编码不一致时,就会出现乱码问题,这直接影响到文本分析工具、游戏本地化、日志处理等场景的数据可靠性。本文聚焦C++文件操作中的经典乱码难题,深入剖析std::ifstream与多字节编码(如UTF-8、GBK)冲突的根源,并 阅读详情

相关推荐

PhpStorm 2025.1深度解析:AI原生协同与Webman调试实战

PHP集成开发环境(IDE)正从语法识别迈向代码意图理解,其核心演进体现在智能上下文感知、AI驱动的工程辅助与框架深度适配三大维度。PhpStorm作为专业PHP IDE代表,依托JetBrains多年生态积累,在2025.1版本中首次实现对Swoole协程运行时的原生调试支持,并将本地大模型推理能力嵌入开发流。技术价值在于降低高并发PHP项目(如Webman、Laravel)的调试门槛,自动化数据库优化建议(如MySQL表碎片分析),并重构开发者日常操作范式——从手动配置Docker到一键服务编排,从va

clijovtbq401783153的博客 482

Ubuntu 12.04 VPS 上部署 Bacula 备份系统实战指南

Bacula 是一款成熟的企业级开源备份框架,支持跨平台、多存储、作业调度与Catalog元数据管理,其核心价值在于资源可控性与架构确定性。在低配VPS(如384MB内存、无systemd、内核3.2)等受限环境中,Bacula凭借轻量进程模型、静态依赖链和可裁剪功能集,成为rsync或duplicity之外更可靠的备份方案。尤其适配老旧生产节点、工业采集终端及离线兜底场景,技术关键点包括MySQL Catalog替代SQLite以规避ext4竞态、All-in-One单机部署规避I/O抖动、以及基于apt

weixin_34268310的博客 513

Docker Compose 搭建 Laravel 开发环境:Nginx + MySQL 最佳实践

Docker Compose 是一种声明式容器编排工具,通过 YAML 文件定义多容器应用的服务依赖、网络与卷配置,实现开发环境的一致性与可复现性。其核心价值在于将运行时契约固化为版本可控的基础设施代码,显著降低团队协作中的环境差异成本。在 PHP Web 开发领域,尤其面向 Laravel 框架,结合 Nginx 作为反向代理与静态服务、MySQL 8.0 作为严格兼容的持久化引擎,构成高稳定、易调试、可审计的本地开发底座。该方案规避了 Laravel Sail 的黑盒封装局限,强调进程隔离、初始化可控与

anvt77205的博客 436

Mac终端给Unix可执行文件main函数输入参数

Mac终端给Unix可执行文件main函数输入参数 看网上对Windows的可执行文件输入main函数参数还是比较多的,找挺久也难找到mac给main函数输入参数的,所以这里补充一下,mac基础源于Unix,用Unix的方法应该是通用的 #include <stdio.h> int main(int argc, char *argv[]) { printf("argc: %d",argc); putchar(10); for (int i=0;i<argc;i++) {

haoyun的博客 1226

无人自行车平衡控制:最小二乘法动态零点拟合实践

本文探讨了无人自行车平衡控制中动态零点的重要性及实现方法。通过最小二乘法拟合车头角度与ROL值的线性关系,解决了固定零点在转向时导致的稳定性问题。实践表明,动态零点拟合能显著提升系统平衡稳定性并降低能耗。

uran的专栏 660

Lumerical FDTD新手必看:从零开始搭建光子晶体仿真环境(附完整脚本)

本文为Lumerical FDTD新手提供光子晶体仿真环境的完整搭建指南,涵盖从基础参数设置到脚本编写的全流程。通过典型光子晶体带隙分析案例,详细讲解结构建模、仿真参数配置及后处理技巧,并附赠完整MATLAB脚本,帮助用户快速掌握FDTD仿真核心技术。

3c4x5z6v7b的博客 1052

关于mac编译器的那点事儿

如何查看mac自带的编译器 终端输入:gcc -v 会得到如下结果 可以看到使用的 方法二 #include <iostream> using namespace std; int main() { cout << __VERSION__ << endl; return 0; } 传统编译器的工作原理基本上都是三段式的,可以分为前端(Fr...

ShawnLyf的博客 3613

交叉熵损失函数基本概念及公式

对于二分类问题,模型的输出通常是一个标量,表示样本属于正类的概率。因此,在二分类的交叉熵损失函数中,我们只需要考虑一个概率值,即模型预测为正类的概率。具体来说,当真实标签为1时,我们关注模型预测为正类的概率;当真实标签为0时,我们关注模型预测为负类的概率。因此,二分类的交叉熵损失函数可以表示为:其中,y 表示真实标签,取值为 0 或 1;p 表示模型预测为正类的概率。而对于多分类问题,模型的输出通常是一个向量,表示样本属于各个类别的概率。因此,在多分类的交叉熵损失函数中,我们需要考虑所有类别的概率。

qlkaicx的博客 1万+

centos7.8环境下python3.6.10安装mysqlclient报错 /usr/bin/ld: cannot find -lperconaserverclient 的问题处理...

centos7.8环境下python3.6.10安装mysqlclient报错 /usr/bin/ld: cannot find -lperconaserverclient 的问题处理# python3 setup.py install/usr/local/python3.6.7/lib/python3.6/distutils/dist.py:261: UserWarning: Unkn...

reblue520的专栏 640

PX4从放弃到精通(二十七):固定翼姿态控制

固件版本 PX4 1.13.2欢迎交流学习,可加左侧名片。

超维空间科技的博客 6888

【Arduino 动手做】构建一个迷你 Las Vegas RGB LED 球体

《Arduino迷你拉斯维加斯球体项目:15岁少年的创意挑战》 15岁的Ben通过本项目展示了如何利用Arduino平台制作一个经济实惠的迷你拉斯维加斯球体夜灯。该项目涉及LED选择(采用WS2812B可编程灯带)、电子元件配置(含Arduino Nano微控制器和红外遥控)以及3D建模设计(100毫米直径球体)。项目难点包括LED布局优化、供电方案设计和3D打印外壳制作。Ben详细记录了从背景研究、电路设计到最终实现的完整过程,特别强调了分辨率与成本的平衡,以及如何通过白色扩散器改善视觉效果。这个项目不仅

雕爷学编程 1024

mac上c++11的编译问题

因为没有翻墙,就在百度上搜遇到的这个小问题的答案,找的真是心烦意乱。 记载一下,以供备用。在mac终端编译C++,大多情况下,因为新加了C++11的特性,会提示warning,比如auto这样的关键字。虽然warning,但是程序能跑,也就没有太过在意。这次在g++下编译含lambda表达式函数就不行,总是expected expression最后发现问题来自于:没有开启在C++11下编译模式。

Bing's Blog 6283

【大模型+知识图谱】哈工大版chinese-roberta-wwm-ext模型介绍、下载部署和GPU显卡配置

RoBERTa模型的一个重要改进版本,由阿里云的研究团队提出。而Chinese RoBERTa-wwm-ext则是针对中文文本的预训练模型,它在哈工大的研究团队手中进一步优化,特别适用于中文自然语言处理任务。

知识靠谱的博客 2773

MacOS下编译percona及部分函数的运算差异

本文首发于GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源1. 准备2. 编译环境部署2.1 首先先安装Cmake2.2 也可以使用软件包管理工具brew进行安装...

老叶茶馆 263

数字电视中的 Closed Caption (CC) 字幕标准协议

本文将详细介绍 DVB中的 CC 字幕标准协议,包括数据结构格式、字段定义、字段占用比特数以及字段用途。此外,本文还将举例说明如何从 TS 传输流中解析 CC 字幕信息,并组织打包到电视节目中进行显示。

以实战经验介绍行业知识 670

完整复现YOLOv8:包括训练、测试、评估、预测阶段【本文源码已开源,地址在文章末尾】

(这里主要是在colab.research.google.com实现的,本地的配置也是类似的方法)YOLOv8是一种用于目标检测的深度学习算法。主要参考:https://github.com/ultralytics/ultralytics/blob/main/README.zh-CN.md。yolov8的权重:https://github.com/ultralytics/assets/releases。yolov8的文档:https://v8docs.ultralytics.com/

源代码杀手的博客 1万+

数据库工具:Mycli、TablePro、VeloxDB、Universal SQL Editor、DBModeler、SQLark

数据库工具:Mycli、TablePro、VeloxDB、Universal SQL Editor、DBModeler、SQLark

lonelymanontheway的博客 249

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Docker 部署 MySQL 生产级实践:镜像选型、持久化、主从集群与避坑指南

MySQL 容器化是现代应用开发与运维的基础能力,其本质是通过声明式配置实现环境一致性与可复现性。基于 Docker 的 MySQL 部署需深入理解镜像机制、数据持久化原理(如命名卷权限与性能差异)、网络隔离模型及字符集/InnoDB 等核心参数配置逻辑。技术价值在于消除‘本地能跑线上崩’的环境漂移问题,支撑多版本共存、CI/CD 自动化与跨平台协作。典型应用场景包括微服务数据库隔离、测试环境快速构建、主从复制集群编排及 DevOps 流水线集成。本文聚焦 Docker 化 MySQL 的工程落地细节,涵盖

370

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

数据库安全入门:从SQL注入到防御加固的实战指南

数据库作为应用数据的核心存储系统,其安全性直接关系到整个业务系统的稳定。SQL(结构化查询语言)是与数据库交互的标准方式,但不当的使用方式会引发严重的安全漏洞。理解SQL注入的原理至关重要,它源于将用户输入直接拼接到SQL语句中,导致攻击者能够执行恶意指令。这种漏洞不仅威胁数据机密性和完整性,还可能引发权限提升和服务拒绝等风险。在网络安全领域,掌握数据库安全知识是进行Web应用渗透测试和漏洞挖掘的基础。通过搭建本地实验环境,学习者可以安全地模拟攻击与防御过程,深入理解参数化查询、最小权限原则等关键防御技术。

weixin_33901641的博客 406

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

MySQL从入门到精通:安装、SQL、索引、事务与Spring Boot集成全攻略

关系型数据库是数据持久化存储与管理的核心技术,其通过SQL语言实现对结构化数据的高效操作。理解其核心原理,如索引机制如何加速查询、事务ACID特性如何保障数据一致性,是构建稳定可靠应用系统的基石。这些技术广泛应用于Web后端、企业信息系统等需要高并发事务处理的OLTP场景。本文聚焦MySQL这一最流行的开源关系型数据库,提供从零开始的完整学习路径,涵盖环境部署、SQL语法、性能优化等关键实践,并详解如何与Spring Boot框架集成,助力开发者快速掌握数据库开发与运维的核心技能。

weixin_30527323的博客 412

MySQL从入门到精通:实战指南与性能优化全解析

如果你正在学习后端开发、数据分析,或者任何需要存储数据的应用,那么你大概率绕不开一个名字:MySQL。它几乎是所有技术栈的标配,从个人博客到千万级用户的互联网产品,背后都有它的身影。然而,很多初学者在接触MySQL时,会陷入一个误区:以为会写几句 SELECT * FROM users 就是掌握了数据库。结果在实际项目中,面对性能瓶颈、数据不一致、安全漏洞时,往往束手无策。 这篇文章要解决的,正是这个核心痛点: 如何从“会用”MySQL,到真正“精通”MySQL,建立起一套从安装部署到高级优化的完整知识体系

weixin_34117211的博客 631

MySQL安装与配置全指南:从入门到实践

关系型数据库是数据存储和管理的核心技术,MySQL作为最流行的开源关系型数据库之一,广泛应用于Web开发、企业系统等领域。其核心原理基于SQL标准,通过表结构存储数据并支持ACID事务特性。在技术价值方面,MySQL提供了高性能、高可靠的数据服务,支持主从复制、分区表等高级功能。实际应用场景包括电商平台用户数据管理、物联网设备数据存储等。本文以MySQL 8.0为例,详细讲解Windows和Linux平台的安装步骤,涵盖版本选择、环境配置、性能优化等关键环节,特别针对innodb_buffer_pool_s

weixin_34323858的博客 367

15MB轻量数据库客户端崛起:从DBX看开发工具效率革命

数据库客户端是开发者和DBA进行数据查询、管理与维护的核心工具。其核心原理在于通过标准驱动协议(如JDBC/ODBC)与数据库建立连接,并提供一个图形化界面来执行SQL、浏览元数据和操作结果集。在技术价值上,优秀的客户端能极大提升数据操作效率、降低认知负荷,并保障操作安全。随着云原生和敏捷开发成为主流,工具的应用场景已从单一管理扩展到日常开发调试、多环境切换和快速问题排查。传统重量级客户端虽然功能全面,但普遍存在启动缓慢、资源占用高、功能冗余等问题,影响了高频场景下的使用体验。近年来,以DBX为代表的轻量级

weixin_34221775的博客 342

Redis 数据库 入门 教程

Redis 数据库入门教程

freeking101的博客 3684

Ubuntu 14.04 MySQL数据库迁移实战:数据、权限、配置一致性保障

MySQL数据库迁移不是简单的文件拷贝,而是涵盖数据、用户权限、字符集、自增主键、配置参数与服务行为的全栈一致性重建。其核心原理在于保障源库与目标库在逻辑结构、存储引擎(如InnoDB)、SQL模式及运行时状态上的数字孪生。技术价值体现在避免锁表中断、emoji乱码、权限失效、主键冲突等生产事故;典型应用场景包括老旧系统升级(如Ubuntu 14.04→新OS)、云迁移、硬件替换及高可用架构重构。本文聚焦MySQL 5.5环境下的迁移实践,深度解析mysqldump逻辑导出与rsync物理拷贝双路径选型依据

weixin_30514745的博客 298

云原生技术问题

整体流程涉及DNS、ARP、TCP、IP、HTTP核心协议,完整过程如下:首先进行DNS解析,将域名解析为服务器IP,依次查询浏览器缓存、系统hosts、本地DNS缓存,未命中则向DNS服务器迭代查询。核心区别:TCP是面向连接的可靠传输协议,需三次握手建连,具备重传、校验、流量控制、拥塞控制机制,报文开销大、传输延迟高;traceroute利用ICMP超时报文:通过逐级递增数据包TTL值,每经过一台路由器TTL减1,TTL归零后路由器返回ICMP超时报文,以此获取链路所有路由节点IP,定位故障链路。

2303_81849819的博客 465
上一篇: 万答17,AWS RDS怎么搭建本地同步库
下一篇: 万答#18,MySQL8.0 如何快速回收膨胀的UNDO表空间
GreatSQL社区
博客等级 码龄5年 1210粉丝 390原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值