首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Laravel 数据库连接配置和读写分离

DB_DATABASE=homestead DB_USERNAME=homestead DB_PASSWORD=secret 我们平时修改数据库连接信息的话修改这里就好了,默认配置值是针对 Homestead 开发环境配置的...,如果你使用的是 Homestead 作为开发环境的话,开箱即用,不用做任何修改,如果不是的话则需要根据自己的环境做修改,比如学院君使用的是 Laradock,配置信息如下(数据库名称、用户名、密码以自己的环境为准...=root 做好以上配置后,你就可以在 Laravel 项目中连接上 MySQL 数据库了。...默认情况下,我们在通过 Laravel 提供的数据库工具(DB 门面、查询构建器、Eloquent模型)连接数据库的时候,都没有显式指定连接,因为我们在配置文件中指定了默认的连接 mysql。...读写分离本地模拟测试 我们可以在本地简单模拟测试下读写分离配置,我们使用同一个数据库主机,不同的数据库来进行读写分离,在数据库中创建一个新的数据库用作写数据库,并将其配置到 config/database.php

5.5K20

如何在Ubuntu 16.04上使用Deployer自动部署Laravel应用程序

为此,您将准备将从中部署代码的本地开发环境,然后使用Nginx和MySQL数据库配置生产服务器为该应用程序提供服务。...安装在本地计算机上的Composer和Git。 第1步 - 设置本地开发环境 由于您将从本地计算机创建和部署应用程序,因此首先要配置本地开发环境。...这比基于密码的身份验证更安全,让您避免在每次部署之前键入密码。 在本地计算机上运行以下命令以生成SSH密钥。请注意,-f指定密钥文件的文件名,您可以用自己的文件名替换gitkey。...该shared目录包含.env配置文件和storage将与每个版本进行符号链接的目录。 但是,该应用程序将无法正常工作,因为该.env文件为空。...要检查此配置是否正常,请再次部署该应用程序。在本地计算机上运行以下命令: $ dep deploy 现在,您的应用程序将正常工作。

15.6K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何在Ubuntu 14.04上使用Ansible部署高级PHP应用程序

    没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后再购买服务器。) Ansible CVM的SSH密钥授权在PHP部署CVM上登录。...由于默认的Laravel安装不需要我们将在本教程中设置的高级功能,因此我们将现有存储库从标准存储库切换到添加了一些调试代码的示例存储库,只是为了显示何时工作正常。...配置只需要知道密钥的位置,使用查找,以及需要安装密钥的用户(www-data在我们的例子中)。...默认情况下,Laravel的.env文件包含以下行: DB_HOST=localhost DB_DATABASE=homestead DB_USERNAME=homestead DB_PASSWORD=...我们现在有一个工作示例Laravel应用程序,其中包括正常运行的cron作业和队列工作程序。 结论 本教程介绍了使用Ansible部署PHP应用程序时的一些更高级的主题。

    10.7K60

    基于 Pusher 驱动的 Laravel 事件广播(上)

    本文主要介绍使用Pusher包来开发带有实时通信功能的Laravel APP,整个教程只需要两个小时就能顺利走一遍。同时,作者会将开发过程中的一些截图和代码黏上去,提高阅读效率。 1....认证密钥 在项目根目录的.env文件中加入密钥,把刚刚获得的密钥换成你自己的就行,.env文件是Laravel项目配置文件: PUSHER_APP_ID=YOUR_APP_ID PUSHER_KEY=YOUR_APP_KEY...; }); 作者在MAMP PRO环境中,Apache端口是8888,在浏览器中输入http://laravelpusher.app:8888/bridge路由,正确返回This is a Laravel...作者在个人环境中,输入http://laravelpusher.app:8888/bridge,在storage/logs/laravel.log中会出现类似如下的调试信息,可以先清空下laravel.log...2.8 使用Pusher JavaScript包 好,既然服务端可以工作正常了,那现在开始研究下客户端来接收事件触发时服务端发送来的数据。

    3K31

    【Laravel系列2.2】Laravel 目录结构与配置

    Laravel 目录结构与配置 Laravel 的目录结构相对来说在初始状态下会更丰富一些,除了传统的控制器之外,也帮我们准备好了脚本、中间件之类的代码文件的目录,基本上是可以达到上手直接使用的。...在这些目录中,我们再重点看一下 app 目录中包含的内容。 app 目录是我们应用开发中使用最多的目录。我们应用的控制器、模型、中间件之类的内容都在这个目录中。...其实从这些配置文件的名字就可以看出它们的作用。在接下来的文章中我们马上就要接触到的就是 database.php 这个文件,因为在入门相关的内容中,我们还是要简单地连下数据库体验一下的。...在这里,我们就可以配置当前环境下的数据库连接信息。...在正式环境或者测试环境都是手动地或者通过配置中心来进行配置。这样的话,我们就不需要修改源代码,只需要使用不同的这个 .env 配置文件就可以实现不同的环境下运行相同的代码了。

    4.4K30

    RuntimeException: Unable to boot ApiServiceProvider, configure an API domain or prefix 解决办法和原因所在

    safe_mode_allowed_env_vars 包含了一个以逗号分隔的前缀列表。 在安全模式下,用户可以仅能修改用该指令设定的前缀名称的指令。...env('API_VERSION'); }); 当然要在.env文件中加入对应配置 API_VERSION=v1 ok,准备工作结束,接下来开始演示: 首先在我本地环境演示(nts),访问这个路由,在sleep...正常等待5s结果: 在第一次请求没有结束之前立刻再次请求的结果: ok,这就是为什么在学妹本地环境中访问我的接口,会报错的原因,就是因为他ts版本的php没有找到env对应的值。...解决办法 了解了原因,解决办法多做多样,这里我只说明一下我(laravel)开发的解决办法。...2 虽然getenv()不行了,但是 _ENV和 _SERVER还是可以正常使用的。

    55330

    LaravelLumen 使用 redis队列

    一、概述 在Web开发中,我们经常会遇到需要批量处理任务的场景,比如群发邮件、秒杀资格获取等,我们将这些耗时或者高并发的操作放到队列中异步执行可以有效缓解系统压力、提高系统响应速度和负载能力。...二、配置文件 我们仍然从配置文件开始,首先我们需要在配置文件中配置默认队列驱动为Redis。lumen没有配置文件,可以从laravel项目中拷贝一份config目录过来。...例如,使用 funnel 方法你可以给定类型任务一次只能由一个工作进程进行处理: Redis::funnel('key')->limit(1)->then(function () { // Job...Forge,它会为 Laravel 项目自动安装并配置 Supervisor。.../下创建conf.d文件夹,在其中添加类似ubuntu中配置文件。

    2.4K20

    【腾讯云TDSQL-C Serverless 产品体验】新时代数据库大杀器

    TDSQL-C中,确实能够完全兼容MySQL协议,然后在不写入和读取数据的情况下,系统自动停止了数据库服务,而一旦有数据访问,系统又能在毫秒级自动对数据库实例进行扩容,既保证应用响应速度,也验证了 serverless...1.3、搭建LightCms我们要使用的是 laravel 开发框架构建的LightCms,这里我采用8.x版本,仓库地址如下:https://github.com/eddy8/LightCMS.gitgit...这给我们带来很多管理上的工作量。但是TDSQL-C Serverless版不一样,它支持自动启停功能。这个怎么理解呢? 我们只需要正常使用数据库完成读写操作,它内部就能自动感知访问量的高低。...' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'),...> env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password

    25820

    基于 Pusher 驱动的 Laravel 事件广播(下)

    这不仅可以熟悉数据的发生行为,还可以当处理事件数据时解耦客户端逻辑。...在项目根目录安装laravel/socialite包: composer require laravel/socialite 获取github密钥 登录github 进入Setting->OAuth...作者在B页面访问的时候会收到Pusher发给B页面的访问记录后,为了不让Pusher数据发过来可以添加socket_id,上文已有论述: new-status-update:同理,输入路由http:/.../laravelpusher.app:8888/activities后在输入框内填写文本,如在B页面填写'Laravel is great!!!'...好,现在自己与自己开始聊天,打开两个页面,作者的环境里路由为http://laravelpusher.app:8888/chat(这里输入你自己的路由就行): 总结:本部分主要以三个小示例来说明Laravel

    2.8K31

    一个人如何完成一家创业公司的技术架构?

    我不能在没有大量的开源软件和管理服务的情况下做到这一点。我觉得自己就是站在巨人的肩膀上,他们在我之前做过那么多艰苦的工作,我非常感谢他们。...然而,大多数端点只是在集群中使用 Redis 来缓存。其速度仍然很快,并且缓存的数据可以被所有的 Django 实例共享,即使在重新部署之后,当内存中的缓存被删除时,这些数据可以可以被共享。...即使容器在自动缩放期间跨节点移动, Kubernetes 也会自动使 DNS 记录与正常 pod 保持同步。这个背后的工作方式很有趣,但是超出了本文的讨论范围。...cProfile 和 snakeviz 是很好的工具,可以在本地对 Python 代码进行配置文件。...在本地机器上,我还使用 Django Debug Toolbar 轻松地检查视图触发的查询,在开发期间预览发送的电子邮件,以及其他一些好处。 ?

    1.1K40

    黑客扫描全网 Git 配置文件并窃取大量云凭据

    为方便起见,开发人员可能会将这些密钥包含在私有存储库中,从而使数据传输和 API 交互更加容易,而无需每次都配置或执行身份验证。只要存储库与公共访问适当隔离,这就不会有风险。...扫描只是检查 Laravel 应用程序中的 /.git/config 文件和环境文件 (.env) 是否暴露,其中也可能包含 API 密钥和云凭据。...EmeraldWhale 攻击链对于 Laravel,Multigrabber v8.5 工具用于检查 .env 文件的域,然后根据其可用性潜力对信息进行分类。...研究人员指出,这项活动并不是特别复杂,依赖于成熟工具和自动化,但仍然窃取了数千个可能导致灾难性数据泄露的密钥。...软件开发人员可以通过使用专用的密钥管理工具来存储其密钥,并使用环境变量在运行时配置敏感设置,而不是在 Git 配置文件中对其进行硬编码,从而降低风险。

    9610

    Laravel之队列「建议收藏」

    在该文件中你将会找到框架自带的每一个队列驱动的连接配置,包括数据库、Beanstalkd、 IronMQ、 Amazon SQS、 Redis 以及同步(本地使用)驱动。...默认是sync,即同步的,直接处理,无队列.要将其修改为对应的类型,如database,redis等 laravel学院文档地址 使用redis为例: 1,在config/queue.php return...你可以使用 Artisan CLI 生成新的队列任务: php artisan make:job SendReminderEmail --queued //--queued告诉 Laravel 该任务应该被推送到队列而不是同步运行...,可以创建多个配置文件指示 Supervisor 如何监视进程,例如,让我们创建一个开启并监视queue:work 进程的laravel-worker.conf 文件: [program:laravel-worker...2.如果修改了代码,在后台队列中是无效的,必须重启队列 php artisan queue:restart 这个命令依赖于缓存系统重启进度表,默认情况下,APC 在 CLI 任务中无法正常工作,如果你在使用

    1.8K10

    Laravel项目的性能优化

    众所周知Laravel框架的功能很强大,它里面的东西也很多,即便如此它仍然是一个优秀的框架,但在生产环境下要做好优化提升网站的打开速度。...设想一下这种场景:每次你发送一个请求到 App 中,Laravel 都需要去加载不同的配置文件,并且要去打开*.env* 文件读取其中的内容。这种方式性能低下,是不?...php artisan config:cache 你在部署之后可以使用它。和路由差不多,别忘了编辑东西的时候清理一下缓存。...在本地开发环境和小项目中它没啥问题,但是项目增长时,就显得不够用了。 所以,考虑下换个更好的驱动例如 Redis。 Laravel 有内置支持它的方式,而你要做的就是 安装 Predis。...我的建议是学会如何使用事件和队列,可以将发送邮件任务交给专门的流程,以致于改善用户使用体验。 我上篇文章专门讲了laravel队列的使用,有兴趣的可以去看一下Laravel队列的使用。

    3.8K30

    Laravel 4 小技巧两则

    Route::controller 路由命名: 用 Route::controller 可以减少路由定制中的大量工作,但是有时候需要对某个特定的路由命名以便使用,但是 Route::controller...根据系统变量判断当前运行环境 系统默认的判断是否本地环境的方法是根据在 'local' 数组中指定一组作为本地环境的主机名,比如在办公机、Macbook上都要做开发,你就要把两个主机名都写进去,我觉得这样很麻烦...改成了根据 $_SERVER['LARAVEL_ENV'] 来判断,这样我可以在所有开发机中都定义 'LARAVEL_ENV' 的环境变量,值为 'local',于是在开发机就会自动识别为 'local...// 默认的写法是根据主机名判断是否本地环境 $env = $app->detectEnvironment(array( 'local' => array('homestead'); ));...$_SERVER['LARAVEL_ENV'] 的值 // 在 Apache 中,可以用 SetEnv 设置, // 在 Nginx 中,可以用 fastcgi_param 设置

    1.1K50

    【Laravel系列4.5】主从库配置和语法生成

    但是你要知道的是,Laravel 以及现代化的所有框架都是可以方便地配置主从分离的。另外,我们还要再回去 查询构造器 中,看一下我们的原生 SQL 语句的拼装语法到底是如何生成的。...', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''),...如果不记得的小伙伴可以回去看一下 【Laravel系列4.2】查询构造器https://mp.weixin.qq.com/s/vUImsLTpEtELgdCTWI6k2A 。...这一个循环是在干嘛?其实,从代码中我们可以看,它在遍历一个本地属性 selectComponents ,并根据这个属性里面的内容去调用自身的这些方法。...当然,更复杂的东西其实还是在构造器中,毕竟在语法生成这里其实是已经到了最后的拼装阶段了。有兴趣的同学可以多深入研究一下 Builder 对象中关于上述功能的方法实现。

    4.3K20

    为什么 Laravel 这么优秀?

    如你可以通过: php artisan serv 启动本地开发环境 php artisan tinker Local Playground php artisan migrate 执行数据库迁移等 和其他框架类似...这篇文章不会包含所有的代码,但你仍然可以通过这个仓库 godruoyi/laravel-best-practice 的提交记录看到我是如何一一步构建起来的。...你可以在开发阶段在 .env 文件中将你的缓存驱动改为本地磁盘,将你的队列驱动改为本地同步队列;当你完成所有开发后,只需要在 staging/prod 环境修改 .env 的值就可以了,你几乎不需要做什么额外的工作...Laravel 官方还推出了 Laravel Sail、Laravel Herd 还有更早之前推出现在被弃用的 Laravel Homestead 等本地开发环境工具;而部署工具 Laravel 推出了...Laravel Forge、Laravel Vapor 还有 Laravel Envoyer;如果你作为一个 Laravel 新人你知道用什么搭建本地开发环境吗?

    26710
    领券