Estimasyon tan lekti: 4 minit
database.php
in config
anyèFichye sa a sitiye nan anyè a config
nan aplikasyon Laravel ou a.
Nan dosye a database.php
se posib defifini plizyè koneksyon baz done. Chak koneksyon dwe definited kòm yon etalaj. Etalaj la ta dwe genyen enfòmasyon sa yo:
driver
: chofè baz done pou itilize;host
: non an host
oswa adrès la IP
nan sèvè baz done a;port
: nimewo pò a sèvè baz done;database
: non baz done a;username
: non itilizatè a pou konekte ak baz done a;password
: modpas la pou konekte ak baz done a;Pou egzanp, kòd sa a defiGen de koneksyon baz done, youn pou MySQL ak youn pou 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',
],
Apre defiYon fwa ou gen koneksyon baz done, ou ka itilize yo nan kòd ou a Laravel
. Pou fè sa, ou ka itilize facade
nan baz done a. La facade
baz done bay yon koòdone inifye pou kominike avèk baz done.
Pou chanje ant koneksyon baz done, ou ka itilize metòd la Connection()
nan facade
Baz done. Metòd la Connection()
pran non koneksyon baz done a kòm yon agiman.
Pou egzanp, kòd sa a ale soti nan DB mysql nan DB pgsql la:
use Illuminate\Support\Facades\DB;
DB::connection('pgsql');
Yon fwa ou chanje nan yon koneksyon baz done, ou ka itilize li pou rechèch ak kominike avèk baz done a.
Gen anpil avantaj pou itilize plizyè baz done nan Laravel, tankou:
Men kèk pi bon pratik pou itilize plizyè baz done nan Laravel:
Connection()
ale nan yon sèl DB nan yon lòt - sa ap ede ou evite aksidantèlman kouri query sid baz done mal.Sèvi ak plizyè baz done nan Laravel kapab yon bon fason pou amelyore pèfòmans, sekirite, ak évolutivité aplikasyon w lan. Lè w swiv pi bon pratik ki dekri nan atik sa a, ou ka itilize plizyè baz done nan Laravel efektivman.
Ercole Palmeri
Coveware by Veeam ap kontinye bay sèvis repons pou ensidan ekstòsyon sou cyber. Coveware pral ofri medsen legal ak kapasite ratrapaj ...
Antretyen prediksyon ap revolisyone sektè lwil oliv ak gaz la, ak yon apwòch inovatè ak aktif nan jesyon plant yo.…
UK CMA te bay yon avètisman sou konpòtman Big Tech nan mache entèlijans atifisyèl la. La…
Dekrè "Case Green", ki te fòme pa Inyon Ewopeyen an pou amelyore efikasite enèji nan bilding yo, te konkli pwosesis lejislatif li yo ak...