PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, ]; try { $pdo = new PDO($dsn, $user, $pass, $options); $pdo->exec("CREATE DATABASE IF NOT EXISTS `$db`"); $pdo->exec("USE `$db`"); $pdo->exec(" CREATE TABLE IF NOT EXISTS filler ( id INT AUTO_INCREMENT PRIMARY KEY, data LONGBLOB ) "); } catch (\PDOException $e) { die("❌ DB connection failed: " . $e->getMessage()); } function getDbStats($pdo, $db) { $stmt = $pdo->query(" SELECT ROUND(SUM(data_length + index_length) / 1024 / 1024 / 1024, 2) AS total_size_gb, SUM(table_rows) AS total_rows FROM information_schema.tables WHERE table_schema = '$db' "); $result = $stmt->fetch(); $sizeGb = $result['total_size_gb'] ?? '0'; $rows = $result['total_rows'] ?? '0'; $avgMb = ($rows > 0) ? round(($sizeGb * 1024) / $rows, 2) : 0; return [$sizeGb, $rows, $avgMb]; } list($dbSize, $rowCount, $avgRowMb) = getDbStats($pdo, $db); $message = ''; if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['fill'])) { $iterations = 1024; $data = str_repeat(random_bytes(1024), 1024); // 1MB $stmt = $pdo->prepare("INSERT INTO filler (data) VALUES (:data)"); for ($i = 0; $i < $iterations; $i++) { $stmt->execute([':data' => $data]); } list($dbSize, $rowCount, $avgRowMb) = getDbStats($pdo, $db); $message = "
✅ 1GB inserted into MariaDB successfully.
"; } ?>