在我的Web应用程序中,我曾经使用连接字符串(如
)连接到MySql数据库"Server=mysql.myserver.com; Port=3306; Database=my_database; Uid=user; Pwd=password;[...]"
现在,在我的应用程序的某些部分中,我需要查询多个数据库。
我的第一个任务是创建多个连接,每个使用的数据库创建一个连接(在我的情况下最多为12个)。
然后我坚信我可以使用单个连接,而无需设置“ Database”参数,例如
"Server=mysql.myserver.com; Port=3306; Uid=user; Pwd=password;[...]"
,然后在每个单独的查询中指定目标数据库。例如。
"SELECT * FROM my_database.my_table"
我想单连接解决方案可能是一个更好的决定,因为我不会增加活动连接的数量,这对我来说尤其有用,因为它是一个Web应用程序,并且可能具有一致的并发数量用户。
但是,我不确定什么是最好的选择。我想到了一些问题:在执行计划的制定上我会失去表现吗?最差的缓存?我还有什么想念的吗?
预先感谢
答案 0 :(得分:1)
您应该使用单个连接。
唯一的缺点是您将需要对模式(数据库)名称进行硬编码,或者使其可配置,这有点不方便。
但是,多个连接具有严重的缺点: