【发布时间】:2022-01-13 09:33:33
【问题描述】:
有什么方法可以对来自不同服务器的多个数据库使用联接查询?
我的database.php 是
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'db1'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', ''),
...
],
'mysql2' => [
'driver' => 'mysql',
'host' => env('DB_HOST_2', '192.233.****.*'),
'port' => env('DB_PORT_2', '3306'),
'database' => env('DB_DATABASE_2', 'db2'),
'username' => env('DB_USERNAME_2', 'root'),
'password' => env('DB_PASSWORD_2', ''),
...
]
我需要在连接查询中实现它。
我的控制器功能是
public function function1(){
$db1 = DB::connection('mysql2');
$result = TABLE1::join($db1 . '.' . 'table2', 'table2.id','=','table1.table2_id');
return Datatables::of($result);
}
【问题讨论】:
-
不同的是,在提到的问题中,他们使用的是同一个主机。
-
是的,我已经尝试过这些逻辑。但是不能在Join中使用。
-
这能回答你的问题吗? Join tables from two different server