Database configuration in Laravel is easy. The hardest part is deciding which database to use. Three popular open-source databases are supported out of the box:
All of the database configuration options live in the application/config/db.php file. Let's get started.
SQLite is an awesome, zero-configuration database system. By default, Laravel is configured to use a SQLite database. Really, you don't have to change anything. Just drop a SQLite database named application.sqlite into the application/storage/db directory. You're done.
Of course, if you want to name your database something besides "application", you can modify the database option in the SQLite section of the application/config/db.php file:
'sqlite' => array(
'driver' => 'sqlite',
'database' => 'your_database_name',
)
If your application receives less than 100,000 hits per day, SQLite should be suitable for production use in your application. Otherwise, consider using MySQL or PostgreSQL.
Note: Need a good SQLite manager? Check out this Firefox extension.
If you are using MySQL or PostgreSQL, you will need to edit the configuration options in application/config/db.php. Don't worry. In the configuration file, sample configurations exist for both systems. All you need to do is change the options as necessary for your server and set the default connection name.
'mysql' => array(
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'database',
'username' => 'root',
'password' => 'password',
'charset' => 'utf8',
),
As you have probably noticed, each database connection defined in the application/config/db.php file has a name. By default, there are three connections defined: sqlite, mysql, and pgsql. You are free to change these connection names. The default connection can be specified via the default option:
'default' => 'sqlite';
The default connection will always be used by the fluent query builder and Eloquent ORM. If you need to change the default connection during a request, use the Config::set method.