fix: auto-import database script and Dockerfile update for Coolify deploy
This commit is contained in:
@@ -9,6 +9,7 @@ COPY 02/ /var/www/html/02/
|
|||||||
COPY 03/ /var/www/html/03/
|
COPY 03/ /var/www/html/03/
|
||||||
COPY final/ /var/www/html/final/
|
COPY final/ /var/www/html/final/
|
||||||
COPY project_final/ /var/www/html/project_final/
|
COPY project_final/ /var/www/html/project_final/
|
||||||
|
COPY database/ /var/www/html/database/
|
||||||
|
|
||||||
RUN chown -R www-data:www-data /var/www/html
|
RUN chown -R www-data:www-data /var/www/html
|
||||||
|
|
||||||
|
|||||||
@@ -4,11 +4,7 @@
|
|||||||
-- Import file ini jika ingin membuat ulang database dari awal.
|
-- Import file ini jika ingin membuat ulang database dari awal.
|
||||||
-- Perhatian: tabel lama dengan nama yang sama akan dihapus.
|
-- Perhatian: tabel lama dengan nama yang sama akan dihapus.
|
||||||
|
|
||||||
CREATE DATABASE IF NOT EXISTS webgis_db
|
-- Database selected via connection string
|
||||||
CHARACTER SET utf8mb4
|
|
||||||
COLLATE utf8mb4_unicode_ci;
|
|
||||||
|
|
||||||
USE webgis_db;
|
|
||||||
|
|
||||||
SET FOREIGN_KEY_CHECKS = 0;
|
SET FOREIGN_KEY_CHECKS = 0;
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,24 @@
|
|||||||
|
<?php
|
||||||
|
$host = '203.24.51.230';
|
||||||
|
$port = 33060;
|
||||||
|
$user = 'root';
|
||||||
|
$pass = 'oyMK5S18DMjHtOSVxoQWy2n0YASA5QJuyko00udOuneeijdiNFENgVG2ZMXFL36H';
|
||||||
|
|
||||||
|
$conn = mysqli_connect($host, $user, $pass, '', $port);
|
||||||
|
|
||||||
|
if (!$conn) {
|
||||||
|
die("Connection failed: " . mysqli_connect_error() . "\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
$sql = file_get_contents(__DIR__ . '/database/webgis_db.sql');
|
||||||
|
if (mysqli_multi_query($conn, $sql)) {
|
||||||
|
do {
|
||||||
|
if ($res = mysqli_store_result($conn)) {
|
||||||
|
mysqli_free_result($res);
|
||||||
|
}
|
||||||
|
} while (mysqli_more_results($conn) && mysqli_next_result($conn));
|
||||||
|
echo "Database imported successfully!\n";
|
||||||
|
} else {
|
||||||
|
echo "Error importing: " . mysqli_error($conn) . "\n";
|
||||||
|
}
|
||||||
|
mysqli_close($conn);
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
<?php
|
||||||
|
require_once __DIR__ . '/config/app.php';
|
||||||
|
|
||||||
|
$host = env('DB_HOST', 'localhost');
|
||||||
|
$port = env('DB_PORT', 3306);
|
||||||
|
$user = env('DB_USERNAME', 'root');
|
||||||
|
$pass = env('DB_PASSWORD', '');
|
||||||
|
$db = env('DB_DATABASE', 'webgis_db');
|
||||||
|
|
||||||
|
try {
|
||||||
|
$pdo = new PDO("mysql:host=$host;port=$port;dbname=$db;charset=utf8mb4", $user, $pass);
|
||||||
|
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||||
|
|
||||||
|
// Read SQL file
|
||||||
|
$sqlFile = __DIR__ . '/../database/webgis_db.sql';
|
||||||
|
if (!file_exists($sqlFile)) {
|
||||||
|
die("SQL file not found at: $sqlFile");
|
||||||
|
}
|
||||||
|
|
||||||
|
$sql = file_get_contents($sqlFile);
|
||||||
|
|
||||||
|
// Split into statements and execute
|
||||||
|
$pdo->exec($sql);
|
||||||
|
|
||||||
|
echo "Database imported successfully to $db at $host!";
|
||||||
|
} catch (PDOException $e) {
|
||||||
|
echo "Connection failed: " . $e->getMessage() . "\n";
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user