启动MySQL如何加载Jemalloc

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 启动MySQL如何加载Jemalloc

如何加载Jemalloc。

有时候,我们想采用Jemalloc代替glibc自带的lib库,或者如果想启用TokuDB引擎,则就必须启用Jemalloc才行了。

如果通过搜索引擎找到如何加载Jemalloc方法时,可能会看到像下面这种建议:

#修改my.cnf文件 [mysqld_safe]配置区间,加上Jemalloc选项
[mysqld_safe]
thp-setting = never
malloc-lib = /usr/lib64/libjemalloc.so

实际上这种做法现在已经不能用了。尤其是从MySQL 5.7版本开始,已经默认不使用mysqld_safe来启动了,可以改用下面的方法:

#在启动mysqld之前,执行命令

export LD_PRELOAD=/lib64/libjemalloc.so

#然后再正常启动mysqld即可,例如
/usr/local/mysql/bin/mysqld --default-file=/mysql/mysql-8.0/my.cnf &

LD_PRELOAD是个环境变量,用于动态库的加载,动态库加载的优先级最高。

一般情况下,其加载顺序为:

LD_PRELOAD>LD_LIBRARY_PATH => /etc/ld.so.cache => /lib => /usr/lib

然后执行下面的命令确认是否正确加载了:

[root@imysql ~]# lsof -p `pidof mysqld` | grep -i jemalloc
mysqld 21481 mysql mem REG 253,0 212096 1600 /usr/lib64/libjemalloc.so.1

如果能看到类似上面的结果,就表示成功了。

最后多说一句,也可以考虑采用Google的TCMalloc(Google Performance Tools项目),有同学测试过,其内存管理效率比Jemalloc还要略好些。

延伸阅读



            </div>
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
存储 NoSQL Java
|
4月前
|
数据采集 人工智能 自然语言处理
AI时代KPI管理全指南:2025年六项工具横向测评与最佳实践
KPI(关键绩效指标)管理正从传统考核向融合目标、过程与数据的智能化系统演进。本文详解其技术架构与实施路径,解析主流工具功能特性,提供科学选型建议。内容涵盖KPI体系设计、数据采集、分析反馈及热点问题解决方案,助力企业构建数据驱动的高效绩效管理系统,实现战略闭环管理。
519 0
|
Go 数据处理 API
Go语言在微服务架构中的应用与优势
本文摘要采用问答形式,以期提供更直接的信息获取方式。 Q1: 为什么选择Go语言进行微服务开发? A1: Go语言的并发模型、简洁的语法和高效的编译速度使其成为微服务架构的理想选择。 Q2: Go语言在微服务架构中有哪些优势? A2: 主要优势包括高性能、高并发处理能力、简洁的代码和强大的标准库。 Q3: 文章将如何展示Go语言在微服务中的应用? A3: 通过对比其他语言和展示Go语言在实际项目中的应用案例,来说明其在微服务架构中的优势。
|
弹性计算 语音技术
快速部署 ChatTTS 社区版
ChatTTS是专为对话场景设计的语音生成模型,特别适用于大型语言模型(LLM)助手的对话任务,以及诸如对话式音频和视频介绍等应用。它支持中文和英文,通过使用大约100,000小时的中文和英文数据进行训练,ChatTTS在语音合成中表现出高质量和自然度。本文介绍通过计算巢快速部署 ChatTTS 服务 。
快速部署 ChatTTS 社区版
|
SQL 监控 前端开发
Nightingale——夜莺监控版本升级
Nightingale——夜莺监控版本升级
229 0
|
JavaScript 关系型数据库 MySQL
❤Nodejs 第二章(Node连接本地数据库)
【4月更文挑战第2天】本文介绍了如何使用Node.js连接本地MySQL数据库。首先,提到了在MySQL官网下载安装数据库和使用Navicat for MySQL进行数据库管理。接着,通过`yarn add mysql`在项目中安装数据库依赖。然后,创建`app.js`文件,设置数据库连接参数,并建立连接进行查询操作。遇到导入模块的错误后,修改导入方式为CommonJS语法。
553 1
|
移动开发 前端开发 JavaScript
快速上手web前端开发(超详细教程)
快速上手web前端开发(超详细教程)
|
安全 Java API
第7章 Spring Security 的 REST API 与微服务安全(2024 最新版)(中)
第7章 Spring Security 的 REST API 与微服务安全(2024 最新版)
639 0
|
JavaScript 前端开发 数据可视化
富文本编辑器使用详细介绍
富文本编辑器使用详细介绍
487 0
|
数据采集 存储 算法
Python爬虫必备技能,使用 动态代理ip 获取Steam 热销商品 示例
动态代理ip 相信大家肯定都听说过,或者已经使用过。 本篇文章就来介绍一下什么是动态代理ip,还有一个使用代理ip爬取Youtube游戏模块主页。 使用动态ip有很多好处,比如保护你的网络免受外部攻击、屏蔽你的IP地址等。 那本篇文章就来研究一下这个动态ip,对这方面不了解的小伙伴正好可以一起学习一下。
Python爬虫必备技能,使用 动态代理ip 获取Steam 热销商品 示例