问题标签 [libmysql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
807 浏览

c++ - how do I solve libmysqlclient_r.so symbol referencing linking errors?

following is the make linking output. it shows Symbol referencing errors, even though I have provided path for libmysqlclient_r.so

If I link it to libmysqlclient.so then it works fine. But as my program uses multithreading, I want to link libmysqlclient_r.so

following is the make file

Tried with different flags but still no change. Please suggest

0 投票
1 回答
978 浏览

python - Python libmysqlclient 段错误(MySQLdb)

我正在 MySQLdb 上编写一个 SQL 包装器。

在执行过程中的某个时候,我在 DMSG 中收到以下错误并且进程崩溃:

我该如何调试这个故障?以前有人遇到过这种错误吗?该错误显然不在脚本中,但我假设我正在执行一些错误的调用,这些调用会触发客户端中的该错误。

关于如何解决它的任何建议?

Python 2.6.6 和 libmysqlclient.so.16.0.0 在 Debian 6.0 上运行

谢谢你

0 投票
2 回答
585 浏览

c++ - 可以跨线程共享准备好的语句吗?

使用 libmysqlclient_r.so 即 c mysql 连接器。根据当前的拱门,在 thread1 中为 connection1 准备的 stmt 将被创建和缓存。接下来为 thread2 connection2 缓存准备好的 stmt 将被重用。

执行后,程序在随机位置抛出分段错误。

注意:如果我只保留一个线程并执行,那么它永远不会引发分段错误。

我没有在 mysql 文档中找到任何关于它的内容,即使我遵循了以下给出的所有必要步骤:http: //dev.mysql.com/doc/refman/4.1/en/threaded-clients.html

请建议跨线程共享prepare stmts是否有问题?

0 投票
0 回答
501 浏览

php - libmysql (c-api) 比 php-mysqli 慢

我正在调查为什么我的 C-test-program(libmysql) 的速度几乎是相同 php-test(cli) 程序的两倍:

我正在创建一个准备好的语句并插入 10 条记录。

php-cli-version(mysqlnd) 几乎是使用 libmysql 的 C 版本的两倍。我正在这样测试:time ./dbctest && timephp phptest.php

C版:

PHP版本:

0 投票
1 回答
433 浏览

mysql - MySQLdb - libmysqlclient_r 卡在 read() 上

我正在编写一个读/写 MySQL DB 的多线程 python 应用程序(使用 MySQLDB 和 libmysqlclient_r - 线程安全库)。

在某些时候(不确定为什么或何时),其中一个线程卡住了。

知道为什么 read () 不返回吗?它偶尔会发生一次。

笔记!大约有 6 个不同的线程连接到该数据库并在其上查询/执行。

它可能是一个错误的查询字符串吗?API 使用不当?

0 投票
1 回答
1904 浏览

c++ - g ++ mysql链接器错误

我正在尝试使用以下命令行编译用 c++ 编写的程序:

这在 Debian 32 位机器上一切顺利,但在 Ubuntu 64 位机器上失败了,我不知道为什么。我已经安装了使用 mysql 所需的所有软件包。错误消息如下所示:

该消息很长,并且所有行看起来都与更改引用非常相似;)

0 投票
1 回答
2161 浏览

mysql - 构建具有 ssl 支持的 mysql 客户端库

我正在尝试构建具有 SSL 支持的 mysql-5.0.33 客户端库。我正在使用的

配置然后makemake install

链接到的 OpenSSL 版本是 1.0.0a。上述过程没有问题或错误。

现在我的程序如下

该程序构建如下:

我正在连接的 mysql 服务器(192.168.1.62)启用了 ssl,并且用户 testssl 只能通过 ssl 连接(GRANT ... REQUIRE SSL)。我使用 mysql 命令行或其他 mysql 客户端行(如 Sqlyog)连接到服务器没有问题。

现在我收到错误Real connect: 2026: SSL connection error,当我尝试使用此命令运行程序LD_LIBRARY_PATH=<some dir>/lib/mysql/ ./mysql-ssl-test但使用此命令运行时它运行良好./mysql-ssl-test(这里它尝试与系统 libmysqlclient 链接,它是 v5.5.25 和 OpenSSL 1.0.0-fips)

有趣的是,如果我更换线路

即使使用它也能正常运行LD_LIBRARY_PATH=<some dir>/lib/mysql/ ./mysql-ssl-test

这是我遇到的 mysql 5.0.33 或 OpenSSL 1.0.0a 的错误(谷歌搜索此类错误没有帮助)还是我在构建 libmysqlclient 时犯了一些错误。

0 投票
3 回答
619 浏览

c - C SQL 查询构建变得容易

中构建 SQL是一项痛苦的工作。构建这样的东西需要很多时间。我是新手。它有助于字符串操作。但我没有找到任何可以缩短查询构建代码的方法。在此处查看示例。

为了您的方便,这里是功能append_mysql_escaped_param

我怎样才能让它变小?这里有太多的冗余代码,足以让人头疼不已。有什么改进的办法吗?

我知道我可以使用准备好的语句。但是当我在准备好的语句上绑定值时,我也需要编写这样的批量代码。我只想摆脱容易出错的冗余代码。这尤其适用于 C。

0 投票
1 回答
265 浏览

c - g_strdupv 函数的段错误

我在这个函数上遇到了段错误。

基本上我想做的是执行一些'SELECT'查询并将第一行作为字符串数组返回。按照说明书g_strdupv应该把退回的复印一份重新char **制作。我退回这个。g_strfreev后来我用推荐的方法清理了这个。

但是为什么我在这里遇到段错误。我用 valgrind 运行它。输出和相应的代码可以在这里找到

0 投票
1 回答
2130 浏览

c - 使用 g_string_free() 的 free() / delete / delete[] / realloc() 无效

我有一个GList包含GSList. 此 GSlist 包含GString. 当我释放整个GList时,我得到分段错误。

现在检查以下代码。

所以m_rows只分配使用g_string_new(), g_slist_prepend()g_list_prepend()g_string_new()创建新GString的并添加到GSList. 然后将所有结果GSList添加到GList. 它发生在mysql_multiple_rows函数中。

他们正在free使用mysql_free_multiple_rows. 这个函数正好相反。

请参阅清理功能。

谁能告诉我为什么我会收到这个错误?由于内存分配和解除分配顺序相同,我不知道为什么会发生这种情况。

  1. Valgrind 输出
  2. 源文件