Tempo estimado de leitura: 4 minutos
database.php
in config
anuárioEste arquivo está localizado no diretório config
da sua aplicação Laravel.
No arquivo database.php
é possível deficoncluir múltiplas conexões de banco de dados. Toda conexão deve ser defidefinido como uma matriz. A matriz deve conter as seguintes informações:
driver
: o driver de banco de dados a ser usado;host
: o nome host
ou o endereço IP
do servidor de banco de dados;port
: o número da porta do servidor de banco de dados;database
: o nome do banco de dados;username
: o nome de usuário para conexão ao banco de dados;password
: a senha para conexão ao banco de dados;Por exemplo, o seguinte código defiExistem duas conexões de banco de dados, uma para MySQL e outra para 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',
],
Depois defiDepois de ter conexões com o banco de dados, você poderá usá-las em seu código Laravel
. Para fazer isso, você pode usar o facade
do banco de dados. Lá facade
banco de dados fornece uma interface unificada para interagir com bancos de dados.
Para alternar entre conexões de banco de dados, você pode usar o método Connection()
de facade
Bancos de dados. O método Connection()
usa o nome da conexão com o banco de dados como argumento.
Por exemplo, o código a seguir vai do banco de dados mysql para o banco de dados pgsql:
use Illuminate\Support\Facades\DB;
DB::connection('pgsql');
Depois de mudar para uma conexão de banco de dados, você poderá usá-la para consultar e interagir com o banco de dados.
Existem inúmeros benefícios em usar vários bancos de dados no Laravel, incluindo:
Aqui estão algumas práticas recomendadas para usar vários bancos de dados no Laravel:
Connection()
ir de um DB para outro - isso ajudará você a evitar executar acidentalmente pergunta em banco de dados enganado.Usar vários bancos de dados no Laravel pode ser uma ótima maneira de melhorar o desempenho, a segurança e a escalabilidade da sua aplicação. Seguindo as práticas recomendadas descritas neste artigo, você pode usar vários bancos de dados no Laravel de forma eficaz.
Ercole Palmeri
O setor naval é uma verdadeira potência económica global, que navegou para um mercado de 150 mil milhões...
Na segunda-feira passada, o Financial Times anunciou um acordo com a OpenAI. O FT licencia seu jornalismo de classe mundial…
Milhões de pessoas pagam por serviços de streaming, pagando assinaturas mensais. É opinião comum que você…
A Coveware by Veeam continuará a fornecer serviços de resposta a incidentes de extorsão cibernética. A Coveware oferecerá recursos forenses e de remediação…