查看完整版本: [-- 发布程序时登录不上mysql数据库怎么回事? --]

QTCN开发网 -> Qt基础编程 -> 发布程序时登录不上mysql数据库怎么回事? [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

y1363386323 2017-04-29 13:58

发布程序时登录不上mysql数据库怎么回事?

[attachment=16939]

[attachment=16940]

我做了一款程序,发布程序后,在别人的电脑上使用就登录不了服务器的mysql数据库,不知道怎么回事?
第一张图是在我自己电脑上试验的,登录成功;
第二张图是在别人的电脑上试验的,登录失败。

1.在我的电脑上登录成功(我的电脑上安装了      mysql数据库)
2.如果在别人的电脑上安装mysql数据库,再登录也成功。

由于我做的这款软件是商业版的,不可能在所有用户的电脑上安装mysql数据库,所以还请大侠们帮我解决!

下面是我的程序,大家可以下载试验 http://pan.baidu.com/s/1hsxaNlE

uidab 2017-04-29 14:59
是不是权限问题? 输出日志看看,或者有没有socket 通讯,而不是远程mysql?

y1363386323 2017-04-29 15:21
uidab:是不是权限问题? 输出日志看看,或者有没有socket 通讯,而不是远程mysql? (2017-04-29 14:59) 

不会是权限问题,它都没有登录上我的服务器数据库,不知道怎么回事,还望你帮看下,我都弄了好几天了,真不知道哪出问题了。
上面的那个主机和用户我会一直保留,你可以测试

uidab 2017-04-29 16:05
y1363386323:不会是权限问题,它都没有登录上我的服务器数据库,不知道怎么回事,还望你帮看下,我都弄了好几天了,真不知道哪出问题了。
上面的那个主机和用户我会一直保留,你可以测试 (2017-04-29 15:21) 

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 54
Server version: 5.7.18-log MySQL Community Server (GPL)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show tables;
ERROR 1046 (3D000): No database selected
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.06 sec)


是这样吗?

uidab 2017-04-29 16:09
问题是我电脑上也装有mysql。
你看看是不是mysql的动态库没有?

y1363386323 2017-04-29 16:09
uidab:Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 54
Server version: 5.7.18-log MySQL Community Server (GPL)
....... (2017-04-29 16:05) 

对,是这样的啊

y1363386323 2017-04-29 16:12
uidab:Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 54
Server version: 5.7.18-log MySQL Community Server (GPL)
....... (2017-04-29 16:05) 

我想你刚才应该是登录上我的服务器mysql数据库了,但是你用其它没有安装过mysql数据库的电脑登就登不上

uidab 2017-04-29 16:45
y1363386323:我想你刚才应该是登录上我的服务器mysql数据库了,但是你用其它没有安装过mysql数据库的电脑登就登不上 (2017-04-29 16:12)

刚好是上午装的mysql,所以干脆,卸载了mysql,用你的程序登陆。发现是可以的

windows8.1  
一会要测试建个大量数据的表了。

y1363386323 2017-04-29 23:16
uidab:刚好是上午装的mysql,所以干脆,卸载了mysql,用你的程序登陆。发现是可以的
windows8.1  
一会要测试建个大量数据的表了。 (2017-04-29 16:45) 

我还有一个提示没跟你说,就是如果你安装了mysql,然后再卸载,是可以登录到服务器数据库的,这点我也试验过;但有一种情况是不能登录到服务器数据库的,就是从未装过mysql数据库的电脑,比如你把这个程序拿到网吧的电脑上去试验,它就通不过

y1363386323 2017-04-29 23:25
uidab:刚好是上午装的mysql,所以干脆,卸载了mysql,用你的程序登陆。发现是可以的
windows8.1  
一会要测试建个大量数据的表了。 (2017-04-29 16:45) 

我感觉这个问题很难解决,根本找到不头绪...

alexltr 2017-04-30 14:11
我个人感觉还是缺少mysql的动态库。 我以前搞postgresql时情况跟这个相似。
开始我以为有sqldrivers目录里的数据库驱动就可以了,但实际上还需要这个数据库的其它动态库文件。

对于mysql来说, 我觉得可能是libmysql.dll这个文件, 你把这个文件复制到你的程序所在的目录看一下是否可以。

alexltr 2017-04-30 14:30
噢,我下载了你的程序,原来是有libmysql.dll这个文件的。
我电脑是没有安装MySQL的, 但可以连接成功。
[attachment=16941]

y1363386323 2017-04-30 19:00
alexltr:噢,我下载了你的程序,原来是有libmysql.dll这个文件的。
我电脑是没有安装MySQL的, 但可以连接成功。
[图片]
 (2017-04-30 14:30) 

你的电脑以前不是不装过mysql数据库? 以前装过数据库,再御载,是可以登录到服务器的; 但从未装过mysql数据库的电脑不能登录服务器,比如网吧的电脑就登录不上了。
我真不知是哪出了问题,在网上找了N多答案,现在心力憔悴,快死了,请帮帮我吧

yanwuyue 2017-04-30 20:05
你的服务器IP是不是公网IP啊,连数据库肯定是不用装数据库的

y1363386323 2017-04-30 20:10
yanwuyue:你的服务器IP是不是公网IP啊,连数据库肯定是不用装数据库的 (2017-04-30 20:05) 

是公网IP啊,可以连接上,上面都有图作证的,唯一连不上的是从未安装过mysql数据库的电脑

y1363386323 2017-04-30 20:13
alexltr:噢,我下载了你的程序,原来是有libmysql.dll这个文件的。
我电脑是没有安装MySQL的, 但可以连接成功。
[图片]
 (2017-04-30 14:30) 

我怀疑是mysql数据库的注册表有问题

liudianwu 2017-04-30 20:17
找到问题了,你的libmysql版本不兼容,需要用我这个[attachment=16945]
测试截图:
[attachment=16946]
声明:我的是全新的干净的操作系统,连QQ都没装,全部用于测试软件的。用你自带的libmysql确实会存在连接失败的问题,用我这个就不会!

y1363386323 2017-04-30 20:25
我把这个程序改进了一下,增加了一个报错提示,返回的报错结果如下:
[attachment=16947]

y1363386323 2017-04-30 20:52
liudianwu:找到问题了,你的libmysql版本不兼容,需要用我这个[图片]
测试截图:
[图片]
声明:我的是全新的干净的操作系统,连QQ都没装,全部用于测试软件的。用你自带的libmysql确实会存在连接失败的问题,用我这个就不会! (2017-04-30 20:17) 

终于解决了,跪谢!!!!!!大侠,我要请你吃饭

y1363386323 2017-04-30 20:54
liudianwu:找到问题了,你的libmysql版本不兼容,需要用我这个[图片]
测试截图:
[图片]
声明:我的是全新的干净的操作系统,连QQ都没装,全部用于测试软件的。用你自带的libmysql确实会存在连接失败的问题,用我这个就不会! (2017-04-30 20:17) 

我一定要把这个问题单独发个贴子,以免其它同人像我这样弄得心力憔悴

uidab 2017-05-01 11:36
y1363386323:我一定要把这个问题单独发个贴子,以免其它同人像我这样弄得心力憔悴 (2017-04-30 20:54) 

你自己的程序应该有日志啊,如果有日志的话,这个错误早就能发现了。

话说我很久不去网吧了,没办法替你做更多测试。

y1363386323 2017-05-01 14:46
uidab:你自己的程序应该有日志啊,如果有日志的话,这个错误早就能发现了。
话说我很久不去网吧了,没办法替你做更多测试。 (2017-05-01 11:36) 

嗯,还是要谢谢你,日志上面写得很模糊,提示driver not load

uidab 2017-05-02 08:03
y1363386323:嗯,还是要谢谢你,日志上面写得很模糊,提示driver not load (2017-05-01 14:46) 

driver not load 其实已经可以进行定位了。


查看完整版本: [-- 发布程序时登录不上mysql数据库怎么回事? --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled