env('DB_CONNECTION', 'mysql'), // Supplier payable edits and imports must never write to the shared // system database used by the rest of the application. 'supplier_payable_maintenance_connection' => env( 'SUPPLIER_PAYABLE_MAINTENANCE_DB_CONNECTION', 'supplier_payable_maintenance' ), /* |-------------------------------------------------------------------------- | Database Connections |-------------------------------------------------------------------------- | | Here are each of the database connections setup for your application. | Of course, examples of configuring each database platform that is | supported by Laravel is shown below to make development simple. | | | All database work in Laravel is done through the PHP PDO facilities | so make sure you have the driver for your particular database of | choice installed on your machine before you begin development. | */ 'connections' => [ 'sqlite' => [ 'driver' => 'sqlite', 'url' => env('DATABASE_URL'), 'database' => env('DB_DATABASE', database_path('database.sqlite')), 'prefix' => env('DB_PREFIX', 'ak_'), 'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true), ], 'bills_sqlite' => [ 'driver' => 'sqlite', 'database' => env('BILLS_SQLITE_PATH', base_path('runtime/bills.sqlite')), 'prefix' => '', 'foreign_key_constraints' => null, 'options' => [ PDO::SQLITE_ATTR_OPEN_FLAGS => PDO::SQLITE_OPEN_READONLY, ], ], 'mysql' => [ 'driver' => 'mysql', 'url' => env('DATABASE_URL'), 'read' => [ 'host' => [ env('DB_HOST_READ', env('DB_HOST', '127.0.0.1')), ], ], 'write' => [ 'host' => [ env('DB_HOST_WRITE', env('DB_HOST', '127.0.0.1')), ], ], 'sticky' => env('DB_STICKY', true), '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' => env('DB_PREFIX', 'ak_'), 'prefix_indexes' => true, 'strict' => true, 'engine' => 'InnoDB ROW_FORMAT=DYNAMIC', 'modes' => [ //'ONLY_FULL_GROUP_BY', // conflicts with eloquence 'STRICT_TRANS_TABLES', 'NO_ZERO_IN_DATE', 'NO_ZERO_DATE', 'ERROR_FOR_DIVISION_BY_ZERO', 'NO_ENGINE_SUBSTITUTION', ], 'options' => $mysqlSslOptions(), ], // 上游业务数据的项目内镜像。它与用户、权限和系统设置所在的 // caiwu_system_config 分库保存,但默认复用同一台 MariaDB 和账号。 'business_mirror' => [ 'driver' => 'mysql', 'read' => [ 'host' => [ env('BUSINESS_MIRROR_DB_HOST_READ', env('BUSINESS_MIRROR_DB_HOST', env('DB_HOST', '127.0.0.1'))), ], ], 'write' => [ 'host' => [ env('BUSINESS_MIRROR_DB_HOST_WRITE', env('BUSINESS_MIRROR_DB_HOST', env('DB_HOST', '127.0.0.1'))), ], ], 'sticky' => true, 'port' => env('BUSINESS_MIRROR_DB_PORT', env('DB_PORT', '3306')), 'database' => env('BUSINESS_MIRROR_DB_DATABASE', 'caiwu_business_mirror'), 'username' => env('BUSINESS_MIRROR_DB_USERNAME', env('DB_USERNAME', 'forge')), 'password' => env('BUSINESS_MIRROR_DB_PASSWORD', env('DB_PASSWORD', '')), 'unix_socket' => env('BUSINESS_MIRROR_DB_SOCKET', env('DB_SOCKET', '')), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'prefix_indexes' => true, 'strict' => true, 'engine' => 'InnoDB ROW_FORMAT=DYNAMIC', 'modes' => [ 'STRICT_TRANS_TABLES', 'NO_ZERO_IN_DATE', 'NO_ZERO_DATE', 'ERROR_FOR_DIVISION_BY_ZERO', 'NO_ENGINE_SUBSTITUTION', ], 'options' => $mysqlSslOptions(), ], // 聚水潭发货数据专用落库连接。默认指向 docker-compose.local.yml 的本地 // MySQL 容器(网络别名 mysql / 库 akaunting),与远程共享镜像库隔离, // 便于先本地验证真实数据。上生产时用 env 覆盖到目标库即可。 'jushuitan_local' => [ 'driver' => 'mysql', 'host' => env('JST_DB_HOST', 'mysql'), 'port' => env('JST_DB_PORT', '3306'), 'database' => env('JST_DB_DATABASE', 'akaunting'), 'username' => env('JST_DB_USERNAME', 'akaunting'), 'password' => env('JST_DB_PASSWORD', 'akaunting123'), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'prefix_indexes' => true, 'strict' => true, 'engine' => 'InnoDB ROW_FORMAT=DYNAMIC', ], 'supplier_payable_maintenance' => [ 'driver' => env('SUPPLIER_PAYABLE_MAINTENANCE_DB_DRIVER', 'mysql'), 'host' => env('SUPPLIER_PAYABLE_MAINTENANCE_DB_HOST'), 'port' => env('SUPPLIER_PAYABLE_MAINTENANCE_DB_PORT', '3306'), 'database' => env('SUPPLIER_PAYABLE_MAINTENANCE_DB_DATABASE'), 'username' => env('SUPPLIER_PAYABLE_MAINTENANCE_DB_USERNAME'), 'password' => env('SUPPLIER_PAYABLE_MAINTENANCE_DB_PASSWORD'), 'unix_socket' => env('SUPPLIER_PAYABLE_MAINTENANCE_DB_SOCKET', ''), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => env('SUPPLIER_PAYABLE_MAINTENANCE_DB_PREFIX', 'ak_'), 'prefix_indexes' => true, 'strict' => true, 'engine' => 'InnoDB ROW_FORMAT=DYNAMIC', 'modes' => [ 'STRICT_TRANS_TABLES', 'NO_ZERO_IN_DATE', 'NO_ZERO_DATE', 'ERROR_FOR_DIVISION_BY_ZERO', 'NO_ENGINE_SUBSTITUTION', ], ], 'mariadb' => [ 'driver' => 'mysql', 'url' => env('DATABASE_URL'), 'read' => [ 'host' => [ env('DB_HOST_READ', env('DB_HOST', '127.0.0.1')), ], ], 'write' => [ 'host' => [ env('DB_HOST_WRITE', env('DB_HOST', '127.0.0.1')), ], ], 'sticky' => env('DB_STICKY', true), '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' => env('DB_PREFIX', 'ak_'), 'prefix_indexes' => true, 'strict' => true, 'engine' => 'InnoDB ROW_FORMAT=DYNAMIC', 'modes' => [ //'ONLY_FULL_GROUP_BY', // conflicts with eloquence 'STRICT_TRANS_TABLES', 'NO_ZERO_IN_DATE', 'NO_ZERO_DATE', 'ERROR_FOR_DIVISION_BY_ZERO', 'NO_ENGINE_SUBSTITUTION', ], 'options' => $mysqlSslOptions(), ], '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' => env('DB_PREFIX', 'ak_'), 'prefix_indexes' => true, 'search_path' => 'public', 'sslmode' => 'prefer', ], 'sqlsrv' => [ 'driver' => 'sqlsrv', 'url' => env('DATABASE_URL'), 'host' => env('DB_HOST', 'localhost'), 'port' => env('DB_PORT', '1433'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), 'charset' => 'utf8', 'prefix' => env('DB_PREFIX', 'ak_'), 'prefix_indexes' => true, ], ], /* |-------------------------------------------------------------------------- | Migration Repository Table |-------------------------------------------------------------------------- | | This table keeps track of all the migrations that have already run for | your application. Using this information, we can determine which of | the migrations on disk haven't actually been run in the database. | */ 'migrations' => 'migrations', /* |-------------------------------------------------------------------------- | Redis Databases |-------------------------------------------------------------------------- | | Redis is an open source, fast, and advanced key-value store that also | provides a richer body of commands than a typical key-value system | such as APC or Memcached. Laravel makes it easy to dig right in. | */ 'redis' => [ 'client' => env('REDIS_CLIENT', 'phpredis'), 'options' => [ 'cluster' => env('REDIS_CLUSTER', 'redis'), 'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_') . '_database_'), ], 'default' => [ 'url' => env('REDIS_URL'), 'host' => env('REDIS_HOST', '127.0.0.1'), 'password' => env('REDIS_PASSWORD'), 'port' => env('REDIS_PORT', '6379'), 'database' => env('REDIS_DB', '0'), ], 'cache' => [ 'url' => env('REDIS_CACHE_URL', env('REDIS_URL')), 'host' => env('REDIS_CACHE_HOST', env('REDIS_HOST', '127.0.0.1')), 'password' => env('REDIS_CACHE_PASSWORD', env('REDIS_PASSWORD', null)), 'port' => env('REDIS_CACHE_PORT', env('REDIS_PORT', '6379')), 'database' => env('REDIS_CACHE_DB', '1'), ], 'queue' => [ 'url' => env('REDIS_QUEUE_URL', env('REDIS_URL')), 'host' => env('REDIS_QUEUE_HOST', env('REDIS_HOST', '127.0.0.1')), 'password' => env('REDIS_QUEUE_PASSWORD', env('REDIS_PASSWORD', null)), 'port' => env('REDIS_QUEUE_PORT', env('REDIS_PORT', '6379')), 'database' => env('REDIS_QUEUE_DB', env('REDIS_DB', '0')), ], 'session' => [ 'url' => env('REDIS_SESSION_URL', env('REDIS_URL')), 'host' => env('REDIS_SESSION_HOST', env('REDIS_HOST', '127.0.0.1')), 'password' => env('REDIS_SESSION_PASSWORD', env('REDIS_PASSWORD', null)), 'port' => env('REDIS_SESSION_PORT', env('REDIS_PORT', '6379')), 'database' => env('REDIS_SESSION_DB', env('REDIS_DB', '0')), ], ], ];