七 18 DROP TABLE AND LOCK_OPEN MUTEX 发布时间:2011 年 7 月 18 日 发布者: OurMySQL 在Oracle中直接删除一张大表,会导致free extent 的enqueue,会导致buffer cache 的object purge,所以我们要有很多步骤,让删表变得不影响性能。这方面MySQL目前没有好的方法。MySQL中在对表进行drop table 命令,实际上调度的是mysql_rm_table_part2(sql/sql_table.cc)函数。 继续阅读全文 →
二 24 PHP查询MySQL大量数据的内存占用分析 发布时间:2011 年 2 月 24 日 发布者: OurMySQL 这篇文章主要是从原理, 手册和源码分析在PHP中查询MySQL返回大量结果时, 内存占用的问题, 同时对使用MySQL C API也有涉及. 继续阅读全文 →
一 28 处理Mysql的MySql-bin.0000X日志文件 发布时间:2011 年 1 月 28 日 发布者: OurMySQL mysql运行一段时间后,在mysql目录下出现一堆类似 mysql-bin.000***,从mysql-bin.000001开始一直排列下来,而且占用了大量硬盘空间,高达几十个G. 对于这些超大空间 占用量的文件我们应该怎么办呢? 继续阅读全文 →
一 24 mysql unknown command ‘\”‘问题解决办法 发布时间:2011 年 1 月 24 日 发布者: OurMySQL 经过多是导出导入发现,原来默认安装的mysql使用的是utf8编码,而我本机安装的是mysql gbk数据库。这样一来,备份文件恢复的时候可能就出现了格式错误。 继续阅读全文 →
一 10 MySQL多个Slave同一server_id的冲突原因分析 发布时间:2011 年 1 月 10 日 发布者: OurMySQL 今天分析一个诡异问题,一个模拟Slave线程的程序,不断的被Master Server给kill掉,最终发现是因为有两个Slave使用同样一个server id去连接Master Server,为什么两个Slave用同一个server id会被Master Server给Kill呢?分析了源码,这源于MySQL Replication的重连机制。 继续阅读全文 →
十一 18 mysql 的模块不能安装的解决方法 发布时间:2010 年 11 月 18 日 发布者: OurMySQL 我们最常用的 DBD::mysql 模块,我发现是难住很多人的地方。因为安装老是失败,下面我介绍一下解决方法 继续阅读全文 →
九 30 mysql 升级引起的连锁反应 发布时间:2010 年 9 月 30 日 发布者: OurMySQL 由于 mysql replication 的问题把一台原先跑 mysql 5.0 的服务器升级到了 mysql 5.1,升级后果然 replication 再没出现过问题。但是今天突然发现 postfix 无法启动,检查日志发现很多类似提示: 继续阅读全文 →
六 01 mysql latin1转utf8 的两种方法 发布时间:2010 年 6 月 1 日 发布者: OurMySQL 老版网站系统的mysql数据库dnname采用默认的latin1字符集,系统升级需要将所有数据转换成utf-8格式,目标数据库为newdbname(建库时使用utf8) 继续阅读全文 →
五 12 MySQL server has gone away解决办法 发布时间:2010 年 5 月 12 日 发布者: OurMySQL 1、应用程序(比如PHP)长时间的执行批量的MYSQL语句。最常见的就是采集或者新旧数据转化。 2、执行一个SQL,但SQL语句过大或者语句中含有BLOB或者longblob字段。比如,图片数据的处理 继续阅读全文 →
四 12 MySQL半同步存在的问题 发布时间:2010 年 4 月 12 日 发布者: OurMySQL 在开启MySQL半同步的时候,需要至少一个开启了半同步的slave。在master提交一个写事务之后,master会block这个事务,直到至少一个slave确认已经接受到了该复制事件,这时master才想应用程序确认提交成功。否则超时中断半同步,直到重新满足条件开启。 继续阅读全文 →