某DB机器上有n个库,某进程对其查询时需要从各个库中获取不同类型的数据,请问是创建n个连接(各自对应不同的库)分别查库好,还是一个连接根据需要时再select db? 两种方式在效率上是否会有较大差别?
多谢。
认证高级PHP讲师
最佳方案:
SELECT * FROM数据库名.表名WHERE ...
数据库名
表名
不需要多个连接,也不需要SelectDB,只要当前用户有相应数据库的权限即可
一个连接好,你的客户端在一次操作也是串行的,所以多个连接也没法并行,另外一次操作就产生这么多连接,并发上来要崩溃的。 另外,如果你是用php去连mysql的话,参考这个问题:http://segmentfault.com/question/223/... 对mysql连接的理解
在程序里面写这个切换感觉不太好,我们这有很多个mysql实例,每个实例里面很多schema,访问的时候最开始自己写了一层封装,后面发现阿里巴巴的开源框架:Corba,你可以试试,可以很容易解决你的问题
最佳方案:
SELECT * FROM
数据库名
.表名
WHERE ...不需要多个连接,也不需要SelectDB,只要当前用户有相应数据库的权限即可
一个连接好,你的客户端在一次操作也是串行的,所以多个连接也没法并行,另外一次操作就产生这么多连接,并发上来要崩溃的。
另外,如果你是用php去连mysql的话,参考这个问题:http://segmentfault.com/question/223/... 对mysql连接的理解
在程序里面写这个切换感觉不太好,我们这有很多个mysql实例,每个实例里面很多schema,访问的时候最开始自己写了一层封装,后面发现阿里巴巴的开源框架:Corba,你可以试试,可以很容易解决你的问题