FreeBSD 6 手動編譯 MySQL5 (最佳化)(ZT)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:
根據 FreeBSD maillist、google 獲知 libthr 這樣1:1 的線程庫比較適合 MySQL 運行。
編譯參數:
預設啟用archive類型儲存格式,啟用支持大表,啟用OpenSSL支持,預設使用thr線程庫
./configure --prefix=/usr/local/mysql --without-debug --without-bench --enable-thread-safe-client --enable-assembler --with-extra-charsets=complex --with-named-thread-libs='-lthr' --with-archive-storage-engine --with-big-tables --with-openssl
# gmake all install-strip
性能調整:
configure 時增加以下env可以為P4系列cpu優化:
CFLAGS='-O2 -pipe -mtune=pentium4 -mmmx -msse -msse2 -mfpmath=sse' CXXFLAGS='-O2 -pipe -mtune=pentium4 -mmmx -msse -msse2 -mfpmath=sse'
P3系列CFLAGS='-O2 -pipe -mtune=pentium3 -mmmx -msse -mfpmath=sse' CXXFLAGS='-O2 -pipe -mtune=pentium4 -mmmx -msse -mfpmath=sse'
CC,C++的優化指令會減慢編譯速度20%左右,性能提高約4%左右
PS:當編譯OpenSSL支持的時候,MySQL不能編譯為靜態鏈接程序。
如果不用OpenSSL,可以在configure添加
--with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static
編譯為靜態鏈接將提高約2%左右的性能
===================================
目前 PCZONE 用的系統是 FreeBSD 6 + MySQL 5
MySQL 是我自己手動 compile 的
之前找了不少資料 , 網路上高手測試文章顯示 libthr 效能比較好 , 故捨棄 linuxthreads 而改採 libthr
要採用 libthr 可在編譯完 mysql 後 , 編輯 /etc/libmap.conf , 並加入下列資料
[mysqld]
libpthread.so.2 libthr.so.2
libpthread.so libthr.so
重新開機後 , 執行指令:ldd /usr/local/libexec/mysqld
可看到下列資訊
/usr/local/libexec/mysqld:
libz.so.3 => /lib/libz.so.3 (0x65fac000)
libwrap.so.4 => /usr/lib/libwrap.so.4 (0x65fbc000)
libcrypt.so.3 => /lib/libcrypt.so.3 (0x65fc3000)
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x65fdc000)
libm.so.4 => /lib/libm.so.4 (0x660aa000)
libpthread.so.2 => /usr/lib/libthr.so.2 (0x660c0000)
libc.so.6 => /lib/libc.so.6 (0x660d3000)
出現 libpthread.so.2 => /usr/lib/libthr.so.2 代表 MySQL 已採 libthr 運作


本文转自叶金荣51CTO博客,原文链接:http://blog.51cto.com/imysql/308542,如需转载请自行联系原作者
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
102 3
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
86 2
|
2月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置服务等,并与使用 RPM 包安装进行了对比,帮助读者根据需求选择合适的方法。编译源码安装虽然复杂,但提供了更高的定制性和灵活性。
282 2
|
2月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤
【10月更文挑战第7天】本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据自身需求选择合适的方法。
62 3
|
4月前
|
关系型数据库 MySQL Linux
【一键解锁神秘力量!】CentOS 7 通过编译源码方式安装 MySQL 数据库 —— 从零到英雄的数据库安装实战秘籍!
【8月更文挑战第9天】随着业务增长,对数据库的需求日益提高。在 CentOS 7 中,通过编译源码安装 MySQL 可提供更高定制性和灵活性。本文详细介绍从准备环境、下载源码、配置编译参数到安装 MySQL 的全过程,并对比 RPM 包安装方法,帮助读者根据需求选择合适方案。实践时需注意备份数据、选择合适版本、确保安全性和调优性能等要点。
230 1
|
6月前
|
消息中间件 关系型数据库 MySQL
实时计算 Flink版操作报错合集之同步MySQL数据并EP(复杂事件处理)时,编译报错,如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
126 1
|
关系型数据库 MySQL 数据安全/隐私保护
Ubuntu18.04.6 通过自编译的方式指定mysql5.7安装目录(有网络)
Ubuntu18.04.6 通过自编译的方式指定mysql5.7安装目录(有网络)
110 0
|
关系型数据库 MySQL Shell
centos编译安装mysql
centos编译安装mysql
212 0
|
存储 关系型数据库 MySQL
CentOS 9 环境编译部署 MySQL 8.0.30
CentOS 9 环境编译部署 MySQL 8.0.30
820 0
|
关系型数据库 MySQL 网络安全
记一次mysql 5.7.34编译过程错误
记一次mysql 5.7.34编译过程错误
118 0

推荐镜像

更多
下一篇
DataWorks