Scaling Without Stress: Mastering Databases in Laravel Vapor
Overview of Serverless Data Management
Modern applications live and die by their data layer. In the serverless world of , database management moves away from manual server patching and toward a streamlined, dashboard-driven experience. Understanding how to provision these resources ensures your application remains performant while keeping infrastructure costs predictable.
Prerequisites and Toolkit
To follow this guide, you should be comfortable with the framework and basic terminal usage. You will need a Vapor account and a configured AWS account linked to your project. Essential tools include:
- Laravel Vapor UI/CLI: For provisioning and scaling.
- MySQL/PostgreSQL: The supported relational engines.
- Vapor YAML: For environment configuration.
Engine Selection and Server Specs
When creating a database via the Vapor UI, your first major decision is the engine type. Vapor supports and in two primary flavors: Fixed Size and Serverless. Choose Fixed Size if your workload is steady and predictable. Opt for Serverless if your app experiences erratic spikes followed by long periods of inactivity. Start with modest server specs; you can always scale up later if your metrics show high CPU utilization or low free disk space.
Connecting the Infrastructure
Once the database is ready, you must link it to your environment via the vapor.yml file. This tells Vapor which resources to inject into your serverless functions.
id: 1
name: my-app
environments:
staging:
database: my-database-name
deploy:
- php artisan migrate --force
By adding the php artisan migrate command to your deploy hooks, you ensure your schema stays synchronized with your code every time you run vapor deploy staging.
Privacy and Performance Trade-offs
Choosing between a public or private database is a financial decision as much as a security one. Making a database private forces Vapor to attach a NAT Gateway to your network, which incurs a monthly cost of approximately $32. Unless your compliance requirements mandate a private network, a public database (secured by strong credentials) is the most cost-effective path for most developers.
Syntax and Scaling Notes
- Backup Retention: Set this window in days. Vapor allows point-in-time restores down to the second within this window.
- Storage Encryption: While safer, it can introduce minor performance penalties.
- Maintenance Mode: Always enable maintenance mode before scaling, as vertical scaling results in temporary downtime.
- 25%· products
- 25%· products
- 25%· products
- 25%· products

Learn Laravel Vapor #16: Databases
WatchLaravel // 8:08
The official YouTube channel of Laravel, the clean stack for Artisans and agents. We will update you on what's new in the world of Laravel, from the framework to our products Cloud, Forge, and Nightwatch.