启动MySQL如何加载Jemalloc

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介: 启动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;
相关文章
|
分布式计算 DataWorks 关系型数据库
DataWorks数据源问题之脏数据如何解决
DataWorks数据源是指DataWorks中配置的用于数据集成的外部数据源;本合集将讲解如何在DataWorks中配置和管理数据源,以及处理数据源连接和集成过程中的问题。
363 2
|
2月前
|
网络协议 Linux Docker
Docker启动失败问题排查(一)
新公司切换至Windows环境后,Docker频繁启动失败,表现为引擎停止且图标无限加载。通过日志排查发现,问题源于Windows复杂网络配置导致Docker判断异常。最终通过分析`host`与`vm`目录下核心日志,定位并解决了网络服务初始化冲突问题。
379 4
|
SQL 关系型数据库 MySQL
|
缓存 监控 测试技术
如何利用浏览器的缓存来优化网站性能?
【10月更文挑战第23天】通过以上多种方法合理利用浏览器缓存,可以显著提高网站的性能,减少网络请求,加快资源加载速度,提升用户的访问体验。同时,要根据网站的具体情况和资源的特点,不断优化和调整缓存策略,以适应不断变化的业务需求和用户访问模式。
710 63
|
Ubuntu 开发工具 git
ubuntu20.04编译安装运行emqx - 蓝易云
以上就是在Ubuntu 20.04上编译安装运行EMQX的步骤。
671 0
阿里云国际版CDN网页打不开、页面报错该如何解决?
阿里云国际版CDN网页打不开、页面报错该如何解决?
|
SQL 存储 数据库
如何在SQLServer中创建数据库
在SQL Server中创建数据库,可通过SSMS的图形界面或T-SQL语句。在SSMS中,连接到服务器,右键“数据库”选择“新建数据库”,配置属性后点击确定。使用T-SQL,连接到服务器,编写CREATE DATABASE语句指定数据库名称、文件路径及大小信息,执行查询完成创建。确保有足够磁盘空间,并注意权限设置。
|
SQL 关系型数据库 MySQL
走进RDS之MySQL内存分配与管理(上)
MySQL的内存分配、使用、管理的模块较多,本篇文章主要介绍InnoDB层和SQL层内存分配管理器,主要包括ut_allocator、mem_heap_allocator和MEM_ROOT,代码版本主要基于8.0.25。
|
存储 Prometheus 索引
日志系统新贵Loki,确实比笨重的ELK轻
日志系统新贵Loki,确实比笨重的ELK轻
446 0
|
数据采集 缓存
【MODBUS】Modbus设备与云平台对接的方式
【MODBUS】Modbus设备与云平台对接的方式
576 0

热门文章

最新文章