单机MySQL数据库的优化
2011年07月15日
下面我们了解一下MySQL优化的一些建议,单机MySQL的优化我分为三个部分,一是服务器物理硬件的优化,二是MySQL安装时的编译优化,三是自身配置文件my.cnf的优化;如果单机的优化也解决不了你的数据库的压力的话,那这个时候就只有考虑采用集群架构的方法,这个我在后面也会重点说明。
单机MySQL数据库的优化
一、服务器硬件对MySQL性能的影响
磁盘寻道能力(磁盘I/O),我们现在上的都是SAS15000转的硬盘。MySQL每秒钟都在进行大量、复杂的查询操作,对磁盘的读写量可想而知。所以,通常认为磁盘I/O是制约MySQL性能的最大因素之一,对于日均访 问量在100万PV以上的Discuz!论坛,由于磁盘I/O的制约,MySQL的性能会非常低下!解决这一制约因素可以考虑以下几种解决方案: 使用RAID1+0磁盘阵列,注意不要尝试使用RAID-5,MySQL在RAID-5磁盘阵列上的效率不会像你期待的那样快; CPU 对于MySQL应用,推荐使用DELL R710,E5620 @2.40GHz(4 core)* 2 ,我现在比较喜欢DELL R710,也在用其作Linuxakg 虚拟化应用; 物理内存对于一台使用MySQL的Database Server来说,服务器内存建议不要小于2GB,推荐使用4GB以上的物理内存,不过内存对于现在的服务器而言可以说是一个可以忽略的问题,工作中遇到高端服务器基本上内存都超过了32G。我们工作中用得比较多的数据库服务器是HP DL580G5和DELL R710,稳定性和性能都不错;特别是DELL R710,我发现许多同行都是采用它作数据库的服务哭,所以重点推荐下。二、MySQL的线上安装
我建议采取编译安装的方法,这样性能上有较大提升,服务器系统我建议用64bit的Centos5.5,源码包的编译参数会默认以Debgu模式生成二进制代码,而Debug模式给MySQL带来的性能损失是比较大的,所以当我们编译准备安装的产品代码时,一定不要忘记使用“―without-debug”参数禁用Debug模式。
而如果把―with-mysqld-ldflags和―with-client-ldflags二个编译参数设置为―all-static的话,可以告诉编译器以静态方式编译和编译结果代码得到最高的性能。使用静态编译和使用动态编译的代码相比,性能差距可能会达到5%至10%之多。我参考了简朝阳先生的编译参数,特列如下,供大家参考
./configure
发表评论
-
apache1.3.39源码alloc.c阅读笔记
2012-01-20 00:48 643apache1.3.39源码alloc.c阅读笔记 2011 ... -
Web安全漏洞之:JDK1.5环境下扫描远程调试端口导致JVM崩溃【JDWP exit error JVMTI_ERROR_NONE(0)】
2012-01-20 00:48 1253Web安全漏洞之:JDK1.5环境 ... -
PowerTalkBox和飞信结合搞定在线客户端(.net)
2012-01-20 00:48 865PowerTalkBox和飞信结合搞 ... -
Lua的协同程序
2012-01-20 00:48 822Lua的协同程序 2011年03 ... -
同步 异步 阻塞 非阻塞
2012-01-20 00:48 640同步 异步 阻塞 非阻塞 2010年11月15日 阻塞: ... -
MaxDOS 8.0 发布,全面支持WIN7及X64系统
2012-01-17 01:05 1104MaxDOS 8.0 发布,全面支持WIN7及X64系统 2 ... -
DOS的命令
2012-01-17 01:05 593DOS的命令 2011年04月23日 先介绍一下通配符的 ... -
常用词汇解释
2012-01-17 01:05 566常用词汇解释 2011年02月10日 1*Android ... -
Linux下FrameBuffer直接写屏
2012-01-17 01:05 1408Linux下FrameBuffer直接写屏 2011年09月 ... -
关于手机开发socket笔记。
2012-01-15 19:47 706关于手机开发socket笔记。 2009年11月06日 ... -
提高 Linux 上 socket 性能
2012-01-15 19:47 515提高 Linux 上 socket 性能 ... -
【转】java socket程序
2012-01-15 19:47 520【转】java socket程序 200 ... -
Java-socket编程最基本介绍
2012-01-15 19:47 533Java-socket编程最基本介 ... -
Socket通信的网络仿真
2012-01-15 19:47 806Socket通信的网络仿真 2011年06月25日 这学 ...
相关推荐
本文试图描述单机数据库优化的一些实践,数据库基于mysql,如有不合理的地方,欢迎指正。 1、表结构优化 在开始做一个应用的时候,数据库的表结构设计往往会影响应用后期的性能,特别是用户量上来了以后的性能。...
可扩展性:MySQL可以在单机或者集群环境中运行,并且可以通过主从复制、分片等技术实现数据的水平和垂直扩展,以满足不同规模和需求的应用。 可移植性:MySQL可运行在多个操作系统上,包括Windows、Linux、macOS等...
比如项目中采用单机承担所有的读写业务,业务压力增大,不堪重负。如果 IO 压力在可接受的范围,会采用读写分离方案; 机器出现瓶颈。机器出现瓶颈主要在磁盘 IO 能力、内存、CPU,此时除了针对瓶颈做一些优化以外...
1.2. 从MySQL到TiDB 1.3. TiDB概述 1.4. 扩展阅读 第二章 TiDB架构特性 2.1. TiDB 整体架构 2.2. TiDB 核心特性 2.3. TiDB 存储和计算能力 2.4. 总结 第三章 TiDB安装部署 3.1. 部署方式选择 3.2. TiDB-...
不仅仅是CDN/Redis数据库索引等常用优化方法更有程序逻辑细节调整,产品策略技巧全新的优化思维4.从单机到web集群,从多服务器到多机房数据中心,服务器资源可随业务规模扩展,不局限于系统极限容量5.加入机器人服务...
TiDB 整套系统的复杂性比较高,运维及使用的难度要大于单机数据库,所以希望能提供尽可能方便的方案帮助用户使用 TiDB。比如尽可能简化部署、升级、扩容方式,尽可能容易的定位系统中出现的异常状态。 围绕上面三点...
OpenCloudb的目标是:低成本的将现有的单机数据库和应用平滑迁移到“云”端,解决数据存储和业务规模迅速增长情况下的数据瓶颈问题。 OpenCloudb的关键特性: • 支持Mysql集群,可以作为Proxy使用 • 自动故障切换...
其由携程技术中心框架部DAL团队开发,历经3年不断打磨,并在长期的实际使用中基于大量的用户反馈不断优化。 开源范围包括代码生成器,Java客户端和C#客户端。 注:C#客户端于2016年9月29日也正式开源了 背景 随着...
◆支持mysql,mongodb等第三方数据库模块,支持读写分离,分布式部署; ◆增加后台管理开发示例; ◆增加thrift模块,多线程支持hadoop HDFS海量存储组件 ◆修正thrift传输编码问题、优化传输速度 ◆增加...
◆支持mysql,mongodb等第三方数据库模块,支持读写分离,分布式部署; ◆增加后台管理开发示例; ◆增加thrift模块,多线程支持hadoop HDFS海量存储组件 ◆修正thrift传输编码问题、优化传输速度 ◆增加...
的目标是将当前的单机数据库和应用以低成本平滑迁移到云端,解决数据存储和业务规模快速增长带来的瓶颈问题。 为什么要使用 MyCat? 基于阿里巴巴开源项目Cobar,其稳定性、可靠性、优秀的架构和性能,以及众多成熟...
基于Mycat实习MySQL数据库读写分离 基于Mycat实战之数据库切分策略剖析 Mycat全局表、Er表、分片预警分析 Nginx 基于OpenResty部署应用层Nginx以及Nginx+lua实战 Nginx反向代理服务器及负载均衡服务器配置实战...
├─补充1:拔高课程(Redis3.0持久化、集群、MySQL5.6优化、Tomcat7优化) │ │ 打开必读.txt │ │ │ ├─课前资料 │ │ ├─MySQL5.6优化 │ │ │ MySql5.6性能优化.docx │ │ │ │ │ ├─Redis集群 │ ...
url缓存,对象缓存,页面静态化,RocketMQ异步下单,Nginx+lua访问redis提前返回无用请求等一系列措施来提高项目的并发能力,使用ApacheBench(简称ab)对系统进行压测时,以5k的并发度共发出10w个请求,单机(2核 ...
其由携程技术中心框架部DAL团队开发,历经3年不断打磨,并在长期的实际使用中基于大量的用户反馈不断优化。 开源范围包括代码生成器,Java客户端和C#客户端。 注:C#客户端于2016年9月29日也正式开源了 背景 随着...
3) 数 据 库:access/msde/mssql/mysql/oracle(不同数据库间可以无缝割接,数据不受影响) 4) 网络模式:单机/局域网/互联网 5) 运行环境:win 2000 xp vista win2007 6) 软件语言:简体/繁体 中文(数据库...
8.2 系统优化和容灾 147 8.3 应急预案 148 第3部分高并发 153 9 应用级缓存 154 9.1 缓存简介 154 9.2 缓存命中率 155 9.3 缓存回收策略 155 9.3.1 基于空间 155 9.3.2 基于容量 155 9.3.3 基于时间 155 9.3.4 基于...
⼤数据前篇(什么是⼤数据,应⽤场景,如何学习⼤数据库,虚拟机概念和安装等)、Linux常见命令(⽂件管理、系 统管理、磁盘管理)、Linux Shell编程(SHELL变量、循环控制、应⽤)、Hadoop⼊门(Hadoop组成、单机版...
J2ME优化压缩PNG文件 4个目标文件 内容索引:JAVA源码,综合应用,J2me游戏,PNG,图形处理 这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失...