Мақолаҳо

Чӣ тавр танзим кардани Laravel барои истифодаи якчанд пойгоҳи додаҳо дар лоиҳаи шумо

Одатан лоиҳаи таҳияи нармафзор истифодаи Пойгоҳи додаҳоро барои нигоҳ доштани маълумот ба таври сохторӣ дар бар мегирад.

Барои лоиҳаҳои мушаххас метавонад истифода бурдани якчанд пойгоҳи додаҳо зарур бошад.

Бо Laravel, барои истифодаи якчанд пойгоҳи додаҳо, мо бояд чаҳорчӯба ва махсусан файли конфигуратсияи пайвастҳоро танзим кунем.

Биёед бубинем, ки чӣ тавр Laravel-ро барои истифодаи якчанд пойгоҳи додаҳо танзим кардан мумкин аст.

Вақти тахминии хониш: 4 дақиқаҳо

File database.php in config директорӣ

Ин файл дар директория ҷойгир аст config аз барномаи Laravel шумо.

Дар файл database.php имконпазир аст defiпайвастҳои сершумори пойгоҳи додаҳо. Ҳар як алоқа бояд бошад defiҳамчун массив муттаҳид карда шудааст. Массив бояд маълумоти зеринро дар бар гирад:

  • driver: драйвери пойгоҳи додаҳо барои истифода;
  • host: ном host ё суроға IP сервери пойгоҳи додаҳо;
  • port: рақами порти сервери пойгоҳи додаҳо;
  • database: номи пойгоҳи додаҳо;
  • username: номи корбар барои пайвастшавӣ ба базаи маълумот;
  • password: парол барои пайвастшавӣ ба базаи маълумот;

Масалан, рамзи зерин defiДу пайвасти пойгоҳи додаҳо мавҷуданд, яке барои MySQL ва дигаре барои 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',
        ],

Чӣ тавр ба DB пайваст шудан мумкин аст

Баъд аз defiПас аз он ки шумо пайвастҳои пойгоҳи додаҳо доред, шумо метавонед онҳоро дар коди худ истифода баред Laravel. Барои ин, шумо метавонед истифода баред facade аз базаи маълумот. Он ҷо facade пойгоҳи додаҳо интерфейси ягонаро барои ҳамкорӣ бо пойгоҳи додаҳо таъмин мекунад.

Барои гузаштан байни пайвастҳои пойгоҳи додаҳо, шумо метавонед ин усулро истифода баред Connection() Делла facade Пойгоҳи додаҳо. Усули Connection() номи пайвастшавии базаи маълумотро ҳамчун далел мегирад.

Масалан, рамзи зерин аз mysql DB ба pgsql DB мегузарад:

Бюллетени инноватсионӣ
Муҳимтарин хабарҳоро дар бораи навоварӣ аз даст надиҳед. Барои гирифтани онҳо тавассути почтаи электронӣ обуна шавед.
use Illuminate\Support\Facades\DB;

DB::connection('pgsql');

Пас аз гузаштан ба пайвасти пойгоҳи додаҳо, шумо метавонед онро барои пурсиш ва ҳамкорӣ бо пойгоҳи додаҳо истифода баред.

Манфиатҳои истифодаи якчанд пойгоҳи додаҳо дар Laravel

Истифодаи якчанд пойгоҳи додаҳо дар Laravel бартариҳои зиёде мавҷуданд, аз ҷумла:

  • Иҷрои беҳтар: Истифодаи пойгоҳи додаҳои сершумор метавонад иҷрои барномаҳоро тавассути ҷудо кардани додаҳои намудҳои гуногун беҳтар созад. Масалан, шумо метавонед маълумоти корбарро дар як махзани маълумот ва маълумоти маҳсулот дар махзани дигар нигоҳ доред.
  • Афзоиши амният: Истифодаи пойгоҳи додаҳои сершумор метавонад амнияти барномаҳоро тавассути ҷудо кардани додаҳои намудҳои гуногун беҳтар созад. Масалан, шумо метавонед маълумоти ҳассосро дар як пойгоҳи додаҳо ва маълумоти камтар ҳассосро дар дигар пойгоҳи додаҳо нигоҳ доред.
  • Миқёспазирии бештар: Истифодаи пойгоҳи додаҳои сершумор метавонад барномаи шуморо миқёспазиртар гардонад, то ба шумо имкон диҳад, ки маълумоти худро дар байни серверҳои сершумор паҳн кунед.

Таҷрибаҳои беҳтарин барои истифодаи якчанд пойгоҳи додаҳо дар Laravel

Инҳоянд баъзе таҷрибаҳои беҳтарин барои истифодаи якчанд пойгоҳи додаҳо дар Laravel:

  • Барои пайвастҳои пойгоҳи додаҳо номҳои дӯстона истифода баред: Ин муайян ва идоракунии пайвастҳои пойгоҳи додаҳоро осонтар мекунад.
  • Усули истифода баред Connection() рафтан аз як DB ба дигаре - ин ба шумо кӯмак мекунад, ки тасодуфан давиданро пешгирӣ кунед пурсиш сул Махзани хато.
  • Барои идора кардани схемаҳои пойгоҳи додаҳои худ аз системаи муҳоҷирати пойгоҳи додаҳо истифода баред - ин ба шумо кӯмак мекунад, ки схемаҳои пойгоҳи додаҳои худро дар ҳама синхронизатсия нигоҳ доред. Махзани.

хулоса

Истифодаи пойгоҳи додаҳои сершумор дар Laravel метавонад як роҳи олии беҳтар кардани кор, амният ва миқёспазирии барномаи шумо бошад. Бо риояи таҷрибаҳои беҳтарини дар ин мақола тавсифшуда, шумо метавонед якчанд пойгоҳи додаҳоро дар Laravel самаранок истифода баред.

Хонишҳои марбут

Ercole Palmeri

Бюллетени инноватсионӣ
Муҳимтарин хабарҳоро дар бораи навоварӣ аз даст надиҳед. Барои гирифтани онҳо тавассути почтаи электронӣ обуна шавед.

Мақолаҳои охирин

Veeam дорои дастгирии ҳамаҷонибаи нармафзори ransomware, аз муҳофизат то вокуниш ва барқарорсозӣ мебошад

Coveware аз ҷониби Veeam хидматрасонии вокуниш ба ҳодисаҳои тамаъҷӯии кибериро идома медиҳад. Coveware қобилиятҳои криминалистӣ ва ислоҳиро пешниҳод хоҳад кард ...

23 апрел 2024

Инқилоби сабз ва рақамӣ: Чӣ гуна нигоҳдории пешгӯишаванда саноати нафту газро тағир медиҳад

Нигоҳдории пешгӯишаванда бахши нафту газро бо равиши инноватсионӣ ва фаъол ба идоракунии нерӯгоҳ инқилоб мекунад.…

22 апрел 2024

Танзимгари зиддимонополияи Бритониё ҳушдори BigTechро нисбат ба GenAI баланд мекунад

CMA Бритониё дар бораи рафтори Big Tech дар бозори зеҳни сунъӣ ҳушдор дод. Он ҷо…

18 апрел 2024

Casa Green: инқилоби энергетикӣ барои ояндаи устувор дар Италия

Қарори "Хонаҳои сабз", ки аз ҷониби Иттиҳоди Аврупо барои баланд бардоштани самаранокии энергияи биноҳо таҳия шудааст, раванди қонунгузории худро бо ...

18 апрел 2024

Инноватсияро ба забони худ хонед

Бюллетени инноватсионӣ
Муҳимтарин хабарҳоро дар бораи навоварӣ аз даст надиҳед. Барои гирифтани онҳо тавассути почтаи электронӣ обуна шавед.

Моро дунбол кунед