Разліковы час чытання: 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()
з facade
Базы дадзеных. Метад Connection()
прымае імя злучэння з базай дадзеных у якасці аргументу.
Напрыклад, наступны код пераходзіць з базы дадзеных mysql у базу дадзеных pgsql:
use Illuminate\Support\Facades\DB;
DB::connection('pgsql');
Пасля пераключэння на злучэнне з базай дадзеных вы можаце выкарыстоўваць яго для запытаў і ўзаемадзеяння з базай дадзеных.
Ёсць шмат пераваг выкарыстання некалькіх баз даных у Laravel, у тым ліку:
Вось некалькі лепшых практык выкарыстання некалькіх баз даных у Laravel:
Connection()
ісці ад аднаго DB да іншага - гэта дапаможа пазбегнуць выпадковага запуску запыт на база дадзеных няправільна.Выкарыстанне некалькіх баз дадзеных у Laravel можа быць выдатным спосабам палепшыць прадукцыйнасць, бяспеку і маштабаванасць вашага прыкладання. Прытрымліваючыся лепшых практык, апісаных у гэтым артыкуле, вы можаце эфектыўна выкарыстоўваць некалькі баз дадзеных у Laravel.
Ercole Palmeri
Мільёны людзей плацяць за струменевыя паслугі, плацячы штомесячную абаненцкую плату. Распаўсюджана меркаванне, што вы…
Coveware ад Veeam працягне прадастаўляць паслугі рэагавання на інцыдэнты кібервымагальніцтва. Coveware будзе прапаноўваць судова-медыцынскую экспертызу і магчымасці выпраўлення…
Прагнастычнае тэхнічнае абслугоўванне рэвалюцыянізуе нафтагазавы сектар з інавацыйным і актыўным падыходам да кіравання заводам.…
CMA Вялікабрытаніі выпусціла папярэджанне аб паводзінах Big Tech на рынку штучнага інтэлекту. Там…