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
您可能感兴趣
- mysql云数据库数据恢复(MySQL 利用frm文件和ibd文件恢复表数据)
- 阿里云sql server 2012(远程连接阿里云SqlServer 2012 数据库服务器的图文教程)
- laravel 数据库实现原理(laravel 数据迁移与 Eloquent ORM的实现方法)
- SQL Server数据库应用中有用的几个工具
- xampp安装后还用配置吗(如何用xampp建立数据库)
- activiti需要sql语句吗(Activiti-Explorer使用sql server数据库实现方法)
- zabbix怎么监控数据库(使用zabbix监控oracle表空间的操作流程)
- 常见的数据库及数据库相关技术
- mysql恢复数据库(MySQL 两种恢复数据的方法)
- django数据库查询条件(djang常用查询SQL语句的使用代码)
- 用mysql编写test数据库(MySQL制作具有千万条测试数据的测试库的方法)
- navicat怎么和mysql连接(Navicat Premium远程连接MySQL数据库的方法)
- druid数据库连接池原理详解(阿里巴巴Druid,轻松实现MySQL数据库加密!)
- dedecms栏目怎么调用友情链(DedeCms用SQL语句调用数据库任意内容方法)
- netcore连什么数据库好(.Net Core导入千万级数据至Mysql的步骤)
- phpstudymysql数据库启动不了(phpstudy mysql启动不了的解决方法)
- 电影《民间怪谈录之走阴人》定档8月5日,开启一场中式惊悚之旅(电影民间怪谈录之走阴人定档8月5日)
- 原创图画书,以儿童视角讲述中国故事(以儿童视角讲述中国故事)
- 八月再见 愿你岁月不扰,余生静好(八月再见愿你岁月不扰)
- 赏读 八月再见,九月你好(赏读八月再见九月你好)
- 散文 八月再见,九月,我在风中等你(散文八月再见九月)
- 8月再见 9月你好(8月再见)
热门推荐
- Web开发中的几个建议
- sqlserver改表结构不允许(SQL Server阻止保存修改表结构的解决方法)
- 宝塔主机怎样设置404页面(宝塔面板自定义404错误页面的设置方法)
- mysql8.0.12安装教程图解(mysql 8.0.22 zip压缩包版免安装下载、安装配置步骤详解)
- dedecms图集栏目(Dedecms图集上传zip压缩包解压图片顺序不对问题的解决方法)
- canvas3d效果(JavaScript canvas实现七彩太阳光晕效果)
- linux中nfs中文全称(Linux NFS机制工作原理及实例解析)
- 运维堡垒机怎么搭建(堡塔云控平台添加服务器受控端图文教程)
- mysql索引原理和优化(Mysql 索引该如何设计与优化)
- h5 video支持格式(H5 video poster属性设置视频封面的方法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9