【问题标题】:MySQL remote connection takes long to open affecting C# winform applicationMySQL远程连接需要很长时间才能打开影响C#winform应用程序
【发布时间】:2015-09-19 00:24:39
【问题描述】:

我有一个 C# 应用程序可以访问基于 LAN 的 mysql 服务器进行数据库操作,它工作正常。但是,一旦我尝试访问远程 mysql 服务器,打开 MySQL 连接和查询执行的时间就会大大增加,这会导致主线程上出现类似挂起的情况。

仅打开一个 MySQL 连接大约需要 1-3 秒,会影响 GUI。

除了在另一个线程上运行 MySQL 操作之外,还有什么方法可以避免这种情况?

【问题讨论】:

    标签: c# mysql winforms


    【解决方案1】:

    可能有两个原因。第一个 mysql 服务器有很多打开的连接,因此管理新客户端的速度很慢,因此请使用 root 超级权限或 root 帐户等进程权限检查服务器状态-

    Mysql> show processlist;
    +----+-------------+-------------------+------+---------+------+----------------------------------+------------------+
    | Id | User        | Host              | db   | Command | Time | State                            | Info             |
    +----+-------------+-------------------+------+---------+------+----------------------------------+------------------+
    |  2 | system user |                   | NULL | Connect | 1188 | Waiting for master to send event | NULL             |
    |  5 | root        | smart.local:39850 | NULL | Query   |    0 | init                             | show processlist |
    +----+-------------+-------------------+------+---------+------+----------------------------------+------------------+
    2 rows in set (0.00 sec)
    

    第二种可能是连接器有问题。 MySql Connector .Net 6.6.5 在我们这边也存在这个问题。 MySql 连接器 .Net 6.8.3 正在解决这个问题。

    如果两者都可以,那么链接可能会有所帮助。

    Very slow opening MySQL connection using MySQL Connector for .net

    【讨论】:

    • 非常感谢。其实我觉得是网络的问题。我在局域网中做了一台PC将其端口转发到公共IP可能连接缓慢可能与路由器或其他东西有关。
    • 不,我的问题仍然是网络中的什么可能导致此问题?
    • @shyamalparikh 可能是您的网络连接缓慢
    • 嗯,根据我的应用统计,它只需要 500bytes/s 的下载速度,而数据库主机的速度为 52kB/s,所以我可能认为速度不是问题。
    • @syamalparikh 尝试与 localhost 的连接,如果速度很慢,那么您的 mysql 连接器有问题,否则互联网连接似乎很慢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多