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

大访问量网站的mysql参数如何设置

阅读更多
网站访问量越来越大,MySQL自然成为瓶颈。
因此MySQL 的优化成为我们需要考虑的问题,第一步自然想到的是 MySQL 系统参数的优化,作为一个访问量很大的网站(日20万人次以上)的数据库系统,不可能指望 MySQL 默认的系统参数能够让 MySQL运行得非常顺畅。        

(1)、back_log:        

要求 MySQL 能有的连接数量。当主要 MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用,然后主线程花些时间(尽管很短)检查连接并且启动一个新线程。        

back_log 值指出在MySQL暂时停止回答新请求之前的短时间内多少个请求可以被存在堆栈中。只有如果期望在一个短时间内有很多连接,你需要增加它,换句话说,这值对到来的TCP/IP连接的侦听队列的大小。你的操作系统在这个队列大小上有它自己的限制。 试图设定back_log高于你的操作系统的限制将是无效。        

当你观察你的主机进程列表,发现大量 264084 | unauthenticated user | xxx.xxx.xxx.xxx | NULL | Connect | NULL | login | NULL 的待连接进程时,就要加大 back_log的值了。默认数值是50,我把它改为500。

(2)、 interactive_timeout:        

服务器在关闭它前在一个交互连接上等待行动的秒数。一个交互的客户被定义为对mysql_real_connect()使用 CLIENT_INTERACTIVE 选项的客户。 默认数值是28800,我把它改为 7200。

(3)、key_buffer_size:        

索引块是缓冲的并且被所有的线程共享。 key_buffer_size是用于索引块的缓冲区大小,增加它可得到更好处理的索引(对所有读和多重写),到你能负担得起那样多。如果你使它太大,系统将开始换页并且真的变慢了。默认数值是8388600(8M),我的MySQL主机有2GB内存,所以我把它改为402649088(400MB)。

(4)、max_connections:        

允许的同时客户的数量。增加该值增加mysqld 要求的文件描述符的数量。这个数字应该增加,否则,你将经常看到 Too many connections 错误。 默认数值是100,我把它改为 1024 。

(5)、record_buffer:    

每个进行一个顺序扫描的线程为其扫描的每张表分配这个大小的一个缓冲区。如果你做很多顺序扫描,你可能想要增加该值。默认数值是131072(128K),我把它改为16773120 (16M)

(6)、 sort_buffer:        

每个需要进行排序的线程分配该大小的一个缓冲区。增加这值加速ORDER BY或 GROUP BY操作。默认数值是2097144(2M),我把它改为16777208 (16M)。

(7)、 table_cache:        

为所有线程打开表的数量。增加该值能增加mysqld要求的文件描述符的数量。MySQL 对每个唯一打开的表需要2个文件描述符。默认数值是64,我把它改为512。

(8)、 thread_cache_size:        

可以复用的保存在中的线程的数量。如果有,新的线程从缓存中取得,当断开连接的时候如果有空间,客户的线置在缓存中。如果有很多新的线程,为了提高性能可以这个变量值。通过比较 Connections 和 Threads_created 状态的变量,可以看到这个变量的作用。我把它设置为 80。

(10)、 wait_timeout:        

服务器在关闭它之前在一个连接上等待行动的秒数。 默认数值是28800,我把它改为 7200。   注:参数的调整可以通过修改/etc/my.cnf 文件并重启 MySQL 实现。这是一个比较谨慎的工作,上面的结果也仅仅是我的一些看法,你可以根据你自己主机的硬件情况(特别是内存大小)进一步修改。
分享到:
评论

相关推荐

    loadrunner参数化连接mysql

    本文将详细讲解如何使用LoadRunner进行参数化连接MySQL数据库,以及如何在LoadRunner脚本中进行参数化操作。 首先,为了使LoadRunner能够与MySQL数据库交互,我们需要配置ODBC数据源。这涉及以下步骤: 1. **安装...

    JAVA 统计网站的访问量PV,UV

    在IT行业中,统计网站的访问量是...总之,通过Java、Spring和MySQL的结合,我们可以构建一个有效的访问量统计系统,为网站运营提供关键的数据支持。同时,还需要注意隐私保护和数据安全,遵守相关的法规和最佳实践。

    mysql5.7 修改max_allowed_packet方法

    1. **打开MySQL图形化管理工具**:首先启动MySQL的图形化管理工具,这通常是一个独立的应用程序或通过Web界面访问。 2. **选择Options File**:在工具中找到并选择“Options File”选项,这个选项允许用户编辑数据库...

    MySQL构架设计与容量规划_findf2t_MYSQL_

    7. **扩展性设计**:随着业务增长,可能需要水平或垂直扩展MySQL集群,如通过分片技术处理大数据量,或者升级硬件提升单节点性能。 了解这些知识点后,你可以根据具体业务需求,设计出适合的MySQL架构并进行有效的...

    2G内存的MYSQL数据库服务器优化

    1. **my.ini文件**:MySQL的主要配置文件,用于设置MySQL的各种运行时参数。 2. **table_cache=2048**:定义了可以打开的最大表数,默认值通常较小。在高并发环境中,增加此值有助于减少因表锁定而导致的等待时间。...

    彻底解决C# asp.net连接MySQL乱码问题

    请注意,这个设置必须与 MySQL 服务器以及应用程序中的其他设置保持一致。 #### 五、应用程序代码优化 1. **连接建立**: ```csharp MySqlConnection conn = new MySqlConnection(connectionString); conn.Open...

    MySQL 5.1中文手冊

    3.6.8. 根据天计算访问量 3.6.9. 使用AUTO_INCREMENT 3.7. 孪生项目的查询 3.7.1. 查找所有未分发的孪生项 3.7.2. 显示孪生对状态的表 3.8. 与Apache一起使用MySQL 4. MySQL程序概述 4.1. MySQL程序概述 4.2. 调用...

    mysql服务性能优化my_cnf配置说明详解16G内存[参考].pdf

    Max Allowed Packet 是 MySQL 服务器的一个参数,它指定了在网络传输中一次消息传输量的最大值。默认情况下,Max Allowed Packet 是 1MB,最大值是 1GB,必须设置 1024 的倍数。 通过合理地配置这些参数,可以提高 ...

    MySQL驱动 mysql-connector-net-6.4.4

    MySQL驱动mysql-connector-net-6.4.4是MySQL数据库与.NET应用程序之间的桥梁,它允许开发者在C#、VB.NET或其他.NET支持的语言中轻松地访问和操作MySQL数据库。这款驱动程序是Oracle公司提供的官方.NET Framework组件...

    在Android上安装mysql; 从android中访问mysql

    在Android平台上安装MySQL并从Android应用访问MySQL数据库是一项复杂但重要的任务,这使得移动应用能够存储和处理大量的数据。以下是对这个主题的详细说明: **一、安装MySQL服务器** 1. **选择合适的MySQL版本**:...

    Mysql参数优化

    - 对于表的数据量较大时,可以考虑设置`MAX_ROWS`和`AVG_ROW_LENGTH`参数来优化存储空间的使用。 3. **错误处理**: - 遇到如ORA-09817等错误时,应首先检查系统日志以定位问题原因。例如,在磁盘空间不足的情况...

    mysql数据源设置

    本篇文章将深入探讨MySQL数据源的设置及其相关知识点。 首先,我们需要理解数据源的概念。在Java中,数据源是一个接口或类,它封装了数据库连接的创建、管理和关闭等操作,为应用程序提供了一种更高效、更安全的...

    mysql-5.5.27-win64安装包

    5. **安全设置**:安装后的首次启动,MySQL会运行一个叫做“mysql_secure_installation”的脚本,用于增强新安装的安全性,比如删除匿名用户、禁用远程root登录、删除测试数据库等。 6. **客户端工具**:MySQL ...

    MySQL C API mysql c api访问数据库实例

    总结来说,这个“MySQL C API 访问数据库实例”是一个很好的学习资源,涵盖了数据库连接、查询、事务处理等核心功能,对于理解和掌握 MySQL C API 有极大的帮助。如果你有兴趣进一步提升题库系统的功能,可以尝试...

    MySql 5.1 参考手册.chm

    3.6.8. 根据天计算访问量 3.6.9. 使用AUTO_INCREMENT 3.7. 孪生项目的查询 3.7.1. 查找所有未分发的孪生项 3.7.2. 显示孪生对状态的表 3.8. 与Apache一起使用MySQL 4. MySQL程序概述 4.1. MySQL程序概述 4.2. 调用...

    MySQL配置文件解析

    MySQL配置文件解析主要涉及到MySQL服务器的参数调整,...这些参数的优化需根据实际应用环境进行调整,包括网站的访问量、在线用户数、数据量、硬件资源等。优化是一个持续的过程,需要不断监控和测试以找到最佳配置。

    Linux应用集成MySQL数据库访问技巧

    此外,还可以通过设置SQL语句的参数化查询,提升安全性,防止SQL注入攻击。 5. **关闭连接**:完成数据操作后,记得关闭与MySQL服务器的连接,释放资源。 #### 实战案例分析 为了更直观地理解MySQL在Linux应用中...

    mysql核心参数

    ### MySQL核心参数详解 #### 一、引言 在日常的MySQL运维工作中,经常会遇到一些让人头疼的问题,比如响应时间突然变长、数据库性能下降、CPU利用率飙升等现象。这些问题往往与MySQL的核心参数配置有着密切的关系...

    MySQL参数及启动选项详解.pdf

    MySQL是世界上最受欢迎的关系型数据库管理系统之一,其配置和启动参数对于优化数据库性能和管理至关重要。在MySQLD Ver 5.1.26-rc-log版本中,存在多种启动选项,这些选项可以影响到数据库的运行方式、安全性以及...

Global site tag (gtag.js) - Google Analytics