Məqalələr

Layihənizdə çoxlu verilənlər bazasından istifadə etmək üçün Laravel-i necə konfiqurasiya etmək olar

Adətən proqram təminatının inkişafı layihəsi verilənlər bazasının strukturlaşdırılmış şəkildə saxlanması üçün verilənlər bazasının istifadəsini nəzərdə tutur.

Xüsusi layihələr üçün bir neçə verilənlər bazasından istifadə etmək lazım ola bilər.

Laravel ilə çoxlu verilənlər bazasından istifadə etmək üçün çərçivəni və xüsusən də bağlantılar konfiqurasiya faylını konfiqurasiya etməliyik.

Laravel-i çoxlu verilənlər bazasından istifadə etmək üçün necə konfiqurasiya edəcəyimizi görək.

Təxmini oxuma vaxtı: 4 minuti

fayl database.php in config directory

Bu fayl kataloqda yerləşir config Laravel tətbiqinizin.

Faylda database.php mümkündür defiçoxlu verilənlər bazası əlaqəsini təmin edin. Hər bir əlaqə olmalıdır defimassiv kimi nited. Massiv aşağıdakı məlumatları ehtiva etməlidir:

  • driver: istifadə ediləcək verilənlər bazası sürücüsü;
  • host: adı host və ya ünvan IP verilənlər bazası serveri;
  • port: verilənlər bazası serverinin port nömrəsi;
  • database: verilənlər bazası adı;
  • username: verilənlər bazasına qoşulmaq üçün istifadəçi adı;
  • password: verilənlər bazasına qoşulmaq üçün parol;

Məsələn, aşağıdakı kod defiİki verilənlər bazası əlaqəsi var, biri MySQL, digəri PostgreSQL üçün:

'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-yə necə qoşulmaq olar

Sonra defiVerilənlər bazası bağlantılarınız olduqdan sonra onları kodunuzda istifadə edə bilərsiniz Laravel. Bunu etmək üçün istifadə edə bilərsiniz facade verilənlər bazasından. Orada facade verilənlər bazası verilənlər bazası ilə qarşılıqlı əlaqə üçün vahid interfeys təmin edir.

Verilənlər bazası əlaqələri arasında keçid etmək üçün metoddan istifadə edə bilərsiniz Connection() of facade Verilənlər bazaları. Metod Connection() arqument kimi verilənlər bazası əlaqəsinin adını alır.

Məsələn, aşağıdakı kod mysql DB-dən pgsql DB-yə keçir:

İnnovasiya bülleteni
Yeniliklərlə bağlı ən vacib xəbərləri qaçırmayın. Onları e-poçtla almaq üçün qeydiyyatdan keçin.
use Illuminate\Support\Facades\DB;

DB::connection('pgsql');

Verilənlər bazası bağlantısına keçdikdən sonra ondan verilənlər bazası ilə sorğu və qarşılıqlı əlaqə yaratmaq üçün istifadə edə bilərsiniz.

Laravel-də çoxlu verilənlər bazasından istifadənin üstünlükləri

Laravel-də çoxlu verilənlər bazasından istifadə etməyin çoxsaylı üstünlükləri var, o cümlədən:

  • Daha yaxşı performans: Çoxlu verilənlər bazasından istifadə müxtəlif növ məlumatları ayırmaqla tətbiqin işini yaxşılaşdıra bilər. Məsələn, istifadəçi məlumatlarını bir verilənlər bazasında və məhsul məlumatlarını başqa bir verilənlər bazasında saxlaya bilərsiniz.
  • Artan təhlükəsizlik: Çoxlu verilənlər bazasından istifadə müxtəlif növ məlumatları ayırmaqla tətbiqin təhlükəsizliyini yaxşılaşdıra bilər. Məsələn, həssas məlumatları bir verilənlər bazasında, daha az həssas məlumatları isə başqa verilənlər bazasında saxlaya bilərsiniz.
  • Daha geniş miqyaslılıq: Birdən çox verilənlər bazasından istifadə məlumatlarınızı çoxsaylı serverlər arasında yaymağa imkan verməklə tətbiqinizi daha miqyaslı edə bilər.

Laraveldə çoxlu verilənlər bazasından istifadə üçün ən yaxşı təcrübələr

Laravel-də çoxlu verilənlər bazasından istifadə etmək üçün bəzi ən yaxşı təcrübələr bunlardır:

  • Verilənlər bazası əlaqələri üçün dost adlardan istifadə edin: Bu, verilənlər bazası bağlantılarını müəyyən etməyi və idarə etməyi asanlaşdıracaq.
  • Metoddan istifadə edin Connection() birindən getmək DB digərinə - bu, təsadüfən qaçmamağınıza kömək edəcək sorğu sul Verilənlər bazası səhv.
  • Verilənlər bazası sxemlərinizi idarə etmək üçün verilənlər bazası miqrasiya sistemindən istifadə edin – bu, verilənlər bazası sxemlərinizi bütün sistemlər arasında sinxronlaşdırmağa kömək edəcək. Verilənlər bazası.

nəticə

Laravel-də çoxlu verilənlər bazasından istifadə tətbiqinizin performansını, təhlükəsizliyini və miqyasını artırmaq üçün əla yol ola bilər. Bu məqalədə təsvir olunan ən yaxşı təcrübələrə əməl etməklə siz Laravel-də çoxlu verilənlər bazasından səmərəli istifadə edə bilərsiniz.

Əlaqədar Oxumalar

Ercole Palmeri

İnnovasiya bülleteni
Yeniliklərlə bağlı ən vacib xəbərləri qaçırmayın. Onları e-poçtla almaq üçün qeydiyyatdan keçin.

Articoli recenti

Onlayn ödənişlər: Axın xidmətləri sizi əbədi olaraq necə ödəyir

Milyonlarla insan aylıq abunə haqqı ödəyərək axın xidmətləri üçün pul ödəyir. Ümumi fikirdir ki, siz…

29 Aprel 2024

Veeam müdafiədən tutmuş cavab və bərpaya qədər ransomware üçün ən əhatəli dəstəyi təqdim edir

Coveware by Veeam kiber qəsb hallarına cavab xidmətləri göstərməyə davam edəcək. Coveware məhkəmə və remediasiya imkanları təklif edəcək...

23 Aprel 2024

Yaşıl və Rəqəmsal İnqilab: Proqnozlaşdırılan Baxım Neft və Qaz Sənayesini necə çevirir?

Proqnozlaşdırılan texniki xidmət zavodun idarə edilməsinə innovativ və proaktiv yanaşma ilə neft və qaz sektorunda inqilab edir.…

22 Aprel 2024

Böyük Britaniyanın antiinhisar tənzimləyicisi GenAI üzərində BigTech həyəcanını qaldırır

Böyük Britaniyanın CMA süni intellekt bazarında Big Tech-in davranışı ilə bağlı xəbərdarlıq edib. Orada…

18 Aprel 2024