Невозможно, единственный способ, которым это возможно на PHP, - это использование ваших кластеров/нескольких узлов с настройкой репликации.
Очевидно, что вы не понимаете некоторые из более технических вещей в отношении mysql, но дайте это назад.
$master = mysql_connect("master_host","abc","abcdb");
$slave = mysql_connect("slave_host","xyz","xyzdb");
if(mysql_select_db("abc_db",$master) && mysql_select_db("xyz_db",$slave))
{
//Both Selected
$sql = mysql_query("SELECT * FROM employee",$master);
$rows = array();
while($row = mysql_fetch_assoc($sql))
{
//Query the other $slave DB here!
$slave_sql = mysql_query("SELECT * FROM department WHERE department_id = " . $row['id'],$slave);
while($sub_row = mysql_fetch_assoc($slave_sql))
{
$row = array_combine($sub_row,$row);
}
$rows[] = $row;
}
}
Но это не то, что вы хотите делать на самом деле.
Просто упакуйте ваши попытки присоединиться через 2 базы данных на том же сервере, так как оба ваши хосты в вашем коде locahost, это возможно
SELECT * FROM db1.employees db1_e,db2.records db2_r WHERE db1_e.employee_id = db2_r.record_eid
Но не разрывать 1 к внешнему серверу без использования репликации, даже тогда вы можете использовать репликацию.
Список литературы и ссылки:
http://nathan.rambeck.org/blog/2-joining-mysql-tables-across-multiple-databases
http://dev.mysql.com/doc/refman/5.0/en/replication.html
Я думаю, что это невозможно. – pltvs
Вы не можете присоединиться к двум соединениям, но вы можете присоединиться к базам данных на одном и том же хосте - и для этого вам нужно только одно соединение. См. Конец ответа @ RobertPitt. – Piskvor