• Laravel 连接多个数据库


    第一步、定义数据库链接
    config/database.php

    <?php
    return [

    'default' => 'mysql',

    'connections' => [

    # 主要数据库连接
    'mysql' => [
    'driver' => 'mysql',
    'host' => 'host1',
    'database' => 'database1',
    'username' => 'user1',
    'password' => 'pass1',
    'charset' => 'utf8mb4',
    'collation' => 'utf8mb4_unicode_ci',
    'prefix' => '',
    ],

    # 第二个链接
    'mysql2' => [
    'driver' => 'mysql',
    'host' => 'host2',
    'database' => 'database2',
    'username' => 'user2',
    'password' => 'pass2',
    'charset' => 'utf8mb4',
    'collation' => 'utf8mb4_unicode_ci',
    'prefix' => '',
    ]
    ],
    ];
    第二步、连接第二个数据库
    我们已经成功配置了第二个数据库链接,接下来讲解几种连接的方法。

    1. Schema 表结构更改
    在代码迁移时,可以使用 Schema 提供的 connection() 方法:

    Schema::connection('mysql2')->create('some_table', function($table)
    {
    $table->increments('id'):
    });
    2. Query 数据库查询
    同样的,数据库查询构造器里提供了一个 connection() 方法:

    $users = DB::connection('mysql2')->select(...);
    3. Eloquent 数据模型
    使用 $connection 属性来设置默认的连接:

    <?php

    class SomeModel extends Eloquent {

    protected $connection = 'mysql2';

    }
    你也可以使用 setConnection 来动态设置连接:

    <?php

    class SomeController extends BaseController {

    public function someMethod()
    {
    $someModel = new SomeModel;

    $someModel->setConnection('mysql2');

    $something = $someModel->find(1);

    return $something;
    }

    }
    或者使用 on() 方法:

    $someModel->on('mysql2')->find(1);

    ————————————————
    原文作者:Summer
    转自链接:https://learnku.com/laravel/wikis/16106
    版权声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请保留以上作者信息和原文链接。

  • 相关阅读:
    剑指offer 第十一天
    Java Arrays工具类的使用
    什么是指数加权平均、偏差修正?
    深度学习——优化器算法Optimizer详解(BGD、SGD、MBGD、Momentum、NAG、Adagrad、Adadelta、RMSprop、Adam)
    深度学习——卷积神经网络 的经典网络(LeNet-5、AlexNet、ZFNet、VGG-16、GoogLeNet、ResNet)
    深度学习论文汇总
    剑指offer 第十天
    Java String 类
    Java StringBuffer和StringBuilder类
    剑指offer 第九天
  • 原文地址:https://www.cnblogs.com/mouseleo/p/12830697.html
Copyright © 2020-2023  润新知