flyonok

统计

留言簿(8)

ACE

book

boost

bsd

c study

c++

code download

codeblock

computer clound

Eclipse

embed system

erlang

ET++

gtk

ic card

java

KDE

libevent

linux

linux--MM

mysql

network education

one card

oracle

pcap relation

php

powerbuilder

python

QT

software config

software test

SQL server

UML

wireless

wxwidgets

陈宾

阅读排行榜

评论排行榜

mysql--预处理函数

在程序中使用了mysql_stmt系列预处理函数,发现mysql_stmt_execute出现错误,但错误号为0;
调整参数
show global status like "open%";

show global variables like '%open%';

flush tables;

SHOW GLOBAL STATUS LIKE 'Opened_tables'

set global table_open_cache = 200;(table_cache)

set global max_connections = 100;

open_files = 2048
ulimit -n 2048

wait_timeout = 600

察看mysql的进程数
show processlist;
察看sleep进程的信息
netstat -ntp | grep :端口号
根据以上命令可以查到与mysql连接的程序的名称
netstat -ntp | grep 进程号

调试程序:strace -p

重新运行程序,发现没有了。晕。。。

总结:mysql中有个超时重连机制,由参数wait_timeout决定,缺省时28800秒;如果这个参数设置太小,就会导致客户端老是重连,从而预处理句柄实效,数据无法处理。解决方法,使用缺省值,客户端不使用重连机制。

posted on 2008-06-13 17:23 flyonok 阅读(741) 评论(0)  编辑 收藏 引用 所属分类: mysql


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理