Очаквано време за четене: 4 Minuti
database.php
in config
указателТози файл се намира в директорията config
на вашето приложение Laravel.
Във файла database.php
е възможно defiунищожи множество връзки към бази данни. Всяка връзка трябва да бъде definited като масив. Масивът трябва да съдържа следната информация:
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 от Veeam ще продължи да предоставя услуги за реакция при инциденти с кибер изнудване. Coveware ще предлага криминалистика и възможности за възстановяване...
Прогнозната поддръжка революционизира сектора на петрола и газа с иновативен и проактивен подход към управлението на инсталациите.…
CMA на Обединеното кралство издаде предупреждение относно поведението на Big Tech на пазара на изкуствен интелект. Там…