MySQL

  • 批量杀死MySQL连接

    ·

    如果你也觉得使用mk-kill比较麻烦的话,那就可以使用下面这个简单而暴力的办法:

    mysqladmin -uroot -p processlist|awk -F “|” ‘{print $2}’|xargs -n 1 mysqladmin -uroot -p kill

    (注:上面的语句不用换行)

    上面的命令会杀死当前全部的MySQL连接,毫不留情。朋友,慎用之。

    如果上面这个命令太暴力,下面这个稍微温柔一点,可以帮你杀死指定用户正在运行的连接

    mysqladmin -uroot -p processlist|awk -F “|” ‘{if($3 == “wordpress”)print $2}’|xargs -n 1 mysqladmin -uroot -p kill

    (上面的命令,可以杀死当前用户wordpress正在运行的连接)

    参考:kill MySQL Connection

  • Flashcace安装 How-to

    ·

    Flashcache的安装在其READMEREADME-CentOS5.4已经有一个很详细的说明了,但是实际操作并不是很顺利,而且有些同事表示在编译过程中仍遇到了一些问题,这里详细的记录一下自己的编译、安装过程。

    1. 环境说明

    使用的是RHEL5.4的系统:

    $cat /etc/issue
    Red Hat Enterprise Linux Server release 5.4 (Tikanga)
    $uname -a
    Linux myhost 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

    (more…)

  • MySQL: Too many connections

    ·

    $mysql -uroot
    ERROR 1040 (00000): Too many connections

    上面的错误,估计很多人都遇到过,Aurimas Mikalauskas在MySQL Performance Blog已经提到了一个解决办法(生产环境慎用之):

    $gdb -p $(cat data/mysql_sandbox5087.pid) \
    -ex “set max_connections=5000” -batch

    上面提到的只是一个救火的办法,MySQL提供了另一个办法,可以一定程度上避免上述问题。

    MySQL提供了参数max_connections控制最大连接数,这包括所有用户的连接数。MySQL还提供了另一个参数max_user_connections,用来控制某个用户的最大连接数。例如,将该参数设置为50,那么对于任何一个用户(包括super权限的用户),最多只能创建50个连接。 (more…)

  • Flachcache初探

    ·

    Flashcache是Facebook技术团队的又一力作,最初是为加速MySQL设计的。Flashcache是在Linux层面的,所以任何受磁盘IO困绕的软件或应用都可以方便的使用之。

    1. Why Flashcache

    随着时间的流逝,网站上的数据一直在不停的积累。如果你经营的只是一个博客的话,这不会是问题,因为10G的空间,大概就够你写一辈子了(如果放在硬盘上,其实一辈子很短)。如果你恰巧在一个快速增长的公司,数据会越来越多,从MB,到GB,再到TB。

    如果将这些数据全部放在大容量的SATA、SAS盘上时,会发现性能(响应时间)不够;如果全放在SSD上时,又会发现成本很高。即使公司能够大气到都放到SSD上,你会发现1TB的数据里面可能只有200G是经常被访问的,300G可能偶尔被访问到,最后剩下的500G可能已经成为历史数据了,几乎不被访问到,如果全部都放在SSD上有略有浪费。于是就有了Flashcache

    Flashcache一个非常不错的软件(准确的说是一个Linux的模块),可以动态加载。Flashcache通过在文件系统(VFS)和设备驱动之间新增了一次缓存层,来实现对热门的缓存。Flashcache是另一种缓存,一般用SSD作为介质的缓存(一般的缓存用的是内存),通过将传统硬盘上的热门数据缓存到SSD上,然后利用SSD优秀的读性能,来加速系统。这个方法较之内存缓存,没有内存快,但是空间可以比内存大很多。

    本文是一个关于Flashcache的初步介绍。 (more…)

  • 这是在2010年,第一次淘宝数据库技术沙龙上的一次分享,包含了淘宝在MySQL技术上的探索:

    • 如何批量化管理
    • 如何监控
    • 如何测试
    • 如何保持生产环境稳定性等
    managemysqlwithopensource-100620074016-phpapp01

    下载链接:Manage MySQL with Open Source

  • MySQL/InnoDB和Group Commit(1)

    ·

    估计相关的东西一篇文章是讲不清楚的。

    这个问题由来已久,Kristian Nielsen连续写了四篇文章《Fixing MySQL group commit》(part 1 | part 2 | part 3 | part 4 )深入细致的分析了“故事”的前因后果。本文完全没有任何新意,仅做一个小的总结。这里会先介绍一下什么是“Group Commit”,MySQL/InnoDB里面的Group Commit为什么引起如此大的关注,现在是怎么解决问题的。 (more…)