我的应用程序上有两个FireDAC连接,一个用于局域网上的MySQL服务器并存储我店的私人数据(如销售,产品等),另一个连接到一个远程(互联网)MySQL服务器,它随机给我一个例外
First chance exception at $745AA882. Exception class
EMySQLNativeException with message '[FireDAC][Phys][MySQL] Lost
connection to MySQL server during query'.
这是FireDAC,我的代码还是远程MySQL服务器的问题? 使用NAVICAT软件我没有问题。
答案 0 :(得分:0)
通常会发生此错误,因为Internet连接不稳定且在交换数据期间连接已关闭
有时您可以通过增加连接超时(和ReadTimeOut)来解决此问题
有时会出现此错误,因为您尝试发送或接收大量数据(如Blob字段),并且应该增加MySQL服务器的max_allowed_packet变量以解决问题
解决此问题的下一个建议是通过将skip-name-resolve添加到MySQL服务器的设置来避免dns查找
此问题的主要原因是连接稳定性和MySQL服务器设置
如果您可以访问MySQL服务器并且可以更改设置,则此链接可能很有用:
http://www.monitis.com/blog/101-tips-to-mysql-tuning-and-optimization/
您可以找到许多关于提高MySQL服务器性能的文章