我用vc通过MySQL C API 连接mysql数据库,但是程序运行一段时间后(几天时间)就会出现莫名其妙的错误。
提示: Access denied for user 'eedb'@'svctag-hpkwq2x' (using password: YES),错误代码1045,其中eedb不是数据库用户名,而是我连接的数据库名字。在这个时候,只需要重启我用vc写的程序,程序就能正常连接上数据库了,不需要重启mysql服务.这种情况过几天就会出现,已经给我搞的焦头烂额了,我也不知道到底怎么回事,程序上应该没问题,不是出错的那段程序有问题,那段程序可以正常连接数据库的。我再网上搜的解决方法,都是数据库密码不正确才导致的,但是我的数据库密码是正确的。而且中间没人改过密码.

解决方案 »

  1.   

    show processlists看看是否是连接过多
      

  2.   

    多半是你的vc程序有问题,连接到mysql的时候用了错误的参数
    你的程序需要不断连mysql吗?
    按理说连一次就好了啊,后面只需要mysql_ping就好了
    你现在可以在连接mysql的语句前面加上调试输出,把联接参数打印出来看看是不是错了
      

  3.   

    我就是只连接一次,后边的都是执行insert或select等操作。估计是连接数的问题。
      

  4.   

    看下你的程序在进行insert 或select 后有没有释放资源,
      

  5.   

    检查你的MYSQL的错误日志,然后进行分析,凭空猜很难得到结果。