怎么缩短连接mysql数据库耗时较多的问题?

kacy16 2014-09-09 09:42:50
在linux环境下使用 mysql数据库来开发一个应用管理系统,通过调用mysql_real_connect函数
来与同一局域网内的数据库服务器进行连接,发现调用此函数进行连接的耗时的时间较长(起码有几秒),
是否有方法可以缩短这时间?
初次连接成功后,由于各种原因,中途与数据库的连接可能会中断(假如网线断开了),仍旧使用之前的连接
进行查询,这时调用mysql_query应该返回错误信息,能否有方法缩短mysql_query函数的运行时间?
...全文
295 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
九月茅桃 2014-09-10
  • 打赏
  • 举报
回复
做连接池,把连接提前建立起来,这样在应用调用的时候,就省了create和connect时间了。
九月茅桃 2014-09-10
  • 打赏
  • 举报
回复
引用 3 楼 kacy16 的回复:
[quote=引用 1 楼 ACMAIN_CHM 的回复:] 在 my.cnf 中加上 skip-name-resolve 试试。
谢谢ACMAIN_CHM的指点,我的mysql数据库是安装在windows系统下的,请问在哪里查看设置skip-name-resolve呢。[/quote] 去my.ini里面去看。
kacy16 2014-09-10
  • 打赏
  • 举报
回复
引用 2 楼 mchdba 的回复:
做连接池,把连接提前建立起来,这样在应用调用的时候,就省了create和connect时间了。
连接池的建议是好的,但是我评估了一下,不适合该应用软件的实际情况。 1 因为该应用软件系统在正常情况下也就一次连接数据库,一个连接。 2 即使是连接池建立好了,但是如果中途数据库服务器重启了或应用系统与数据库之间的网络连接中断了,应用系统还是必须得重新连接一次数据库,我是希望检测到连接失败和下一次成功连接这个过程的耗时尽量短一点。
kacy16 2014-09-10
  • 打赏
  • 举报
回复
引用 1 楼 ACMAIN_CHM 的回复:
在 my.cnf 中加上 skip-name-resolve 试试。
谢谢ACMAIN_CHM的指点,我的mysql数据库是安装在windows系统下的,请问在哪里查看设置skip-name-resolve呢。
ACMAIN_CHM 2014-09-09
  • 打赏
  • 举报
回复
在 my.cnf 中加上 skip-name-resolve 试试。

56,675

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧