111 lines
4.5 KiB
PHP
111 lines
4.5 KiB
PHP
<?php
|
|
|
|
use Illuminate\Support\Str;
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| SoftSPM_2 - konfiguracja baz danych (nakładka na szkielet Laravela)
|
|
|--------------------------------------------------------------------------
|
|
| Podejście DATABASE-FIRST: pracujemy na istniejącym schemacie MariaDB
|
|
| (NIE zmieniamy struktury). Trzy osobne bazy:
|
|
| - softspm → dane operacyjne (tabele seg_/sys_/tst_) [domyślna]
|
|
| - softspm_rep → tabele raportowe (rep_)
|
|
| - softspm_his → historia (tabele _his)
|
|
|
|
|
| Wartości pobierane z .env (ustawiane na serwerze testowym). Sterownik
|
|
| 'mariadb' wymaga Laravel 11+. Wszystkie 3 bazy stoją na tym samym hoście,
|
|
| ale trzymamy je jako odrębne połączenia - modele wskazują swoje przez
|
|
| właściwość $connection.
|
|
*/
|
|
|
|
return [
|
|
|
|
'default' => env('DB_CONNECTION', 'softspm'),
|
|
|
|
'connections' => [
|
|
|
|
// === Baza operacyjna (domyślna) ===
|
|
'softspm' => [
|
|
'driver' => 'mariadb',
|
|
'host' => env('DB_HOST', '10.42.1.210'),
|
|
'port' => env('DB_PORT', '3306'),
|
|
'database' => env('DB_DATABASE', 'softspm'),
|
|
'username' => env('DB_USERNAME', 'spm_local'),
|
|
'password' => env('DB_PASSWORD', 'ff8efe59e7265fe9680b0c325e44cb53'),
|
|
'unix_socket' => env('DB_SOCKET', ''),
|
|
'charset' => 'utf8',
|
|
'collation' => 'utf8_general_ci', // zgodnie z SET NAMES utf8 w legacy
|
|
'prefix' => '',
|
|
'prefix_indexes' => true,
|
|
'strict' => false, // legacy schema - wyłączamy ONLY_FULL_GROUP_BY itd.
|
|
'engine' => null,
|
|
],
|
|
|
|
// === Baza raportowa ===
|
|
'softspm_rep' => [
|
|
'driver' => 'mariadb',
|
|
'host' => env('DB_REP_HOST', env('DB_HOST', '10.42.1.210')),
|
|
'port' => env('DB_REP_PORT', env('DB_PORT', '3306')),
|
|
'database' => env('DB_REP_DATABASE', 'softspm_rep'),
|
|
'username' => env('DB_REP_USERNAME', env('DB_USERNAME', 'spm_local')),
|
|
'password' => env('DB_REP_PASSWORD', env('DB_PASSWORD', 'ff8efe59e7265fe9680b0c325e44cb53')),
|
|
'charset' => 'utf8',
|
|
'collation' => 'utf8_general_ci',
|
|
'prefix' => '',
|
|
'strict' => false,
|
|
'engine' => null,
|
|
],
|
|
|
|
// === Baza historyczna ===
|
|
'softspm_his' => [
|
|
'driver' => 'mariadb',
|
|
'host' => env('DB_HIS_HOST', env('DB_HOST', '10.42.1.210')),
|
|
'port' => env('DB_HIS_PORT', env('DB_PORT', '3306')),
|
|
'database' => env('DB_HIS_DATABASE', 'softspm_his'),
|
|
'username' => env('DB_HIS_USERNAME', env('DB_USERNAME', 'spm_local')),
|
|
'password' => env('DB_HIS_PASSWORD', env('DB_PASSWORD', 'ff8efe59e7265fe9680b0c325e44cb53')),
|
|
'charset' => 'utf8',
|
|
'collation' => 'utf8_general_ci',
|
|
'prefix' => '',
|
|
'strict' => false,
|
|
'engine' => null,
|
|
],
|
|
|
|
],
|
|
|
|
/*
|
|
| Migracje Laravela trzymamy w bazie operacyjnej. UWAGA: w podejściu
|
|
| database-first migracji raczej nie uruchamiamy na istniejących tabelach
|
|
| - służy głównie tabelom pomocniczym (sessions, cache, jobs).
|
|
*/
|
|
'migrations' => [
|
|
'table' => 'migrations',
|
|
'update_date_on_publish' => true,
|
|
],
|
|
|
|
'redis' => [
|
|
'client' => env('REDIS_CLIENT', 'phpredis'),
|
|
'options' => [
|
|
'cluster' => env('REDIS_CLUSTER', 'redis'),
|
|
'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'softspm'), '_').'_database_'),
|
|
],
|
|
'default' => [
|
|
'url' => env('REDIS_URL'),
|
|
'host' => env('REDIS_HOST', '127.0.0.1'),
|
|
'username' => env('REDIS_USERNAME'),
|
|
'password' => env('REDIS_PASSWORD'),
|
|
'port' => env('REDIS_PORT', '6379'),
|
|
'database' => env('REDIS_DB', '0'),
|
|
],
|
|
'cache' => [
|
|
'url' => env('REDIS_URL'),
|
|
'host' => env('REDIS_HOST', '127.0.0.1'),
|
|
'username' => env('REDIS_USERNAME'),
|
|
'password' => env('REDIS_PASSWORD'),
|
|
'port' => env('REDIS_PORT', '6379'),
|
|
'database' => env('REDIS_CACHE_DB', '1'),
|
|
],
|
|
],
|
|
|
|
];
|