读书人

Mysql是支持预编译的只是默许没开启

发布时间: 2012-08-21 13:00:22 作者: rapoo

Mysql是支持预编译的,只是默认没开启
近日看到一帖子,曰Mysql不支持预编译,并做了大量的测试来证明是没有预编译。

其实Mysql不是不支持,只是默认的状态下,预编译的功能并没有开启。这里的默认状态是指的jdbc url 的默认连接参数。

采用show status like '%prepare%'; 可以看到mysql缓存了预编译的sql的数目;

jdbc:mysql://xxx.22.11.31:3306/dbname?useServerPrepStmts=true

如果默认useServerPrepStmts=true不加上的话,所有的preparedStatement都给白费了。show status like '%prepare%';看到的count始终是0。 1 楼 sun_2008 2011-09-27 再加一个参数cachePrepStmts=true才行,好像预编译的语句也只对同一个连接有用。

读书人网 >Mysql

热点推荐