07

php环境配置时出现无法访问MYSQL数据库的解决办法汇总

昨天重新配了一下PHP的环境(windows 2003+iis下),安装PHP时没的问题,安装MYSQL时也没的问题,而且都可以联上,但是,在使用mysql_connect()函数时提示此函数无法使用,在安装discuz!时也提示“请检查 mysql 模块是否正确加载”及“不支持Mysql数据库,无法安装论坛”,在检查了php.ini中对mysql扩展的支持后开始迷惑,windows/system32下也存在有libmysql.dll,在网上搜了一大堆,都是很平常的问题的解决方法,后来重新复制的时候发现原来我的libmysql.dll是mysql程序中的,把php文件夹中相对应文件copy进去,问题解决。

继续阅读全文

07

Memcache和mysql交互流程操作原理

对于大型网站如facebook,ebay等网站,如果没有Memcache做为中间缓存层,数据访问不可能吃得消,对于一般网站,只要具备独立的服务器,完全可以通过配置Memcache提高网站访问速度和减少数据库压力,这里主要讨论一下Memcache和MySQL数据库交互过程的流程关系,了解Memcache的中间缓存层作用,从而深入了解Memcache机制原理。

继续阅读全文

06

Mysql测试:DRBD+Mysql 高可用方案设置测试

几个注意点:

1、除了primary节点的文件系统是手工创建的之外,其他的所有secondary节点的文件系统都是通过同步完成的,两边的设备大小好像并不要求完全一样的大小,在我测试的过程中,两边用于drbd设备的分区大小相差很大,但好像并没有出现错误,从drbd相关文档上看到这个并不会导致问题。但是如果主节点比备节点大,而且用的空间也超出了备节点空间大小会有问题,具体会怎样还没有测试到。

2、在mount drbd的设备之前,该节点必须已经设置为primary模式,而且如果一边没有umount,另一边是无法mount上的,直接mount会报如下错误:

root@mysql2:/>mount /dev/drbd0 /drbddata
mount: block device /dev/drbd0 is write-protected, mounting read-only

也就是说,在同步的过程中,只有一个节点的数据可见,也就是不能通过我们人直接简单的查看数据文件等方式之间验证数据是否正常。不过看文档说好像可以通过手动设置一些信息来查看是否正常(You can manually set this information for a number of reasons, including when you want to check the physical status of the secondary device (since you cannot mount a DRBD device in primary mode), or when you are temporarily moving the responsibility of keeping the data in check to a different machine (for example, during an upgrade or physical move of the normal primary node). )。

继续阅读全文

06

MySQL之Handler_read_*

在MySQL里,我们一般使用SHOW STATUS查询服务器状态,语法一般来说如下:
SHOW [GLOBAL | SESSION] STATUS [LIKE 'pattern' | WHERE expr]
执行命令后会看到很多内容,其中有一部分是Handler_read_*,它们显示了数据库处理SELECT查询语句的状态,对于调试SQL语句有很大意义,可惜实际很多人并不理解它们的实际意义,本文简单介绍一下:

继续阅读全文