Temps de lecture estimé : 4 minuti
database.php
in config
annuaireCe fichier se trouve dans le répertoire config
de votre application Laravel.
Dans le fichier database.php
Est-il possible defiterminer plusieurs connexions à la base de données. Chaque connexion doit être definié sous forme de tableau. Le tableau doit contenir les informations suivantes :
driver
: le pilote de base de données à utiliser ;host
: le nom host
ou l'adresse IP
du serveur de base de données ;port
: le numéro de port du serveur de base de données ;database
: le nom de la base de données ;username
: le nom d'utilisateur pour se connecter à la base de données ;password
: le mot de passe de connexion à la base de données ;Par exemple, le code suivant defiIl existe deux connexions à la base de données, une pour MySQL et une pour 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',
],
Après defiUne fois que vous disposez de connexions à la base de données, vous pouvez les utiliser dans votre code Laravel
. Pour ce faire, vous pouvez utiliser le facade
de la base de données. Là facade
La base de données fournit une interface unifiée pour interagir avec les bases de données.
Pour basculer entre les connexions à la base de données, vous pouvez utiliser la méthode Connection()
de facade
Bases de données. La méthode Connection()
prend le nom de la connexion à la base de données comme argument.
Par exemple, le code suivant passe de la base de données mysql à la base de données pgsql :
use Illuminate\Support\Facades\DB;
DB::connection('pgsql');
Une fois que vous êtes passé à une connexion à une base de données, vous pouvez l'utiliser pour interroger et interagir avec la base de données.
L’utilisation de plusieurs bases de données dans Laravel présente de nombreux avantages, notamment :
Voici quelques bonnes pratiques pour utiliser plusieurs bases de données dans Laravel :
Connection()
passer d'un DB à un autre - cela vous aidera à éviter de courir accidentellement question sur base de données trompé.L'utilisation de plusieurs bases de données dans Laravel peut être un excellent moyen d'améliorer les performances, la sécurité et l'évolutivité de votre application. En suivant les meilleures pratiques décrites dans cet article, vous pouvez utiliser efficacement plusieurs bases de données dans Laravel.
Ercole Palmeri
Coveware by Veeam continuera à fournir des services de réponse aux incidents de cyberextorsion. Coveware offrira des capacités d’investigation et de remédiation…
La maintenance prédictive révolutionne le secteur pétrolier et gazier, avec une approche innovante et proactive de la gestion des installations.…
La CMA britannique a émis un avertissement concernant le comportement des Big Tech sur le marché de l'intelligence artificielle. Là…
Le décret « Case Green », formulé par l'Union européenne pour améliorer l'efficacité énergétique des bâtiments, a conclu son processus législatif avec…