orczhou

  • 家里

    ·

    2

    家里有书房,一直都有。书房在房子背后,面朝一片菜地,这个季节种的是棉花。菜地东侧是水塘,水塘旁边是我的中学。一起风,先听到棉花叶飒飒的的声音,然后才吹到房间。

    家里没有Dota,没有宽阔的马路,没有匆忙的汽车,没有焦急的路人。

    家里有旧旧的门,有不断“唧唧”的虫鸣,有不再唠叨的爸妈,有轰鸣而过但重来不停的火车,有说我或胖或瘦的邻居,有偶尔开过的汽车掀起尘土,有整天打牌的小青年。

    家里没有水果超市,但是有更好吃的水果。

  • 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…)

  • PHP连接Oracle数据库

    ·

    一般大家不这么做。

    不难,和连接MySQL差不多。php需要使用OCI8扩展来连接Oracle,可以使用phpinfo来查看你是否已经安装了该扩展。关于OCI8的详细使用可以直接参考php的Manual OCI8,本文仅做一个入门介绍。

    1. 使用什么帐号连接
    $ora_host = "172.19.*.259"; $ora_port="1521"; $ora_sid = "orasid"; $ora_username = "orauser"; $ora_password = "orapwd"; $charset = "UTF8"; ### zhs16gbk ###

    (more…)

  • Linux下使用od查看文件

    ·

            "不积跬步,无以至千里"
                                     《劝学》
    

    查看文本文件使用vim/less就足够了,但如果想要查看一些其他二进制文件(例如DB的数据文件、程序的二进制代码)则借助于od/hexdump这些工具会很方便,这里会通过一些实例来详细介绍od命令的相关参数。

    1. od参数详解
    $od -j 49152 -N 38 -w4 -A d -t x1 -v tmp_test.ibd 0049152 fd 6f fb 70 0049156 00 00 00 03 0049160 ff ff ff ff 0049164 ff ff ff ff 0049168 00 00 00 03 0049172 ba 92 ac 0c 0049176 45 bf 00 00 0049180 00 00 00 00 0049184 00 00 00 00

    (more…)

  • 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…)