Files
kopalnia_2026/docker/check/db-check.php
T
2026-09-03 12:21:17 +02:00

35 lines
1.4 KiB
PHP

<?php
// Smoke-test połączeń DB (uruchamiać: php artisan tinker < docker/check/db-check.php
// albo: docker compose exec app php docker/check/db-check.php)
require __DIR__.'/../../vendor/autoload.php';
$app = require __DIR__.'/../../bootstrap/app.php';
$app->make(Illuminate\Contracts\Console\Kernel::class)->bootstrap();
use Illuminate\Support\Facades\DB;
foreach (['softspm' => 'sys_users', 'softspm_rep' => null, 'softspm_his' => null] as $conn => $probe) {
try {
$row = DB::connection($conn)->select('SELECT DATABASE() AS d, VERSION() AS v')[0];
$extra = '';
if ($probe) {
$extra = ', ' . $probe . '=' . DB::connection($conn)->table($probe)->count() . ' rek.';
}
echo "OK {$conn} -> {$row->d} (MariaDB {$row->v}{$extra})\n";
} catch (\Throwable $e) {
echo "FAIL {$conn} -> " . $e->getMessage() . "\n";
}
}
// Kluczowe tabele legacy używane przez nakładkę
$tables = ['sys_users', 'seg_wells', 'seg_dev_resources', 'seg_dev_resources_det',
'seg_equipments', 'seg_well_pump_eng_rel', 'seg_object_hole_cards', 'sys_dictionaries',
'seg_pumps', 'seg_engines', 'seg_manufacturers', 'rep_his_data_everyday', 'tst_tests'];
foreach ($tables as $t) {
try {
$n = DB::connection('softspm')->table($t)->count();
echo "OK softspm.{$t} = {$n}\n";
} catch (\Throwable $e) {
echo "FAIL softspm.{$t} -> " . substr($e->getMessage(), 0, 120) . "\n";
}
}