კითხვის სავარაუდო დრო: 4 მინუტი
database.php
in config
კატალოგიეს ფაილი მდებარეობს დირექტორიაში config
თქვენი Laravel აპლიკაციიდან.
ფაილში database.php
შესაძლებელია definish მრავალი მონაცემთა ბაზის კავშირი. ყველა კავშირი უნდა იყოს 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()
საქართველოს facade
მონაცემთა ბაზები. Მეთოდი Connection()
არგუმენტად იღებს მონაცემთა ბაზის კავშირის სახელს.
მაგალითად, შემდეგი კოდი გადადის mysql DB-დან pgsql DB-მდე:
use Illuminate\Support\Facades\DB;
DB::connection('pgsql');
როგორც კი გადახვალთ მონაცემთა ბაზის კავშირზე, შეგიძლიათ გამოიყენოთ იგი მონაცემთა ბაზასთან შეკითხვისა და ინტერაქციისთვის.
Laravel-ში მრავალი მონაცემთა ბაზის გამოყენებას უამრავი უპირატესობა აქვს, მათ შორის:
აქ მოცემულია რამდენიმე საუკეთესო პრაქტიკა Laravel-ში მრავალი მონაცემთა ბაზის გამოყენებისთვის:
Connection()
ერთიდან წასვლა DB სხვას - ეს დაგეხმარებათ თავიდან აიცილოთ შემთხვევით გაშვება შეკითხვის შესახებ მონაცემთა ბაზა არასწორი.Laravel-ში მრავალი მონაცემთა ბაზის გამოყენება შეიძლება იყოს შესანიშნავი გზა თქვენი აპლიკაციის მუშაობის, უსაფრთხოებისა და მასშტაბურობის გასაუმჯობესებლად. ამ სტატიაში აღწერილი საუკეთესო პრაქტიკის დაცვით, შეგიძლიათ ეფექტურად გამოიყენოთ მრავალი მონაცემთა ბაზა Laravel-ში.
Ercole Palmeri
Coveware by Veeam გააგრძელებს კიბერ გამოძალვის ინციდენტებზე რეაგირების სერვისების მიწოდებას. Coveware შემოგთავაზებთ სასამართლო ექსპერტიზისა და გამოსწორების შესაძლებლობებს…
პროგნოზირებადი მოვლა რევოლუციას ახდენს ნავთობისა და გაზის სექტორში, ქარხნის მართვის ინოვაციური და აქტიური მიდგომით.…
გაერთიანებული სამეფოს CMA-მ გამოსცა გაფრთხილება Big Tech-ის ქცევის შესახებ ხელოვნური ინტელექტის ბაზარზე. იქ…
ევროკავშირის მიერ შენობების ენერგოეფექტურობის გაზრდის მიზნით შემუშავებულმა „Case Green“ დადგენილებამ დაასრულა საკანონმდებლო პროცესი…