laravel 连接多个数据库操作

2018-11-08  本文已影响0人  宇VS然

第一步,配置.env

DB_CONNECTION=mysql

DB_HOST=127.0.0.1

DB_PORT=3306

DB_DATABASE=db_1

DB_USERNAME=user

DB_PASSWORD=pwd

DB_HOST_LIB=127.0.0.1

DB_PORT_LIB=3306

DB_DATABASE_LIB=db_2

DB_USERNAME_LIB=user

DB_PASSWORD_LIB=pwd

上面的_LIB可以改成你需要的,比如_TWO等等,只要后面配置成一样的即可

第二步,编辑config/database.php

在mysql后面新增配置信息

  'mysql' => [

      'driver' => 'mysql',

      'host' => env('DB_HOST', '127.0.0.1'),

      'port' => env('DB_PORT', '3306'),

      'database' => env('DB_DATABASE', 'forge'),

      'username' => env('DB_USERNAME', 'forge'),

      'password' => env('DB_PASSWORD', ''),

      'unix_socket' => env('DB_SOCKET', ''),

      'charset' => 'utf8mb4',

      'collation' => 'utf8mb4_unicode_ci',

      'prefix' => '',

      'strict' => false,

      'engine' => null,

  ],

  'mysql_lib' => [

      'driver' => 'mysql',

      'host' => env('DB_HOST_LIB', '127.0.0.1'),

      'port' => env('DB_PORT_LIB', '3306'),

      'database' => env('DB_DATABASE_LIB', 'forge'),

      'username' => env('DB_USERNAME_LIB', 'forge'),

      'password' => env('DB_PASSWORD_LIB', ''),

      'unix_socket' => env('DB_SOCKET', ''),

      'charset' => 'utf8mb4',

      'collation' => 'utf8mb4_unicode_ci',

      'prefix' => '',

      'strict' => false,

      'engine' => null,

  ],

第三步,在需要用到的model中,进行切换

class Books extends Model

{

protected $connection = 'mysql_lib';

public $table = "books";

public $timestamps = false;

}

使用DB查询的时候,切换方式:

 DB::connection('mysql_lib')->select("select id,name from books");

laravel 连接多个数据库操作

上一篇 下一篇

猜你喜欢

热点阅读