Openfire服务器MySQL优化:

[root@iZ28g4ctd7tZ ~]# mysql -u root -p XXXXX

mysql> show processlist;

+----------+-----------------+---------------------+-------+---------+-------+-----------------------------+------------------+

| Id       | User            | Host                | db    | Command | Time  | State                       | Info             |

+----------+-----------------+---------------------+-------+---------+-------+-----------------------------+------------------+

|        1 | event_scheduler | localhost           | NULL  | Daemon  | 51497 | Waiting for next activation | NULL             |

| 16069885 | xx_xxx_user     | 10.164.13.209:48184 | XXXXX | Sleep   |     0 |                             | NULL             |

| 16069886 | xx_xxx_user     | 10.164.13.209:48185 | XXXXX | Sleep   |     0 |                             | NULL             |

| 16069887 | xx_xxx_user     | 10.164.13.209:48186 | XXXXX | Sleep   |     0 |                             | NULL             |

| 16069888 | xx_xxx_user     | 10.164.13.209:48187 | XXXXX | Sleep   |     0 |                             | NULL             |

| 16069889 | xx_xxx_user     | 10.164.13.209:48188 | XXXXX | Sleep   |     0 |                             | NULL             |

......

| 16071110 | xx_xxx_user     | 10.164.13.209:48520 | XXXXX | Sleep   |     3 |                             | NULL             |

| 16358232 | root            | localhost           | XXXXX | Query   |     0 | NULL                        | show processlist |

+----------+-----------------+---------------------+-------+---------+-------+-----------------------------+------------------+

118 rows in set (0.00 sec)

mysql> show variables like '%timeout';

+----------------------------+----------+

| Variable_name              | Value    |

+----------------------------+----------+

| connect_timeout            | 10       |

| delayed_insert_timeout     | 300      |

| innodb_lock_wait_timeout   | 50       |

| innodb_rollback_on_timeout | OFF      |

| interactive_timeout        | 100      |

| lock_wait_timeout          | 31536000 |

| net_read_timeout           | 30       |

| net_write_timeout          | 60       |

| slave_net_timeout          | 3600     |

| wait_timeout               | 100      |

+----------------------------+----------+

10 rows in set (0.00 sec)

mysql> show global variables like '%timeout';

+----------------------------+----------+

| Variable_name              | Value    |

+----------------------------+----------+

| connect_timeout            | 10       |

| delayed_insert_timeout     | 300      |

| innodb_lock_wait_timeout   | 50       |

| innodb_rollback_on_timeout | OFF      |

| interactive_timeout        | 100      |

| lock_wait_timeout          | 31536000 |

| net_read_timeout           | 30       |

| net_write_timeout          | 60       |

| slave_net_timeout          | 3600     |

| wait_timeout               | 100      |

+----------------------------+----------+

10 rows in set (0.00 sec)

mysql> set global interactive_timeout=100;

mysql> set global wait_timeout=100;

如果修改interactive_timeout的话wait_timeout也会跟着变,而只修改wait_timeout是不生效的。

[root@iZ28g4ctd7tZ ~]# vim /etc/my.cnf

[client]

port            = 3306

socket          = /data/mysql/mysql.sock

[mysqld_safe]

socket          = /data/mysql/mysql.sock

nice            = 0

[mysqld]

#datadir=/data/mysql/data/mysql

socket=/data/mysql/mysql.sock

user=mysql

# Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0

# 默认端口

port            = 3306

datadir         = /data/mysql/data/mysql

tmpdir          = /tmp

lc-messages-dir = /usr/share/mysql

# 避免MySQL的外部锁定,减少出错几率增强稳定性

skip-external-locking

# 设置mysql服务器的字符集

character-set-server = utf8

# 默认存储引擎

default-storage-engine = INNODB

# Instead of skip-networking the default is now to listen only on

# localhost which is more compatible and is not less secure.

# bind-address            = 0.0.0.0

skip-name-resolve

# UDF自定义函数若有用到需要打开。后续memcached会用到UDF

log_bin_trust_function_creators = 1

# 用到了事件,应该打开

event_scheduler = 1

# Error log - should be very few entries.

# log_error = /data/mysql/log/error.log

key_buffer              = 16M

# MYISAM存储引擎的索引缓冲区的大小

key_buffer_size = 16M

# 联合查询操作所能使用的缓冲区大小

join_buffer_size = 4M

# 用来控制其通信缓冲区的最大长度

max_allowed_packet      = 16M

# 指定MySQL允许的最大连接进程数。如果经常出现Too Many Connections的错误提 示,则需要增大该参数值。默认值是151,这里设为500。根据实际情况再行调整

max_connections = 500

# 最大连接错误数

max_connect_errors = 10000

# 缓存可重用的线程数

table_open_cache = 4096

# 查询排序时所能使用的缓冲区大小

sort_buffer_size = 4M

# 每个进行一个顺序扫描的线程为其扫描的每张表分配这个大小的一个缓冲区,若做很多顺序扫描,增加该值。

read_buffer_size = 4M

# 随机读缓存区,mysql排序查询时,先扫描该缓冲避免磁盘搜索

read_rnd_buffer_size = 8M

# 开启查询缓存

query_cache_type = 1

# 指定MySQL查询缓冲区的大小

query_cache_size = 256M

# 单个查询能用缓冲区大小

query_cache_limit = 2M

# 指定分配缓冲区空间的最小单位,缺省为4K

query_cache_min_res_unit = 4K

# 内存表大小,该值用来计算内存表的最大行数

max_heap_table_size = 32M

# 指定mysql缓存的内存大小,默认16M

tmp_table_size = 32M

# 临时停止响应新请求前在短时间内可以堆起多少请求,也就是说,如果MySql的连接数据达到max_connections时,新来的请求将会被存在堆栈中,以等待某一连接释放资源,

# 该堆栈的数量即back_log,如果等待连接的数量超过back_log,将不被授予连接资源。back_log值不能超过TCP/IP连接的侦听队列的大小。若超过则无效,

# 查看当前系统的TCP/IP连接的侦听队列的大小命令:cat /proc/sys/net/ipv4/tcp_max_syn_backlog目前系统为1024。对于Linux系统推荐设置为小于512的整数。

# 每个连接256kb,占用:125M

back_log = 500

# 指定一个请求的最大连接时间,超时时间,可以避免攻击。对于4GB左右内存的服务器可以设置为5-10

wait_timeout = 604800

# 服务器在关闭它前在一个交互连接上等待行动的秒数

interactive_timeout = 604800

# 该参数取值为服务器逻辑CPU数量×2,默认8

# 该参数在5.6.1版本后被放弃了

thread_concurrency = 16

thread_stack            = 512K

thread_cache_size       = 64

myisam-recover         = BACKUP

# 记录慢查询语句,路径根据实际

log_slow_queries        = /data/mysql/log/mysql-slow.log

# 设定慢查询的时间

long_query_time = 2

# 记录未用索引的慢查询

log-queries-not-using-indexes

# 开启二进制日志earcs-bin为日志文件前缀 basename

log_bin                 = /data/mysql/log/earcs-bin.log

# 设置日志的有效期为10天.

expire_logs_days        = 2

max_binlog_size         = 100M

# 打开文件数

open_files_limit = 10240

# 控制日志刷新到硬盘的时机

innodb_flush_log_at_trx_commit = 0

# on表示启用单表空间,减少共享表空间维护成本,减少空闲磁盘空间释放的压力

innodb_file_per_table = 1

# 设置事务隔离级别

transaction-isolation = READ-COMMITTED

# 二进制日志格式

binlog-format = MIXED

# 官方建议在一个32位的系统中,要设置小于2G。

innodb_buffer_pool_size = 10G

# 控制日志刷新到硬盘的时机

innodb_flush_log_at_trx_commit = 0

# 需要根据写负载的频度以及大事务的多少,动态调整。

innodb_log_buffer_size = 8M

# 在日志组中每个日志文件的大小

innodb_log_file_size = 512M

# 这个参数在5.6.3版本以后会被弃用。

innodb_additional_mem_pool_size = 100M

# 提高mysql速度的,禁止DNS缓存

skip-host-cache

[mysqld_safe]

log-error=/data/mysql/log/mysqld.log

pid-file=/data/mysqld/mysqld.pid

Openfire服务器MySQL优化的更多相关文章

  1. MySQL优化聊两句

    原文地址:http://www.cnblogs.com/verrion/p/mysql_optimised.html MySQL优化聊两句 MySQL不多介绍,今天聊两句该如何优化以及从哪些方面入手, ...

  2. MySQL优化概述

    一. MySQL优化要点 MySQL优化是一门复杂的综合性技术,主要包括: 1 表的设计合理化(符合 3NF,必要时允许数据冗余) 2.1 SQL语句优化(以查询为主) 2.2 适当添加索引(主键索引 ...

  3. Mysql优化系列(2)--通用化操作梳理

    前面有两篇文章详细介绍了mysql优化举措:Mysql优化系列(0)--总结性梳理Mysql优化系列(1)--Innodb引擎下mysql自身配置优化 下面分类罗列下Mysql性能优化的一些技巧,熟练 ...

  4. [转] MySql 优化 大数据优化

    一.我们可以且应该优化什么? 硬件 操作系统/软件库 SQL服务器(设置和查询) 应用编程接口(API) 应用程序 ------------------------------------------ ...

  5. 单表60亿记录等大数据场景的MySQL优化和运维之道

    此文是根据杨尚刚在[QCON高可用架构群]中,针对MySQL在单表海量记录等场景下,业界广泛关注的MySQL问题的经验分享整理而成,转发请注明出处. 杨尚刚,美图公司数据库高级DBA,负责美图后端数据 ...

  6. 【转】单表60亿记录等大数据场景的MySQL优化和运维之道 | 高可用架构

    此文是根据杨尚刚在[QCON高可用架构群]中,针对MySQL在单表海量记录等场景下,业界广泛关注的MySQL问题的经验分享整理而成,转发请注明出处. 杨尚刚,美图公司数据库高级DBA,负责美图后端数据 ...

  7. (转)MySQL优化实例

    在Apache, PHP,MySQL的体系架构中,MySQL对于性能的影响最大,也是关键的核心部分.对于Discuz!论坛程序也是如此,MySQL的设置是否合理优化,直接影响到论坛的速度和承载量!同时 ...

  8. 微博MySQL优化之路--dockone微信群分享

    微博MySQL优化之路 数据库是所有架构中不可缺少的一环,一旦数据库出现性能问题,那对整个系统都回来带灾难性的后果.并且数据库一旦出现问题,由于数据库天生有状态(分主从)带数据(一般还不小),所以出问 ...

  9. mysql优化连接数防止访问量过高的方法

    这篇文章主要介绍了mysql优化连接数防止访问量过高的方法,需要的朋友可以参考下 很多开发人员都会遇见”MySQL: ERROR 1040: Too many connections”的异常情况,造成 ...

随机推荐

  1. 转载:浅析Java中的final关键字

    谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字.另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关键字的用法.下 ...

  2. 【转】linux下a.out >outfile 2>&1重定向问题

    原文网址:http://blog.chinaunix.net/uid-25909722-id-2912890.html 转自:http://blog.chinaunix.net/space.php?u ...

  3. C#中常见的winform控件命名规范

    我们知道Button 常常简称为btn,那么Winform中的其它控件呢,这篇文章在C#的winform控件命名规范 的基础上对一些控件的名称的简称进行了整理. 1. 标准控件 NO. 控件类型简写 ...

  4. 转载:fstream和ifstream详细用法

    文件 I/O 在C++中比烤蛋糕简单多了.在这篇文章里,我会详细解释ASCII和二进制文件的输入输出的每个细节,值得注意的是,所有这些都是用C++完成的. 一.ASCII 输出 为了使用下面的方法, ...

  5. strcpy函数和strncpy函数的区别

    strcpy函数和strncpy函数的原型介绍在我的另一篇文章中介绍了,见strcpy,strncpy,strlen等函数原型 strcpy:字串复制 原型:char *strcpy(char *de ...

  6. Cocos2d-x使用iOS游戏内付费IAP(C++篇)

    本文章转载 http://www.ityran.com/archives/5515.非本人原创! 前期准备 设备与账号 在开始编码之前我们需要准备测试环境. IAP只能真机测试,准备一台iOS设备是必 ...

  7. BufferedReader和BufferedWriter读写文件(转载)

    http://375940084.blog.51cto.com/2581965/751040 1.创建Student类存储每个学生信息,属性(学号,姓名,出生日期,得分)2.从c:/test/stud ...

  8. KMP(字符串匹配)

    1.KMP是一种用来进行字符串匹配的算法,首先我们来看一下普通的匹配算法: 现在我们要在字符串ababcabcacbab中找abcac是不是存在,那么传统的查找方法就是一个个的匹配了,如图: 经过六趟 ...

  9. 内核源码分析之linux内核栈(基于3.16-rc4)

    在3.16-rc4内核源码中,内核给每个进程分配的内核栈大小为8KB.这个内核栈被称为异常栈,在进程的内核空间运行时或者执行异常处理程序时,使用的都是异常栈,看下异常栈的代码(include/linu ...

  10. vbox磁盘空间扩容

    前提:将虚拟机真正关机,不能在仅状态保存的场合做磁盘扩容. 步骤1.获取需要增加容量的映像的uuid 在vbox的安装目录下使用命令行:VBoxManage list hdds 得到结果如下: UUI ...