当前位置: 首页 > 知识库问答 >
问题:

Laravel多个数据库同时使用所有数据库[重复]

章安宜
2023-03-14

我不确定这是否可能,但我在安装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();

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


共有1个答案

傅阿苏
2023-03-14

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

请参阅此链接:http://fideloper.com/laravel-multiple-database-connections

 类似资料:
  • 我正在开发一个具有多个数据库访问的应用程序,我想用它进行PHPUnit测试。我目前的方法是在中拥有多个连接(mysql,mysql2,mysql3),这样我就可以在env文件中对所有这些连接进行不同的访问。因此,模型定义了变量。在我的第一个功能测试中,我想访问一个页面,只看到我在工厂提供的数据,所以只是为了让事情开始。在我的文件中,我已经将指定为,并且对于每个MySql设置都具有。 稍后编辑 所以

  • 我正在尝试使用多个数据库使用laravel: Laravel版本:5.5.28 Php 7.2.0版 数据库驱动程序 定义连接: 定义模型: 定义控制器: 上面的代码工作正常,但如果我更改控制器中连接的名称,它将继续使用.env文件中配置的名称 请问,有人能帮我解决这个问题吗?

  • 我正在创建一个Laravel/最新版本的应用程序,它需要创建数百个sql表来服务于此项工作。还有数百个客户机的数据将被多次插入这些表中(每个客户机1000行或某些表中更多)。为了消除混淆,我需要一个通用/通用数据库来提供公共信息,并为每个客户机提供单独的数据库来提供特定信息,并且希望在添加客户机时创建新的数据库。这可以在Laravel(一次处理多个数据库)中实现,还是有其他PHP框架可以更好地实现

  • 本文向大家介绍yii2.0数据库迁移教程【多个数据库同时同步数据】,包括了yii2.0数据库迁移教程【多个数据库同时同步数据】的使用技巧和注意事项,需要的朋友参考一下 本文讲述了yii2.0数据库迁移的方法。分享给大家供大家参考,具体如下: 创建迁移 使用如下命令来创建一个新的迁移: 必填参数 name 的作用是对新的迁移做一个简要的描述。例如,如果这个迁移是用来往多个数据库同一张表  ( 假设每

  • 我找不到连接多个db和链sql查询的方法, 如何使用原始mysql语法? 如何使用拉威尔方法?

  • 我们将redis用于缓存和会话。我希望能够使用分离redis数据库(相同的服务器,只是不同的数据库)为每个情况,以及能够使用相同的服务器生产和预生产。我知道Redis允许您在一台服务器上定义多个数据库(http://www.redisocokbook.org/multiple_databases.html),但是我不知道如何将其翻译成Redis。配置(至少根据文档http://laravel.co