Php Laravel多个数据库同时使用所有数据库

Php Laravel多个数据库同时使用所有数据库,php,mysql,laravel,Php,Mysql,Laravel,我不确定这是否可能,但我在安装Laravel时遇到了这种情况 我正在运行3个实时数据库(随着时间的推移会更多),我有一个laravel安装,我想做的是使用不同的连接合并所有数据,并运行1个查询以获得所有关系的所有数据等。。。。基本上要用雄辩。所有的数据库在表设计、索引、键等方面都是相同的,但我不确定这是否可能 我希望能够编写一个查询,例如:Users::all()一次使用所有连接 我知道唯一可行的方法就是这样做 'connection1' => [ 'driver'

我不确定这是否可能,但我在安装Laravel时遇到了这种情况

我正在运行3个实时数据库(随着时间的推移会更多),我有一个laravel安装,我想做的是使用不同的连接合并所有数据,并运行1个查询以获得所有关系的所有数据等。。。。基本上要用雄辩。所有的数据库在表设计、索引、键等方面都是相同的,但我不确定这是否可能

我希望能够编写一个查询,例如:
Users::all()一次使用所有连接

我知道唯一可行的方法就是这样做

'connection1' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', 'localhost'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'charset' => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix' => '',
            'strict' => false,
            'engine' => null,
        ],
'connection2' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', 'localhost'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'charset' => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix' => '',
            'strict' => false,
            'engine' => null,
        ],

DB::connection('connection1')->table('table_here')->get();

任何人都知道这是否可行。

在datbase配置文件(可能是app/config/database.php)中,您可以定义多种类型的数据库连接。事实上,您可以定义任意数量的连接。例如,如果应用程序必须从2个MySQL数据库中提取数据,则可以分别定义这两个数据库:


查看此链接:

检查此项:我目前正在使用不同的连接并基于此进行查询,但我希望能够编写一个查询,例如:
Users::all()一次使用所有连接。