PDO. Чтения из нескольких баз. 2 подключения к одному хосту или одно?
Что лучше?
new \PDO('mysql:host=localhost;dbname=db1', user, pass);
new \PDO('mysql:host=localhost;dbname=db2', user, pass);
или
new \PDO('mysql:host=localhost', user, pass);
Мне удобнее 1 случай, т.к. в запросе не нужно будет указывать базу, но боюсь, что php будет открывать 2 соеденения, так ли это критично?
Любой инстанс ПДО - это всегда отдельное новое подключение к БД, не важно, с к одной и той же, или к разным. В теории - это лишняя нагрузка на базу и желательно двух соединений избегать. Но если это не хайлоад, то большой проблемы не будет. Если хавйлоад, то надо осваивать современные технологии и не шарашить SQL прямо в коде, а использовать какую-нибудь интерллектуальную технологию, которая будет составлять запросы сама, и в том числе подставлять имя желаемой базы, беря его из настроек.