Artikulo

Paano i-configure ang Laravel upang gumamit ng maramihang mga database sa iyong Proyekto

Karaniwan ang isang software development project ay nagsasangkot ng paggamit ng isang Database para sa pag-iimbak ng data sa isang structured na paraan.

Para sa mga partikular na proyekto, maaaring kailanganin na gumamit ng maramihang mga database.

Sa Laravel, para gumamit ng maraming database, kailangan nating i-configure ang balangkas at partikular ang configuration file ng mga koneksyon.

Tingnan natin kung paano i-configure ang Laravel upang gumamit ng maramihang mga database.

Tinatayang oras ng pagbabasa: 4 minuto

talaksan database.php in config direktoryo

Ang file na ito ay matatagpuan sa direktoryo config ng iyong Laravel application.

Sa file database.php posible definish maramihang mga koneksyon sa database. Ang bawat koneksyon ay dapat definited bilang isang array. Ang array ay dapat maglaman ng sumusunod na impormasyon:

  • driver: ang database driver na gagamitin;
  • host: ang pangalan host o ang address IP ng database server;
  • port: ang database server port number;
  • database: ang pangalan ng database;
  • username: ang username para sa pagkonekta sa database;
  • password: ang password para sa pagkonekta sa database;

Halimbawa, ang sumusunod na code defiMayroong dalawang koneksyon sa database, isa para sa MySQL at isa para sa 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',
        ],

Paano kumonekta sa DB

Pagkatapos defiKapag mayroon kang mga koneksyon sa database, magagamit mo ang mga ito sa iyong code Laravel. Upang gawin ito, maaari mong gamitin ang facade ng database. doon facade database ay nagbibigay ng isang pinag-isang interface para sa pakikipag-ugnayan sa mga database.

Upang lumipat sa pagitan ng mga koneksyon sa database, maaari mong gamitin ang pamamaraan Connection() ng facade Mga database. Ang paraan Connection() kinukuha ang pangalan ng koneksyon sa database bilang argumento.

Halimbawa, ang sumusunod na code ay napupunta mula sa mysql DB patungo sa pgsql DB:

newsletter ng pagbabago
Huwag palampasin ang pinakamahalagang balita sa pagbabago. Mag-sign up upang matanggap ang mga ito sa pamamagitan ng email.
use Illuminate\Support\Facades\DB;

DB::connection('pgsql');

Sa sandaling lumipat ka sa isang koneksyon sa database, magagamit mo ito upang mag-query at makipag-ugnayan sa database.

Mga benepisyo ng paggamit ng maramihang mga database sa Laravel

Mayroong maraming mga benepisyo sa paggamit ng maramihang mga database sa Laravel, kabilang ang:

  • Mas mahusay na pagganap: Ang paggamit ng maraming database ay maaaring mapabuti ang pagganap ng application sa pamamagitan ng paghihiwalay ng data ng iba't ibang uri. Halimbawa, maaari kang mag-imbak ng data ng user sa isang database at data ng produkto sa isa pang database.
  • Pinahusay na seguridad: Ang paggamit ng maraming database ay maaaring mapabuti ang seguridad ng application sa pamamagitan ng paghihiwalay ng data ng iba't ibang uri. Halimbawa, maaari kang mag-imbak ng sensitibong data sa isang database at hindi gaanong sensitibong data sa isa pang database.
  • Mas malaking scalability: Ang paggamit ng maraming database ay maaaring gawing mas scalable ang iyong application sa pamamagitan ng pagpapahintulot sa iyong ipamahagi ang iyong data sa maraming server.

Pinakamahuhusay na kagawian para sa paggamit ng maraming database sa Laravel

Narito ang ilang pinakamahusay na kasanayan para sa paggamit ng maramihang mga database sa Laravel:

  • Gumamit ng mga magiliw na pangalan para sa mga koneksyon sa database: Gagawin nitong mas madaling makilala at pamahalaan ang mga koneksyon sa database.
  • Gamitin ang paraan Connection() upang pumunta mula sa isa DB sa isa pa - makakatulong ito sa iyo na maiwasan ang aksidenteng pagtakbo tanong sa database mali.
  • Gumamit ng database migration system para pamahalaan ang iyong database schema – ito ay makakatulong sa iyong panatilihing naka-sync ang iyong database schema sa lahat ng iyong database.

konklusyon

Ang paggamit ng maraming database sa Laravel ay maaaring maging isang mahusay na paraan upang mapabuti ang pagganap, seguridad, at scalability ng iyong application. Sa pamamagitan ng pagsunod sa mga pinakamahusay na kagawian na inilarawan sa artikulong ito, maaari kang gumamit ng maraming database sa Laravel nang epektibo.

Mga Kaugnay na Pagbasa

Ercole Palmeri

newsletter ng pagbabago
Huwag palampasin ang pinakamahalagang balita sa pagbabago. Mag-sign up upang matanggap ang mga ito sa pamamagitan ng email.

Kamakailang Mga Artikulo

Mga Online na Pagbabayad: Narito Kung Paano Ka Binabayaran ng Mga Serbisyo ng Streaming Magpakailanman

Milyun-milyong tao ang nagbabayad para sa mga serbisyo ng streaming, na nagbabayad ng buwanang bayad sa subscription. Karaniwang opinyon na ikaw ay…

Abril 29 2024

Itinatampok ng Veeam ang pinakakomprehensibong suporta para sa ransomware, mula sa proteksyon hanggang sa pagtugon at pagbawi

Ang Coveware ng Veeam ay patuloy na magbibigay ng mga serbisyo sa pagtugon sa insidente ng cyber extortion. Mag-aalok ang Coveware ng mga kakayahan sa forensics at remediation...

Abril 23 2024

Green and Digital Revolution: Kung Paano Binabago ng Predictive Maintenance ang Industriya ng Langis at Gas

Binabago ng predictive maintenance ang sektor ng langis at gas, na may makabago at proactive na diskarte sa pamamahala ng halaman.…

Abril 22 2024

Itinaas ng UK antitrust regulator ang BigTech alarm sa GenAI

Ang UK CMA ay naglabas ng babala tungkol sa gawi ng Big Tech sa merkado ng artificial intelligence. doon…

Abril 18 2024