laravel数据库配置(Laravel如何同时连接多个数据库详解)
类别:编程学习 浏览量:529
时间:2021-10-30 10:57:40 laravel数据库配置
Laravel如何同时连接多个数据库详解前言
上文说到thinkphp3.2同时连接两个数据库的文章,然后在总结下laravel同时连接
多个数据库的实例,方便新手学习,db连接以及model连接。
配置.env 文件
|
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=database_name DB_USERNAME=root DB_PASSWORD=root DB_HOST_TEST=127.0.0.1 DB_PORT_TEST=3306 DB_DATABASE_TEST=database_test DB_USERNAME_TEST=root DB_PASSWORD_TEST=root |
配置 config/database.php
|
// 默认连接mysql 'default' => env( 'DB_CONNECTION' , 'mysql' ), 'connections' => [ 'sqlite' => [ 'driver' => 'sqlite' , 'database' => database_path( 'database.sqlite' ), 'prefix' => '' , ], 'mysql' => [ 'driver' => 'mysql' , 'host' => env( 'DB_HOST' , '127.0.0.1' ), 'port' => env( 'DB_PORT' , '3306' ), 'database' => env( 'DB_DATABASE' , 'database_name' ), 'username' => env( 'DB_USERNAME' , 'root' ), 'password' => env( 'DB_PASSWORD' , 'root' ), 'charset' => 'utf8' , 'collation' => 'utf8_unicode_ci' , 'prefix' => '' , 'strict' => false, ], 'mysql_test' => [ 'driver' => 'mysql' , 'host' => env( 'DB_HOST_TEST' , '127.0.0.1' ), 'port' => env( 'DB_PORT_TEST' , '3306' ), 'database' => env( 'DB_DATABASE_TEST' , 'database_test' ), 'username' => env( 'DB_USERNAME_TEST' , 'root' ), 'password' => env( 'DB_PASSWORD_TEST' , 'root' ), 'charset' => 'utf8' , 'collation' => 'utf8_unicode_ci' , 'prefix' => '' , 'strict' => false, ], ], |
model实例(这个model将使用mysql_test连接)
|
<?php namespace App\Model; use Illuminate\Database\Eloquent\Model; class Test extends Model { // 数据库'database_test'中的test表 public $table = 'test' ; public $timestamps = false; protected $connection = 'mysql_test' ; } |
model实例(这个model将采用默认的'mysql'连接)
|
<?php namespace App\Model; use Illuminate\Database\Eloquent\Model; class Test extends Model { // 数据库'database'中的test表 public $table = 'test' ; public $timestamps = false; // 以下代码可有可不、默认连接mysql protected $connection = 'mysql' ; } a、这个model将采用默认的 'mysql' 连接 class UserModel extends Model { // 数据库'database'中的users表 protected $table = "users" ; } b、 |
调用model实例
|
// 以下是调用方法 Test::get(); Test::where( 'id' ,1)->first(); |
DB直接连接数据库
|
// 连接mysql_test库 DB::connection( 'mysql_test' )->table( 'test' )->where( 'id' ,1)->first(); // 连接mysql库 DB::connection( 'mysq' )->table( 'test' )->where( 'id' ,1)->first(); // 连接mysql库 DB::table( 'test' )->where( 'id' ,1)->first(); |
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对开心学习网的支持。
原文链接:https://juejin.im/post/5d424833518825221b4cbdd2
您可能感兴趣
- sql数据库有几种数据类型(SQL的常用数据类型列表详解)
- sqlserver数据库技术及应用教程(SQLServer2019 数据库的基本使用之图形化界面操作的实现)
- druid数据库连接池原理详解(阿里巴巴Druid,轻松实现MySQL数据库加密!)
- dedecms数据库备份(dedecms网站搬家需要的备份的文件)
- 阿里云数据库高可用方案(阿里云服务器ECS安装MariaDB后无法远程连接数据库的解决方法)
- 数据库备份时需要注意的事情
- 织梦源码安装数据库怎么填(Mysql修改端口号 织梦DedeCMS设置教程)
- mysql利用数据库日志恢复数据(MySQL通过binlog恢复数据)
- django操作数据库(详解django+django-celery+celery的整合实战)
- idea关联mysql数据库(IDEA无法连接mysql数据库的6种解决方法大全)
- php查询数据库给变量赋值(详解PHP变量传值赋值和引用赋值变量销毁)
- html5能取数据库吗(HTML5 客户端数据库简易使用:IndexedDB)
- mysql数据库下载安装步骤(MySQL数据库压缩版本安装与配置详细教程)
- phpstudymysql数据库启动不了(phpstudy mysql启动不了的解决方法)
- SQL Server免费版的安装以及使用SQL Server Management Studio(SSMS)连接数据库的图文方法(SQL Server免费版的安装以及使用SQL Server Management StudioSSMS连接数据库的图文方法)
- python操作json库(Python将json文件写入ES数据库的方法)
- 真牛 禹州将建成中等城市(禹州将建成中等城市)
- 被骂欺师灭祖,与郭德纲公开叫板,何云伟改名何沄伟,开始画画了(与郭德纲公开叫板)
- 相声转行影帝,被何晴抛弃,甩10年女友闪婚生子,刘威不靠谱情史(相声转行影帝被何晴抛弃)
- 岳云鹏不说相声,改行演员了 网友 快回来说相声(岳云鹏不说相声)
- 乔欣首演古装大女主,颜值演技双在线(乔欣首演古装大女主)
- 于正又推女性古装大剧 杨蓉乔欣演女配,两位女主成 重头戏(于正又推女性古装大剧)
热门推荐
- php array只能放一种类型的数据(浅谈PHP array_search 和 in_array 函数效率问题)
- 查看SQL SERVER指定数据库中所有的触发器
- laravel关联模型字段冲突(浅谈laravel中的关联查询with的问题)
- centos中安装sql图(CentOS 7.3上SQL Server vNext CTP 1.2安装教程)
- css媒体查询常见的媒体类型(css基于媒体查询和 rem 的响应式布局实践)
- docker下怎么搭建一个php环境(Docker搭建php环境教程详解)
- dedecms后台账号(dedecms批量删除会员的SQL命令)
- docker多个端口怎么分(Docker多个容器不能有相同端口号的处理方案)
- linux双网卡热备配置超详细(linux 使用bond实现双网卡绑定单个IP的示例代码)
- sqlserver 高级查询(利用 SQL Server 过滤索引提高查询语句的性能分析)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9