Geschatte leestijd: 4 minuti
database.php
in config
directoryDit bestand bevindt zich in de directory config
van uw Laravel-applicatie.
In het bestand database.php
è possibile defimaak meerdere databaseverbindingen tot stand. Elke verbinding moet dat zijn defisamengevoegd als een array. De array moet de volgende informatie bevatten:
driver
: het te gebruiken databasestuurprogramma;host
: de naam host
of het adres IP
van de databaseserver;port
: het poortnummer van de databaseserver;database
: de databasenaam;username
: de gebruikersnaam om verbinding te maken met de database;password
: het wachtwoord om verbinding te maken met de database;Bijvoorbeeld de volgende code defiEr zijn twee databaseverbindingen, één voor MySQL en één voor PostgreSQL:
'connections' => [
'sqlite' => [
'driver' => 'sqlite',
'url' => env('DATABASE_URL'),
'database' => env('DB_DATABASE', database_path('database.sqlite')),
'prefix' => '',
'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true),
],
'mysql' => [
'driver' => 'mysql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
]) : [],
],
'pgsql' => [
'driver' => 'pgsql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '5432'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'prefix' => '',
'prefix_indexes' => true,
'schema' => 'public',
'sslmode' => 'prefer',
],
Na defiZodra u databaseverbindingen heeft, kunt u deze in uw code gebruiken Laravel
. Om dit te doen, kunt u gebruik maken van de facade
van de databank. Daar facade
database biedt een uniforme interface voor interactie met databases.
Om te schakelen tussen databaseverbindingen kunt u de methode gebruiken Connection()
van facade
Databases. De methode Connection()
neemt de naam van de databaseverbinding als argument.
De volgende code gaat bijvoorbeeld van de mysql DB naar de pgsql DB:
use Illuminate\Support\Facades\DB;
DB::connection('pgsql');
Zodra u overschakelt naar een databaseverbinding, kunt u deze gebruiken voor het opvragen van en communiceren met de database.
Er zijn talloze voordelen verbonden aan het gebruik van meerdere databases in Laravel, waaronder:
Hier zijn enkele best practices voor het gebruik van meerdere databases in Laravel:
Connection()
om van één te gaan DB naar een andere - dit zal u helpen voorkomen dat u per ongeluk gaat rennen vraag op databank fout.Het gebruik van meerdere databases in Laravel kan een geweldige manier zijn om de prestaties, beveiliging en schaalbaarheid van uw applicatie te verbeteren. Door de best practices te volgen die in dit artikel worden beschreven, kunt u meerdere databases in Laravel effectief gebruiken.
Ercole Palmeri
Miljoenen mensen betalen voor streamingdiensten en betalen maandelijkse abonnementskosten. De algemene mening is dat je…
Coveware by Veeam zal responsdiensten op het gebied van cyberafpersingsincidenten blijven leveren. Coveware zal forensische en herstelmogelijkheden bieden...
Voorspellend onderhoud zorgt voor een revolutie in de olie- en gassector, met een innovatieve en proactieve benadering van fabrieksbeheer.…
De Britse CMA heeft een waarschuwing afgegeven over het gedrag van Big Tech op de markt voor kunstmatige intelligentie. Daar…