Artikkelit

Kuinka määrittää Laravel käyttämään useita tietokantoja projektissasi

Yleensä ohjelmistokehitysprojekti sisältää tietokannan käytön tietojen tallentamiseen jäsennellyllä tavalla.

Tietyissä projekteissa voi olla tarpeen käyttää useita tietokantoja.

Laravelilla, jotta voimme käyttää useita tietokantoja, meidän on määritettävä kehys ja erityisesti yhteyksien määritystiedosto.

Katsotaanpa, kuinka Laravel määritetään käyttämään useita tietokantoja.

Arvioitu lukuaika: 4 minuti

filee database.php in config hakemisto

Tämä tiedosto sijaitsee hakemistossa config Laravel-sovelluksestasi.

Tiedostossa database.php on mahdollista defiuseita tietokantayhteyksiä. Jokaisen yhteyden on oltava definited taulukoksi. Taulukon tulee sisältää seuraavat tiedot:

  • driver: käytettävä tietokantaohjain;
  • host: nimi host tai osoite IP tietokantapalvelimesta;
  • port: tietokantapalvelimen portin numero;
  • database: tietokannan nimi;
  • username: käyttäjätunnus tietokantaan kytkeytymistä varten;
  • password: salasana tietokantaan yhdistämiseksi;

Esimerkiksi seuraava koodi defiTietokantayhteyksiä on kaksi, yksi MySQL:lle ja toinen PostgreSQL:lle:

'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',
        ],

Kuinka muodostaa yhteys DB:hen

Jälkeen defiKun sinulla on tietokantayhteydet, voit käyttää niitä koodissasi Laravel. Voit tehdä tämän käyttämällä facade tietokannasta. siellä facade tietokanta tarjoaa yhtenäisen käyttöliittymän tietokantojen vuorovaikutukseen.

Voit vaihtaa tietokantayhteyksien välillä käyttämällä menetelmää Connection() ja facade Tietokannat. Menetelmä Connection() ottaa tietokantayhteyden nimen argumenttina.

Esimerkiksi seuraava koodi siirtyy mysql DB:stä pgsql DB:hen:

Innovaatio-uutiskirje
Älä missaa tärkeimpiä innovaatioita koskevia uutisia. Rekisteröidy saadaksesi ne sähköpostitse.
use Illuminate\Support\Facades\DB;

DB::connection('pgsql');

Kun vaihdat tietokantayhteyteen, voit käyttää sitä kyselyjen tekemiseen ja vuorovaikutukseen tietokannan kanssa.

Useiden tietokantojen käytön edut Laravelissa

Useiden tietokantojen käyttämisessä Laravelissa on lukuisia etuja, mukaan lukien:

  • Parempi suorituskyky: Useiden tietokantojen käyttö voi parantaa sovellusten suorituskykyä erottamalla erityyppiset tiedot. Voit esimerkiksi tallentaa käyttäjätiedot yhteen tietokantaan ja tuotetiedot toiseen tietokantaan.
  • Parannettu suojaus: Useiden tietokantojen käyttö voi parantaa sovellusten turvallisuutta erottamalla erityyppiset tiedot. Voit esimerkiksi tallentaa arkaluontoisia tietoja yhteen tietokantaan ja vähemmän arkaluonteisia tietoja toiseen tietokantaan.
  • Parempi skaalautuvuus: Useiden tietokantojen käyttäminen voi tehdä sovelluksestasi skaalautuvamman, koska voit jakaa tietosi useille palvelimille.

Parhaat käytännöt useiden tietokantojen käyttöön Laravelissa

Tässä on joitain parhaita käytäntöjä useiden tietokantojen käyttämiseen Laravelissa:

  • Käytä ystävällisiä nimiä tietokantayhteyksille: Tämä helpottaa tietokantayhteyksien tunnistamista ja hallintaa.
  • Käytä menetelmää Connection() lähteä yhdestä DB toiseen - tämä auttaa sinua välttämään vahingossa juoksemisen kysymys etelä tietokanta väärä.
  • Käytä tietokannan siirtojärjestelmää tietokantaskeemojesi hallintaan – tämä auttaa sinua pitämään tietokantaskeemasi synkronoituna kaikissa tietokanta.

johtopäätös

Useiden tietokantojen käyttäminen Laravelissa voi olla loistava tapa parantaa sovelluksesi suorituskykyä, turvallisuutta ja skaalautuvuutta. Noudattamalla tässä artikkelissa kuvattuja parhaita käytäntöjä voit käyttää useita Laravelin tietokantoja tehokkaasti.

Liittyvät lukemat

Ercole Palmeri

Innovaatio-uutiskirje
Älä missaa tärkeimpiä innovaatioita koskevia uutisia. Rekisteröidy saadaksesi ne sähköpostitse.

Viimeaikaiset artikkelit

Veeam tarjoaa kattavimman tuen kiristysohjelmille suojauksesta vastaukseen ja palautukseen

Veeamin Coveware tarjoaa jatkossakin kyberkiristystapahtumien reagointipalveluita. Coveware tarjoaa rikosteknisiä ja korjaavia ominaisuuksia…

Huhtikuu 23 2024

Vihreä ja digitaalinen vallankumous: Kuinka ennakoiva huolto muuttaa öljy- ja kaasuteollisuutta

Ennakoiva huolto mullistaa öljy- ja kaasualan innovatiivisella ja ennakoivalla lähestymistavalla laitosten hallintaan.…

Huhtikuu 22 2024

Ison-Britannian kilpailuviranomainen herättää BigTech-hälytyksen GenAI:sta

Britannian CMA on antanut varoituksen Big Techin käyttäytymisestä tekoälymarkkinoilla. Siellä…

Huhtikuu 18 2024

Casa Green: energiavallankumous kestävän tulevaisuuden puolesta Italiassa

Euroopan unionin rakennusten energiatehokkuuden parantamiseksi laatima "Green Houses" -asetus on saanut lainsäädäntöprosessinsa päätökseen…

Huhtikuu 18 2024