laravel konfiguraciju za korištenje više baza podataka u vašem projektu
Obično projekt razvoja softvera uključuje korištenje baze podataka za pohranjivanje podataka na strukturiran način.
Za specifične projekte može biti potrebno koristiti više baza podataka.
Sa Laravel-om, da bismo koristili više baza podataka, moramo konfigurirati okvir, a posebno konfiguracijsku datoteku veza.
Vediamo ora la configurazione laravel per connessioni a più DataBase.
4 minute
La configurazione laravel di base, prevede la connessione a un database di default, ma in questo articolo possiamo vedere come configurare connessioni multiple a database. Eloquent continua a funzionare sempre
fajl database.php
in config
imenik
Ova datoteka se nalazi u direktoriju config
della tua applicazione Laravel.
U fajlu database.php
è possibile definire più connessioni a un DB. Ogni connessione deve essere definita come un array. L’array dovrebbe contenere le seguenti informazioni:
driver
: drajver baze podataka koji treba koristiti;host
: imehost
ili adresuIP
servera baze podataka;port
: broj porta servera baze podataka;database
: ime baze podataka;username
: korisničko ime za povezivanje na bazu podataka;password
: lozinka za povezivanje na bazu podataka;
Ad esempio, il codice seguente definisce due connessioni al DB, una per MySQL e una per 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',
],
Kako se povezati na DB
Dopo aver definito le connessioni al database, puoi utilizzarle nel tuo codice Laravel
, takođe sa Elokventan. Da biste to učinili, možete koristiti facade
baze podataka. Tamo facade
baza podataka pruža objedinjeni interfejs za interakciju sa bazama podataka.
Za prebacivanje između veza baze podataka, možete koristiti metodu Connection()
della facade
Baze podataka. Metoda Connection()
uzima ime veze baze podataka kao argument.
Ad esempio, il codice seguente passa dal DB mysql al DB pgsql:
use Illuminate\Support\Facades\DB;
DB::connection('pgsql');
Nakon što se prebacite na vezu s bazom podataka, možete je koristiti za upite i interakciju s bazom podataka.
Vantaggi dell’utilizzo di più database connessioni in Laravel
Postoje brojne prednosti korištenja više baza podataka u Laravelu, uključujući:
- Migliori prestazioni: l’utilizzo di più database può migliorare le prestazioni dell’applicazione separando dati di tipo diverso. Ad esempio, potresti archiviare i dati utente in un database e i dati di prodotto in un altro database.
- Veća sigurnost: l’utilizzo di più database può migliorare la sicurezza dell’applicazione separando dati di tipo diverso. Ad esempio, potresti archiviare dati sensibili in un database e dati meno sensibili in un altro database.
- Maggiore scalabilità: l’utilizzo di più database può rendere la tua applicazione più scalabile consentendoti di distribuire i tuoi dati su più server.
Najbolje prakse za korištenje više baza podataka u Laravelu
Evo nekoliko najboljih praksi za korištenje više baza podataka u Laravelu:
- Uses nomi descrittivi per le connessioni al database: ciò renderà più semplice identificare e gestire le connessioni al database.
- Koristite metodu
Connection()
ići od jednog DB drugome - to će vam pomoći da izbjegnete slučajno trčanje upit sul baza podataka pogrešno. - Koristite sistem za migraciju baze podataka da upravljate svojim šemama baze podataka – to će vam pomoći da održite svoje šeme baze podataka sinhronizovanim u svim vašim baza podataka.
zaključak
Upotreba više baza podataka u Laravelu može biti odličan način za poboljšanje performansi, sigurnosti i skalabilnosti vaše aplikacije. Prateći najbolje prakse opisane u ovom članku, možete efikasno koristiti više baza podataka u Laravelu.