从PHP5.3开始, MySQL team专为PHP开发的MySQL连接库mysqlnd(MySQL native driver for PHP)终于和PHP一起发布了. mysqlnd的主要目的是为了解决长久以来mysql和php的license的问题. 它将作为PHP的源代码的一部分和PHP一起发布.
今天, 我要为大家介绍一个mysqlnd的插件:mysqlnd_ms, 这个插件是由mysqlnd的开发者Andrey Hristov,Ulf Wendel和johannes一起开发的, 目前发布在PECL: mysqlnd_ms
昨天有人在群里问, MySQL是否可以设置读写超时(非连接超时), 如果可以就可以避免一条SQL执行过慢, 导致PHP超时错误. 这个, 其实可以有. 只不过稍微要麻烦点.
with 14 Comments最近公司组织了个PHP安全编程的培训, 其中涉及到一部分关于Mysql的"SET NAMES"和mysql_set_charset (mysqli_set_charset)的内容:
说到, 尽量使用mysqli_set_charset而不是"SET NAMES", 当然, 这个内容在PHP手册中也有叙及, 但是却没有解释为什么.
最近有好几个朋友问我这个问题, 到底为什么?
问的人多了, 我也就觉得可以写篇blog, 专门介绍下这部分的内容了.
不知道"拉"一天开始, 好像大家都开始谈论PgSQL了, 呵呵, 最近尝试在项目中使用Pgsql, 现在就将使用Slony-I配置PostgreSQL同步的过程拿来与大家分享.
话说Pgsql虽然很流行,但是国内的文档真的是很少,尤其配置同步这块,基本上都是互相转贴, 写的也很笼统,在我自己配置过程中, 遇到了很多问题. 本文将努力将各种概念解释清楚, 尽量避免大家再遇到我遇到的疑难问题.
是否因为需求经常变动,而导致你需要频繁修改数据库结构呢? 是否经常的数据库结构的调整,导致你的数据库性能极度下降呢? 基于这样的考虑, 我设计了ISP, 我的出发点就是, 将数据库的数据逻辑剥离出来,数据库单纯就是存储数据,而数据之间的逻辑关系,提出来交由脚本逻辑完成。 并且在设计数据库的时候, 本着适应多种数据存储要求,而设计出可定制的表结构,和适应定制化的接口。
with 13 Comments在MySQL4.1中子查询是不能使用LIMIT的,手册中也明确指明 "This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery' "
也就是说,这样的语句是不能正确执行的。
select * from table where id in (select id from table limit 10);
但是,,但是,,,只要你再来一层就行。。如:
select * from table where id in (select t.id from (select * from table limit 10)as t)
你说说,MySQL是不是很让人无语??