`
zhaohaolin
  • 浏览: 1004433 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

MySQL海量数据优化

阅读更多

MySQL海量数据优化

经常见到有人对MySQL处理海量数据(几百万,几千万的数据就不要往海量上面扯了)的能力持怀疑的态度,根据我的经验,MySQL处理单表亿级数据没有任何问题。

数据库最重要的是安全稳定,速度其次。在做任何优化之前,你都必须做好最坏的打算,一定要有备份和应急方案!

要有一个稳定安全的数据库,你必须:

  • 至少要有一个热备
  • UPS
  • 做合适的RAID。RAID0+1,RAID5或者RAID6

如果可以,最好:

  • 使用xfs而不是ext3。哪天reboot后,你发现磁盘检查要半天,还不能停止,哭都来不及
  • 将数据库数据放入盘柜。更安全,访问更快

现在切入正题,开始优化:

  • 使用64位系统。这是老生常谈了,只要谈优化就少不了这个。不仅MySQL的性能有提升,内存也能使用超过4G。
  • 选择合适的引擎。一般来讲,innodb适合写频繁的表,myisam适合读频繁的表。
  • 建立正确的索引。推荐这篇文章 。虽然比较老了,但很经典。
  • 优化my.cnf里面的参数。主要关心和buffer有关的参数,innodb_buffer_pool_size之类的
  • 使用memcache。可以把访问频繁,不经常改动的小表放入memcache;程序对数据库的读操作之前最好访问一下memcache。
  • 打开slow_query_log选项。解决出现的慢查询语句。
  • 优化sql语句。
  • 使用SAS而不是SATA。数据库对硬盘要求很高,很多时候,换个快的硬盘就能有立竿见影的效果。

优化不可能一蹴而就,它是一个长期持续的过程 ,比如一些参数要在长期的运行中观察测试才能得到一个最优的值。


分享到:
评论

相关推荐

    Mysql 海量数据性能优化.rar

    MySQL是世界上最受欢迎的开源关系型数据库之一,尤其在处理海量数据...以上是MySQL海量数据性能优化的一些核心知识点。通过深入理解并实践这些方法,我们可以有效提升MySQL在大数据环境下的表现,保障系统的高效运行。

    MySQL海量数据查询优化策略.

    在处理MySQL海量数据查询优化时,我们需要关注的策略包括但不限于以下几点: 1. 优化索引使用:避免全表扫描至关重要。为此,应当在查询条件(WHERE)和排序(ORDER BY)涉及的列上创建索引。索引有助于数据库管理...

    MySQL海量数据存储与优化(上).pdf

    MySQL海量数据存储与优化 MySQL是一种关系型数据库管理系统,广泛应用于各个行业,包括互联网、金融、电信等领域。随着数据量的增长,MySQL的性能优化变得越来越重要。本文将详细介绍MySQL的架构原理、存储机制、...

    海量数据的MySQL数据集

    综上所述,“海量数据的MySQL数据集”是一个丰富的资源,涵盖了MySQL在大数据处理中的各种技术,包括优化策略、导入方法、存储引擎选择、数据冗余和复制、以及数据分析。对开发者和数据分析师来说,这是一个学习和...

    mysql海量数据

    ### MySQL海量数据处理技巧与策略 #### 一、引言 在大数据时代,数据库系统面临着前所未有的挑战。MySQL作为一款广泛使用的开源关系型数据库管理系统,其在处理海量数据时的表现尤为关键。本篇文章将深入探讨如何...

    mysql_海量数据库的查询优化及分页算法方案.doc

    MySQL 海量数据库的查询优化及分页算法方案 在大规模数据库中,查询优化和分页算法是两个非常重要的方面。本文将详细介绍 MySQL 海量数据库的查询优化和分页算法方案。 一、查询优化 查询优化是指通过调整查询...

    海量数据处理优化

    ### 海量数据处理优化知识点详解 #### 一、数据层架构 - **网站架构发展历程**:从最初的Perl、CGI、Oracle等技术发展至Java Servlets、EJB,再到现代架构,包括底层消息队列(MQ)、企业服务总线(ESB)、数据...

    mysql海量数据的存储和访问解决方案借鉴.pdf

    【MySQL海量数据存储和访问解决方案】 随着互联网的快速发展,数据量呈现爆炸式增长,如何有效存储和访问这些海量数据成为系统设计的关键挑战。对于大型互联网应用,如每天处理数十亿页面浏览量(PV),数据库承受...

    mysql海量数据的存储和访问解决方案归类.pdf

    总结,MySQL海量数据的存储和访问解决方案主要包括数据切分、负载均衡和读写分离,这些策略通过分布数据、优化访问路径和平衡负载,有效提升了系统的处理能力和稳定性。在实际应用中,需要根据业务特性和需求,选择...

    mysql海量数据的存储和访问解决方案汇编.pdf

    【MySQL海量数据存储和访问解决方案】随着互联网的快速发展,数据量呈爆炸式增长,传统的单台数据库服务器已无法满足大规模应用的需求。此时,数据切分成为解决存储和访问瓶颈的关键技术。数据切分,即Sharding,是...

    mysql 测试数据集,单表200万条数据

    - 分布式存储:通过MySQL集群或分布式数据库系统,如MySQL Cluster或InnoDB Cluster,处理海量数据。 7. 性能监控与调优: - 使用EXPLAIN分析SQL执行计划,找出查询瓶颈。 - 监控数据库性能指标,如CPU使用率、...

    Mysql海量数据存储和解决方案之-分布式DB方案.docx

    【标题】:MySQL海量数据存储与解决方案——分布式DB方案 【描述】:本方案探讨了在应对大规模互联网应用中遇到的数据库负载问题,主要关注的是MySQL的分布式数据库解决方案,包括数据切分、集群、负载均衡等技术,...

    面向海量天文数据的分布式MySQL锥形检索研究.pdf

    在当今的天文科学领域,随着大型天文观测装置的性能不断...未来,随着数据量的不断增长和新的存储技术的发展,分布式MySQL锥形检索等研究领域将会继续深化,更好地服务于天文科学以及其它需要处理海量数据的科研领域。

    海量数据管理报告.zip

    通过分析提供的三个文档——“海量数据管理第一次上机.docx”、“海量数据管理第三次上机报告.docx”以及“海量数据管理第2次上机.docx”,我们可以揭示出一系列关于海量数据处理的关键知识点。 首先,海量数据管理...

    多线程以JDBC的方式返回海量数据

    当我们需要处理海量数据时,结合这两者可以显著提升程序的效率和响应速度。本篇将深入探讨如何利用多线程和JDBC来高效地返回大数据。 首先,让我们了解什么是JDBC。JDBC是Java平台的标准API,它允许Java程序与各种...

    mysql处理海量数据时的一些优化查询速度方法

    MySQL在处理海量数据时,查询速度的优化是关键,尤其是当数据量达到百万级甚至更高时,普通SQL查询效率的降低会严重影响系统性能。以下是一些优化查询速度的方法: 1. **避免使用不等于(!= 或 )操作符**:在`...

    C#在MySQL大量数据下的高效读取、写入详解

    同时,设置命令超时以防止在处理海量数据时出现超时。 ```csharp using (var conn = new MySqlConnection("Connection String...")) { conn.Open(); // 设置超时 var c = new MySqlCommand("set ...

    datax数据从hive导入mysql数据缺失解决

    Hive 通常用于存储海量数据并进行批处理分析,而 MySQL 则用于存储结构化数据并提供快速查询服务。为了实现两者之间的数据交换,DataX 作为一种开源的数据同步工具被广泛应用。 #### 问题描述 在使用 DataX 将数据...

    基于MySQL 5的SCADA海量数据的存储方法研究.pdf

    《基于MySQL 5的SCADA海量数据存储方法研究》 在电力系统保护与控制领域,SCADA(Supervisory Control And Data Acquisition)系统扮演着至关重要的角色。这类系统需要处理大量来自变电站监控保护设备的实时数据,...

Global site tag (gtag.js) - Google Analytics