[Laravel系列] 配置mysql資料庫讀寫分離
阿新 • • 發佈:2021-10-28
專案為了提升效能
需要select查詢的時候,讀取從庫mysql資料
插入修改的時候,操作主庫mysql資料
在laravel中只需要配置一下就可以實現
read就是從庫的連線資訊,write就是主庫的連線資訊,在.env裡可以進行配置
'mysql' => [ 'driver' => 'mysql', 'url' => env('DATABASE_OA_URL'), //配置資料庫讀寫分離 'read' => [ 'host'=> env('DB_OA_READ_HOST', '127.0.0.1'), 'port' => env('DB_OA_READ_PORT', '3306'), 'database' => env('DB_OA_READ_DATABASE', 'forge'), 'username' => env('DB_OA_READ_USERNAME', 'forge'), 'password' => env('DB_OA_READ_PASSWORD', ''), ], 'write' => [ 'host' => env('DB_OA_HOST', '127.0.0.1'), 'port' => env('DB_OA_PORT', '3306'), 'database' => env('DB_OA_DATABASE', 'forge'), 'username' => env('DB_OA_USERNAME', 'forge'),'password' => env('DB_OA_PASSWORD', ''), ], 'unix_socket' => env('DB_OA_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'), ]) : [], ],