tovar

Ako nakonfigurovať Laravel na používanie viacerých databáz vo vašom projekte

Normálne projekt vývoja softvéru zahŕňa použitie databázy na ukladanie údajov štruktúrovaným spôsobom.

Pre špecifické projekty môže byť potrebné použiť viacero databáz.

V prípade Laravelu, aby sme mohli používať viacero databáz, musíme nakonfigurovať rámec a najmä konfiguračný súbor pripojení.

Pozrime sa, ako nakonfigurovať Laravel na používanie viacerých databáz.

Odhadovaný čas čítania: 4 minúty

rezeň database.php in config adresár

Tento súbor sa nachádza v adresári config vašej aplikácie Laravel.

V súbore database.php je možné definish viac databázových pripojení. Každé spojenie musí byť definited ako pole. Pole by malo obsahovať nasledujúce informácie:

  • driver: ovládač databázy, ktorý sa má použiť;
  • host: názov host alebo adresu IP databázového servera;
  • port: číslo portu databázového servera;
  • database: názov databázy;
  • username: používateľské meno pre pripojenie k databáze;
  • password: heslo pre pripojenie k databáze;

Napríklad nasledujúci kód defiExistujú dve databázové pripojenia, jedno pre MySQL a druhé pre 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',
        ],

Ako sa pripojiť k DB

Po defiAkonáhle máte databázové pripojenia, môžete ich použiť vo svojom kóde Laravel. Ak to chcete urobiť, môžete použiť facade databázy. Tam facade databáza poskytuje jednotné rozhranie na interakciu s databázami.

Na prepínanie medzi databázovými pripojeniami môžete použiť metódu Connection() z facade databázy. Metóda Connection() berie ako argument názov databázového pripojenia.

Napríklad nasledujúci kód prechádza z databázy mysql do databázy pgsql:

Inovačný bulletin
Nenechajte si ujsť najdôležitejšie novinky o inováciách. Prihláste sa na ich odber e-mailom.
use Illuminate\Support\Facades\DB;

DB::connection('pgsql');

Keď prepnete na pripojenie k databáze, môžete ho použiť na dotazovanie a interakciu s databázou.

Výhody používania viacerých databáz v Laravel

Používanie viacerých databáz v Laravel má množstvo výhod, vrátane:

  • Lepší výkon: Používanie viacerých databáz môže zlepšiť výkon aplikácie oddelením údajov rôznych typov. Môžete napríklad uložiť používateľské údaje do jednej databázy a údaje o produkte do inej databázy.
  • Zvýšená bezpečnosť: Používanie viacerých databáz môže zlepšiť bezpečnosť aplikácie oddelením údajov rôznych typov. Môžete napríklad uložiť citlivé údaje do jednej databázy a menej citlivé údaje do inej databázy.
  • Väčšia škálovateľnosť: Používanie viacerých databáz môže zvýšiť škálovateľnosť vašej aplikácie tým, že vám umožní distribuovať údaje na viacero serverov.

Osvedčené postupy na používanie viacerých databáz v Laravel

Tu je niekoľko osvedčených postupov na používanie viacerých databáz v Laravel:

  • Použite priateľské názvy pre databázové pripojenia: Uľahčí to identifikáciu a správu databázových pripojení.
  • Použite metódu Connection() ísť od jedného DB k inému - to vám pomôže vyhnúť sa náhodnému behu dotaz na databázy nesprávne.
  • Na správu schém databázy použite systém migrácie databázy – pomôže vám to synchronizovať schémy databázy vo všetkých databázy.

záver

Používanie viacerých databáz v Laravel môže byť skvelým spôsobom, ako zlepšiť výkon, bezpečnosť a škálovateľnosť vašej aplikácie. Dodržiavaním osvedčených postupov popísaných v tomto článku môžete efektívne využívať viacero databáz v Laravel.

Súvisiace čítania

Ercole Palmeri

Inovačný bulletin
Nenechajte si ujsť najdôležitejšie novinky o inováciách. Prihláste sa na ich odber e-mailom.

Nedávne články

Online platby: Takto budete vďaka streamovacím službám platiť navždy

Milióny ľudí platia za streamovacie služby a platia mesačné predplatné. Je bežný názor, že si…

Apríla 29 2024

Veeam ponúka najkomplexnejšiu podporu pre ransomvér, od ochrany až po reakciu a obnovu

Coveware od Veeam bude aj naďalej poskytovať služby reakcie na incidenty v oblasti kybernetického vydierania. Coveware ponúkne forenzné a sanačné schopnosti…

Apríla 23 2024

Zelená a digitálna revolúcia: Ako prediktívna údržba transformuje ropný a plynárenský priemysel

Prediktívna údržba prináša revolúciu v ropnom a plynárenskom sektore s inovatívnym a proaktívnym prístupom k riadeniu závodu.…

Apríla 22 2024

Britský protimonopolný regulátor vyvoláva poplach BigTech v súvislosti s GenAI

Britská CMA vydala varovanie pred správaním Big Tech na trhu s umelou inteligenciou. tam…

Apríla 18 2024