gpt4 book ai didi

php - 如何使用 Laravel Eloquent 在不同服务器上的多个数据库之间执行连接查询?

转载 作者:可可西里 更新时间:2023-11-01 06:51:02 27 4
gpt4 key购买 nike

这就是我们使用 Laravel 处理多个数据库连接的方式,Laravel 是一个 PHP 框架 而不是 Python(谁认为这是重复的帖子)

<?php
return array(

'default' => 'mysql',

'connections' => array(

# Our primary database connection
'mysql' => array(
'driver' => 'mysql',
'host' => 'host1',
'database' => 'database1',
'username' => 'user1',
'password' => 'pass1'
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),

# Our secondary database connection
'mysql2' => array(
'driver' => 'mysql',
'host' => 'host2',
'database' => 'database2',
'username' => 'user2',
'password' => 'pass2'
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
),
);

这就是您连接到该数据库的方式。

$user1 = User::on('mysql1')->where(/* ... */)->get()
$user2 = User::on('mysql2')->where(/* ... */)->get()

这些只是 SELECT 查询。因此 Eloquent 可以完美地工作。

但是,当我想在这两个数据库之间执行JOIN 查询 操作时,这似乎是不可能的。

最佳答案

如果这 2 个数据库位于不同的服务器上,则无法执行此操作。至少不简单。我读到一个 storage engine .但我以前从未尝试过这样做。

但是

如果数据库在同一台服务器上,您可以通过简单的连接来完成,前提是用户有正确的权限!

关于php - 如何使用 Laravel Eloquent 在不同服务器上的多个数据库之间执行连接查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30252988/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com