Lumen框架多数据库连接配置方法
生活随笔
收集整理的這篇文章主要介紹了
Lumen框架多数据库连接配置方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Lumen作為一款API導向很濃的框架,配置極簡化,默認只支持一路DB配置
然而隨著業務復雜度的提高,引入多個數據庫連接似乎無法避免,下面介紹一下LUMEN連接多個數據庫的配置方法:
- 修改.env文件,增加新DB配置,如下:
//DB1 配置DB_CONNECTION=mysqlDB_HOST=127.0.0.1DB_PORT=3306DB_DATABASE=dbnameDB_USERNAME=dbnameDB_PASSWORD=passwordDB_TIMEOUT=4//DB2配置DB_TEST_CONNECTION=mysqlDB_TEST_HOST=127.0.0.1DB_TEST_PORT=3307DB_TEST_DATABASE=dbname2DB_TEST_USERNAME=dbname2DB_TEST_PASSWORD=passwordDB_TEST_TIMEOUT=4
- 因為LUMEN在加載DB配置時,還是會默認去laravel模塊下尋找相關配置文件,這時修改laravel模塊下的database.php文件
文件位置在:
./vendor/laravel/lumen-framework/config/database.php
添加.env文件中新增的DB配置,如下:
?
//默認配置'mysql' => ['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' => env('DB_CHARSET', 'utf8'),'collation' => env('DB_COLLATION', 'utf8_unicode_ci'),'prefix' => env('DB_PREFIX', ''),'timezone' => env('DB_TIMEZONE', '+00:00'),'strict' => env('DB_STRICT_MODE', false),],//新增配置'mysql_test'=>['driver' => 'mysql','host' => env('DB_TEST_HOST', 'localhost'),'port' => env('DB_TEST_PORT', 3306),'database' => env('DB_TEST_DATABASE', 'forge'),'username' => env('DB_TEST_USERNAME', 'forge'),'password' => env('DB_TEST_PASSWORD', ''),'charset' => env('DB_CHARSET', 'utf8'),'collation' => env('DB_COLLATION', 'utf8_unicode_ci'),'prefix' => env('DB_PREFIX', ''),'timezone' => env('DB_TIMEZONE', '+00:00'),'strict' => env('DB_STRICT_MODE', false),],
- 在項目中調用時,直接按database.php中的做法初始化connection就行,如下:
$query = app('db')->connection("mysql_test")->select("...");
?
總結
以上是生活随笔為你收集整理的Lumen框架多数据库连接配置方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mysql悲观锁以及乐观锁案例说明
- 下一篇: MySql数据库Update批量更新与批