MySQL数据库优化经验详谈(2)

来源:asp之家 时间:2009-12-15 10:34:00 


如果你不需要记录2进制log 就把这个功能关掉,注意关掉以后就不能恢复出问题前的数据了,需要您手动备份,二进制日志包含所有更新数据的语句,其目的是在恢复数据库时用它来把数据尽可能恢复到最后的状态。另外,如果做同步复制( Replication )的话,也需要使用二进制日志传送修改情况。

log_bin指定日志文件,如果不提供文件名,MySQL将自己产生缺省文件名。MySQL会在文件名后面自动添加数字引,每次启动服务时,都会重新生成一个新的二进制文件。

此外,使用log-bin-index可以指定索引文件;使用binlog-do-db可以指定记录的数据库;使用binlog-ignore-db可以指定不记录的数据库。注意的是:binlog-do-db和binlog-ignore-db一次只指定一个数据库,指定多个数据库需要多个语句。而且,MySQL会将所有的数据库名称改成小写,在指定数据库时必须全部使用小写名字,否则不会起作用。

关掉这个功能只需要在他前面加上#号

#log-bin

开启慢查询日志( slow query log ) 慢查询日志对于跟踪有问题的查询非常有用。它记录所有查过long_query_time的查询,如果需要,还可以记录不使用索引的记录。下面是一个慢查询日志的例子:

开启慢查询日志,需要设置参数log_slow_queries、long_query_times、log-queries-not-using-indexes。

log_slow_queries指定日志文件,如果不提供文件名,MySQL将自己产生缺省文件名。

long_query_times指定慢查询的阈值,缺省是10秒。

log-queries-not-using-indexes是4.1.0以后引入的参数,它指示记录不使用索引的查询。笔者设置long_query_time=10

笔者设置:


sort_buffer_size = 1M
max_connections=120
wait_timeout =120
back_log=100
read_buffer_size = 1M
thread_cache=32
interactive_timeout=120
thread_concurrency = 4

参数说明:

back_log

要求MySQL能有的连接数量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用,然后主线程花些时间(尽管很短) 检查连接并且启动一个新线程。back_log值指出在MySQL暂时停止回答新请求之前的短时间内多少个请求可以被存在堆栈中。只有如果期望在一个短时间内有很多连接,你需要增加它,换句话说,这值对到来的TCP/IP连接的侦听队列的大小。你的操作系统在这个队列大小上有它自己的限制。 Unix listen(2)系统调用的手册页应该有更多的细节。检查你的OS文档找出这个变量的最大值。试图设定back_log高于你的操作系统的限制将是无效的。

max_connections

并发连接数目最大,120 超过这个值就会自动恢复,出了问题能自动解决

thread_cache

没找到具体说明,不过设置为32后 20天才创建了400多个线程 而以前一天就创建了上千个线程 所以还是有用的

thread_concurrency

#设置为你的cpu数目x2,例如,只有一个cpu,那么thread_concurrency=2

#有2个cpu,那么thread_concurrency=4

skip-innodb

#去掉innodb支持



标签:MySQL优化,MySQL技巧
0
投稿

猜你喜欢

  • ASP生成柱型体,折线图,饼图源代码

    2007-09-20 12:56:00
  • 如何获得刚插入数据库的记录的ID号?

    2009-09-10 11:33:00
  • javascript面向对象技术基础(三)

    2010-02-07 13:11:00
  • 分享整理的12条sql语句连同数据

    2012-07-11 16:14:59
  • 如何列举Error的所有对象?

    2010-01-12 20:01:00
  • asp下以Json获取中国天气网天气的代码

    2011-03-06 11:01:00
  • Javascript 利用 DOM 特性的两个小技巧

    2009-02-28 14:07:00
  • CSS清除浮动常用方法小结

    2009-07-07 11:59:00
  • Oracle数据库索引的维护

    2010-07-26 13:29:00
  • Mootools 1.2教程(14)——定时器和哈希简介

    2008-12-08 12:50:00
  • Flash如何连接Mysql

    2010-11-11 11:57:00
  • DNS优化的原理和方法

    2012-04-26 16:43:56
  • 寻找Dreamweaver鲜为人知的小秘诀

    2008-04-28 12:10:00
  • SQL Server数据库简体繁体数据混用的问题

    2008-12-05 16:07:00
  • JScript下Array对象的性能问题

    2009-02-15 12:28:00
  • MySQL出现1067错误如何解决?

    2008-09-03 12:25:00
  • CSS的未来:一些试验性CSS属性

    2011-06-10 13:20:00
  • Linux上MySql远程备份方案

    2010-11-25 17:23:00
  • 数据分页显示按钮,自动获取url链接

    2009-06-22 12:59:00
  • 数据库中identity字段不必是系统产生的唯一值 性能优化方法(新招)

    2011-09-30 11:26:06
  • asp之家 网络编程 m.aspxhome.com