Артиколи

Laravel бағдарламасын жобаңызда бірнеше дерекқорды пайдалану үшін қалай конфигурациялауға болады

Әдетте бағдарламалық жасақтаманы әзірлеу жобасы деректерді құрылымдық түрде сақтау үшін Дерекқорды пайдалануды қамтиды.

Нақты жобалар үшін бірнеше дерекқорды пайдалану қажет болуы мүмкін.

Laravel көмегімен бірнеше дерекқорды пайдалану үшін біз құрылымды және атап айтқанда қосылым конфигурация файлын конфигурациялауымыз керек.

Ларавелді бірнеше дерекқорды пайдалану үшін қалай конфигурациялау керектігін көрейік.

Болжалды оқу уақыты: 4 минуты

файл 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',
        ],

МБ-ге қалай қосылуға болады

Кейін defiДерекқор қосылымдары болғаннан кейін оларды кодта пайдалануға болады Laravel. Мұны істеу үшін сіз пайдалана аласыз facade деректер қорынан. Ана жерде facade мәліметтер базасы мәліметтер қорымен өзара әрекеттесу үшін бірыңғай интерфейсті қамтамасыз етеді.

Дерекқор қосылымдары арасында ауысу үшін әдісті пайдалануға болады Connection() della facade Мәліметтер базалары. Әдіс Connection() аргумент ретінде дерекқор қосылымының атын алады.

Мысалы, келесі код mysql DB-ден pgsql DB-ге өтеді:

Инновациялық ақпараттық бюллетень
Инновация туралы ең маңызды жаңалықтарды жіберіп алмаңыз. Оларды электрондық пошта арқылы алу үшін тіркеліңіз.
use Illuminate\Support\Facades\DB;

DB::connection('pgsql');

Дерекқор қосылымына ауысқаннан кейін оны сұрау және дерекқормен әрекеттесу үшін пайдалануға болады.

Ларавелде бірнеше дерекқорды пайдаланудың артықшылықтары

Laravel-те бірнеше дерекқорды пайдаланудың көптеген артықшылықтары бар, соның ішінде:

  • Жақсырақ өнімділік: Бірнеше дерекқорды пайдалану әртүрлі типтегі деректерді бөлу арқылы қолданба өнімділігін жақсартуы мүмкін. Мысалы, пайдаланушы деректерін бір дерекқорда және өнім деректерін басқа дерекқорда сақтауға болады.
  • Қауіпсіздікті арттыру: Бірнеше дерекқорды пайдалану әртүрлі типтегі деректерді бөлу арқылы қолданба қауіпсіздігін жақсартады. Мысалы, құпия деректерді бір дерекқорда және азырақ сезімтал деректерді басқа дерекқорда сақтауға болады.
  • Үлкенірек масштабтау: Бірнеше дерекқорды пайдалану деректеріңізді бірнеше серверлер арасында таратуға мүмкіндік беру арқылы қолданбаңызды кеңейтуге болады.

Ларавелде бірнеше дерекқорды пайдаланудың ең жақсы тәжірибелері

Міне, Laravel бағдарламасында бірнеше дерекқорды пайдаланудың ең жақсы тәжірибелері:

  • Дерекқор қосылымдары үшін түсінікті атауларды пайдаланыңыз: Бұл дерекқор қосылымдарын анықтауды және басқаруды жеңілдетеді.
  • Әдісті қолданыңыз Connection() біреуден кету DB екіншісіне - бұл кездейсоқ жүгірмеуге көмектеседі сұрау сул дерекқор қате.
  • Дерекқор схемаларын басқару үшін дерекқорды тасымалдау жүйесін пайдаланыңыз – бұл дерекқор схемаларын барлық деректеріңізде синхрондауға көмектеседі. дерекқор.

қорытынды

Laravel бағдарламасында бірнеше дерекқорды пайдалану қолданбаңыздың өнімділігін, қауіпсіздігін және ауқымдылығын жақсартудың тамаша тәсілі болуы мүмкін. Осы мақалада сипатталған ең жақсы тәжірибелерді орындау арқылы сіз Laravel бағдарламасында бірнеше дерекқорды тиімді пайдалана аласыз.

Қатысты оқулар

Ercole Palmeri

Инновациялық ақпараттық бюллетень
Инновация туралы ең маңызды жаңалықтарды жіберіп алмаңыз. Оларды электрондық пошта арқылы алу үшін тіркеліңіз.

Соңғы мақалалар

Онлайн төлемдер: Міне, ағынды қызметтер сізге мәңгілік төлем жасауға мүмкіндік береді

Миллиондаған адамдар ай сайынғы абоненттік төлемді төлей отырып, ағынды қызметтерге ақы төлейді. Жалпы пікір, сіз…

29 Сәуір 2024

Veeam қорғаныстан жауап беруге және қалпына келтіруге дейін төлемдік бағдарламалық құралға ең жан-жақты қолдау көрсетеді

Veeam ұсынған Coveware кибербопсалау оқиғаларына жауап беру қызметтерін көрсетуді жалғастырады. Coveware криминалистикалық және қалпына келтіру мүмкіндіктерін ұсынады ...

23 Сәуір 2024

Жасыл және цифрлық революция: болжамды техникалық қызмет көрсету мұнай және газ саласын қалай өзгертеді

Болжалды техникалық қызмет көрсету зауытты басқаруға инновациялық және белсенді көзқараспен мұнай және газ секторында төңкеріс жасайды.…

22 Сәуір 2024

Ұлыбританияның монополияға қарсы реттеушісі GenAI-ге қатысты BigTech дабылын көтереді

Ұлыбританияның CMA жасанды интеллект нарығындағы Big Tech әрекеті туралы ескерту жасады. Ана жерде…

18 Сәуір 2024

Инновацияны өз тіліңізде оқыңыз

Инновациялық ақпараттық бюллетень
Инновация туралы ең маңызды жаңалықтарды жіберіп алмаңыз. Оларды электрондық пошта арқылы алу үшін тіркеліңіз.

Артымыздан