【发布时间】:2022-02-01 02:45:59
【问题描述】:
我正在使用 C++ MySQL 连接器。
sql::Connection * db = nullptr;
try {
db = get_driver_instance()->connect("tcp://localhost:3306", "admin", "admin");
db->setSchema("test_db");
}
catch(exception &e) {
return 1;
}
MySQL 连接器动态链接到应用程序。
LDFLAGS = -L/usr/local/mysql-connector-c++/lib64
LDLIBS = -lmysqlcppconn
CXXFLAGS = -Wall -Wextra -g -std=c++11 -O3
当我运行我的应用程序时,大约需要13 033 µs 而10 000 µs 只是这个与 MySQL 的连接。我也尝试使用静态库编译它,但没有帮助。
有什么方法可以加快数据库连接速度?
【问题讨论】:
-
您是否为每个操作建立新连接?如果是这样,您可以考虑将它们汇集起来。
-
不,连接只在应用启动时创建一次...
-
请显示minimal reproducible example。我们无法告诉你如何优化我们看不到的代码
-
建立连接所需的时间取决于 MySQL 服务器(以及连接速度)。这与您的应用程序运行速度无关,而是您正在连接的服务器更快。 MySQL服务器在哪里,你用什么认证方式连接。
-
实际上我正在使用 MAMP(在 MacBook Pro 2017 上)进行测试。我添加了连接示例。
标签: c++ mysql performance optimization