【问题标题】:Mysql config optimizing - slow IO response time for 12GB RAM 2 x 2.4GHz ServerMysql 配置优化 - 12GB RAM 2 x 2.4GHz 服务器的缓慢 IO 响应时间
【发布时间】:2012-02-07 20:19:39
【问题描述】:

即使安装了 memcached 和 APC,服务器也需要 20 多秒(等待时间/缓慢的 IO 响应时间)来响应 HTTP 请求。我相信这与 MYSQL 有关,因为该站点有很多 INSERT 查询。

任何帮助将不胜感激。提前致谢。

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               6.38    0.03    1.05    0.40    0.00   92.14
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          10.37    0.00    1.61    3.14    0.00   84.87
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           9.40    0.00    1.41    1.53    0.00   87.67
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          10.02    0.00    1.42    1.09    0.00   87.46
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           9.32    0.00    1.31    0.78    0.00   88.59
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          10.62    0.00    1.57    2.37    0.00   85.44

专用服务器规格:

2 x Intel Xeon-Westmere 5620-Quadcore [2.4GHz] processors
6 x Hynix DDR3 2GB DDR3 x8 [2GB] (total of 12GB)
2 x Western Digital WD Caviar RE4 WD5003ABYX [500GB]
MySQL version: 5.1.56-log MySQL Community Server (GPL)
Current database size: 4.2 GiB ~25,350,659rows

这是当前的 my.cnf 配置:

[mysqld]
set-variable = max_connections=1024
log-slow-queries
safe-show-database

back_log                        = 80
max_connect_errors              = 9999999
table_cache                     = 5000
binlog_cache_size               = 1M
max_heap_table_size             = 128M
sort_buffer_size                = 500K
join_buffer_size                = 500K
thread_cache_size               = 100
#thread_concurrency              = 16
query_cache_size                = 512M
query_cache_limit               = 8M
query_cache_min_res_unit        = 2K
thread_stack                    = 192K
tmp_table_size                  = 384M
default_table_type              = INNODB


long_query_time                 = 2
log-slow-queries=/var/log/mysql.slow.queries.log

innodb_additional_mem_pool_size = 80M
innodb_buffer_pool_size         = 9G
innodb_file_io_threads          = 4
innodb_thread_concurrency       = 33
innodb_log_buffer_size          = 20M
innodb_log_file_size            = 800M
innodb_log_files_in_group       = 3
innodb_max_dirty_pages_pct      = 90
innodb_lock_wait_timeout        = 120
innodb_file_per_table           = 1


read_rnd_buffer_size=2M

thread_concurrency=33

【问题讨论】:

  • 应该在ServerFault上
  • 使用什么存储引擎、数据库大小、表中的键?如果插入速度很慢,很可能是您执行了太多随机写入

标签: php mysql optimization innodb my.cnf


【解决方案1】:

您可能会从这个问题中找到有用的answers。为了提高 mysql 性能,它对我的​​生产应用程序帮助很大。试试这个。

【讨论】:

    【解决方案2】:

    您可以在您的机器上安装 mytop,以便在调整性能的同时跟踪正在运行的查询。您的问题可能不是由于您的 mysql 服务器造成的...

    【讨论】:

      【解决方案3】:

      使用mtime(true) 检查您的 PHP 脚本运行了多长时间。如果它们运行缓慢,请在您的脚本中设置“检查点”以确定脚本的哪一部分会降低响应速度。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-04-09
        • 2023-03-19
        • 1970-01-01
        • 2017-01-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多