微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

[Laravel系列] 配置mysql数据库读写分离

项目为了提升性能

需要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'),
            ]) : [],
        ],

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。