Commit e28c2d79cd51a5901035415e479d6d0cdbc5871e
1 parent
fd080a89
KTS-2124
"Backup wizard no working on Linux" Fixed. Reviewed By: Kevin Fourie git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/trunk@6843 c91229c3-7414-0410-bfa2-8a42b809f60b
Showing
1 changed file
with
42 additions
and
19 deletions
setup/upgrade.php
| @@ -340,19 +340,33 @@ function create_backup_stmt($targetfile=null) | @@ -340,19 +340,33 @@ function create_backup_stmt($targetfile=null) | ||
| 340 | $adminPwd = $oKTConfig->get('db/dbAdminPass'); | 340 | $adminPwd = $oKTConfig->get('db/dbAdminPass'); |
| 341 | $dbHost = $oKTConfig->get('db/dbHost'); | 341 | $dbHost = $oKTConfig->get('db/dbHost'); |
| 342 | $dbName = $oKTConfig->get('db/dbName'); | 342 | $dbName = $oKTConfig->get('db/dbName'); |
| 343 | + | ||
| 343 | $dbPort = trim($oKTConfig->get('db/dbPort')); | 344 | $dbPort = trim($oKTConfig->get('db/dbPort')); |
| 344 | - if ($dbPort=='' || $dbPort=='default') $dbPort = get_cfg_var('mysql.default_port'); | ||
| 345 | - | 345 | + if (empty($dbPort) || $dbPort=='default') $dbPort = get_cfg_var('mysql.default_port'); |
| 346 | + if (empty($dbPort)) $dbPort='3306'; | ||
| 347 | + $dbSocket = trim($oKTConfig->get('db/dbSocket')); | ||
| 348 | + if (empty($dbSocket) || $dbSocket=='default') $dbSocket = get_cfg_var('mysql.default_socket'); | ||
| 349 | + if (empty($dbSocket)) $dbSocket='../tmp/mysql.sock'; | ||
| 350 | + | ||
| 346 | $date=date('Y-m-d-H-i-s'); | 351 | $date=date('Y-m-d-H-i-s'); |
| 347 | 352 | ||
| 348 | $dir=resolveMysqlDir(); | 353 | $dir=resolveMysqlDir(); |
| 349 | - | 354 | + |
| 350 | $info['dir']=$dir; | 355 | $info['dir']=$dir; |
| 351 | 356 | ||
| 352 | $prefix=''; | 357 | $prefix=''; |
| 353 | if (OS_UNIX) | 358 | if (OS_UNIX) |
| 354 | { | 359 | { |
| 355 | - $prefix= "./"; | 360 | + $prefix .= "./"; |
| 361 | + } | ||
| 362 | + | ||
| 363 | + if (@stat($dbSocket) !== false) | ||
| 364 | + { | ||
| 365 | + $mechanism="--socket=\"$dbSocket\""; | ||
| 366 | + } | ||
| 367 | + else | ||
| 368 | + { | ||
| 369 | + $mechanism="--port=\"$dbPort\""; | ||
| 356 | } | 370 | } |
| 357 | 371 | ||
| 358 | $tmpdir=resolveTempDir(); | 372 | $tmpdir=resolveTempDir(); |
| @@ -362,13 +376,12 @@ function create_backup_stmt($targetfile=null) | @@ -362,13 +376,12 @@ function create_backup_stmt($targetfile=null) | ||
| 362 | $targetfile="$tmpdir/kt-backup-$date.sql"; | 376 | $targetfile="$tmpdir/kt-backup-$date.sql"; |
| 363 | } | 377 | } |
| 364 | 378 | ||
| 365 | - | ||
| 366 | - $stmt = $prefix . "mysqldump --user=\"$adminUser\" -p --port=$dbPort \"$dbName\" > \"$targetfile\""; | 379 | + $stmt = $prefix . "mysqldump --user=\"$adminUser\" -p $mechanism \"$dbName\" > \"$targetfile\""; |
| 367 | $info['display']=$stmt; | 380 | $info['display']=$stmt; |
| 368 | $info['target']=$targetfile; | 381 | $info['target']=$targetfile; |
| 369 | 382 | ||
| 370 | 383 | ||
| 371 | - $stmt = $prefix. "mysqldump --user=\"$adminUser\" --password=\"$adminPwd\" --port=$dbPort \"$dbName\" > \"$targetfile\""; | 384 | + $stmt = $prefix. "mysqldump --user=\"$adminUser\" --password=\"$adminPwd\" $mechanism \"$dbName\" > \"$targetfile\""; |
| 372 | $info['cmd']=$stmt; | 385 | $info['cmd']=$stmt; |
| 373 | return $info; | 386 | return $info; |
| 374 | } | 387 | } |
| @@ -383,8 +396,11 @@ function create_restore_stmt($targetfile) | @@ -383,8 +396,11 @@ function create_restore_stmt($targetfile) | ||
| 383 | $dbName = $oKTConfig->get('db/dbName'); | 396 | $dbName = $oKTConfig->get('db/dbName'); |
| 384 | $dbPort = trim($oKTConfig->get('db/dbPort')); | 397 | $dbPort = trim($oKTConfig->get('db/dbPort')); |
| 385 | if ($dbPort=='' || $dbPort=='default')$dbPort = get_cfg_var('mysql.default_port'); | 398 | if ($dbPort=='' || $dbPort=='default')$dbPort = get_cfg_var('mysql.default_port'); |
| 399 | + if (empty($dbPort)) $dbPort='3306'; | ||
| 400 | + $dbSocket = trim($oKTConfig->get('db/dbSocket')); | ||
| 401 | + if (empty($dbSocket) || $dbSocket=='default') $dbSocket = get_cfg_var('mysql.default_socket'); | ||
| 402 | + if (empty($dbSocket)) $dbSocket='../tmp/mysql.sock'; | ||
| 386 | 403 | ||
| 387 | - | ||
| 388 | $dir=resolveMysqlDir(); | 404 | $dir=resolveMysqlDir(); |
| 389 | 405 | ||
| 390 | $info['dir']=$dir; | 406 | $info['dir']=$dir; |
| @@ -394,22 +410,30 @@ function create_restore_stmt($targetfile) | @@ -394,22 +410,30 @@ function create_restore_stmt($targetfile) | ||
| 394 | { | 410 | { |
| 395 | $prefix .= "./"; | 411 | $prefix .= "./"; |
| 396 | } | 412 | } |
| 397 | - | 413 | + |
| 414 | + if (@stat($dbSocket) !== false) | ||
| 415 | + { | ||
| 416 | + $mechanism="--socket=\"$dbSocket\""; | ||
| 417 | + } | ||
| 418 | + else | ||
| 419 | + { | ||
| 420 | + $mechanism="--port=\"$dbPort\""; | ||
| 421 | + } | ||
| 398 | 422 | ||
| 399 | $tmpdir=resolveTempDir(); | 423 | $tmpdir=resolveTempDir(); |
| 400 | 424 | ||
| 401 | - $stmt = $prefix ."mysqladmin --user=\"$adminUser\" -p --port=$dbPort drop \"$dbName\"<br>"; | ||
| 402 | - $stmt .= $prefix ."mysqladmin --user=\"$adminUser\" -p --port=$dbPort create \"$dbName\"<br>"; | 425 | + $stmt = $prefix ."mysqladmin --user=\"$adminUser\" -p $mechanism drop \"$dbName\"<br>"; |
| 426 | + $stmt .= $prefix ."mysqladmin --user=\"$adminUser\" -p $mechanism create \"$dbName\"<br>"; | ||
| 403 | 427 | ||
| 404 | 428 | ||
| 405 | - $stmt .= $prefix ."mysql --user=\"$adminUser\" -p --port=$dbPort \"$dbName\" < \"$targetfile\"\n"; | 429 | + $stmt .= $prefix ."mysql --user=\"$adminUser\" -p $mechanism \"$dbName\" < \"$targetfile\"\n"; |
| 406 | $info['display']=$stmt; | 430 | $info['display']=$stmt; |
| 407 | 431 | ||
| 408 | 432 | ||
| 409 | - $stmt = $prefix ."mysqladmin --user=\"$adminUser\" --force --password=\"$adminPwd\" --port=$dbPort drop \"$dbName\"\n"; | ||
| 410 | - $stmt .= $prefix ."mysqladmin --user=\"$adminUser\" --password=\"$adminPwd\" --port=$dbPort create \"$dbName\"\n"; | 433 | + $stmt = $prefix ."mysqladmin --user=\"$adminUser\" --force --password=\"$adminPwd\" $mechanism drop \"$dbName\"\n"; |
| 434 | + $stmt .= $prefix ."mysqladmin --user=\"$adminUser\" --password=\"$adminPwd\" $mechanism create \"$dbName\"\n"; | ||
| 411 | 435 | ||
| 412 | - $stmt .= $prefix ."mysql --user=\"$adminUser\" --password=\"$adminPwd\" --port=$dbPort \"$dbName\" < \"$targetfile\""; | 436 | + $stmt .= $prefix ."mysql --user=\"$adminUser\" --password=\"$adminPwd\" $mechanism \"$dbName\" < \"$targetfile\""; |
| 413 | $info['cmd']=$stmt; | 437 | $info['cmd']=$stmt; |
| 414 | return $info; | 438 | return $info; |
| 415 | } | 439 | } |
| @@ -608,13 +632,12 @@ document.location='?go=RestoreConfirm'; | @@ -608,13 +632,12 @@ document.location='?go=RestoreConfirm'; | ||
| 608 | 632 | ||
| 609 | function restoreConfirm() | 633 | function restoreConfirm() |
| 610 | { | 634 | { |
| 611 | - if (!isset($_SESSION['backupFile']) || !is_file($_SESSION['backupFile'])) | 635 | + if (!isset($_SESSION['backupFile']) || !is_file($_SESSION['backupFile']) || filesize($_SESSION['backupFile']) == 0) |
| 612 | { | 636 | { |
| 613 | restoreSelect(); | 637 | restoreSelect(); |
| 614 | exit; | 638 | exit; |
| 615 | } | 639 | } |
| 616 | - | ||
| 617 | - | 640 | + |
| 618 | title('Confirm Restore'); | 641 | title('Confirm Restore'); |
| 619 | $status = $_SESSION['backupStatus']; | 642 | $status = $_SESSION['backupStatus']; |
| 620 | $filename=$_SESSION['backupFile']; | 643 | $filename=$_SESSION['backupFile']; |
| @@ -908,7 +931,7 @@ function restore() | @@ -908,7 +931,7 @@ function restore() | ||
| 908 | $stmt=create_restore_stmt($filename); | 931 | $stmt=create_restore_stmt($filename); |
| 909 | $dir=$stmt['dir']; | 932 | $dir=$stmt['dir']; |
| 910 | 933 | ||
| 911 | - | 934 | + |
| 912 | 935 | ||
| 913 | 936 | ||
| 914 | if (is_file($dir . '/mysql') || is_file($dir . '/mysql.exe')) | 937 | if (is_file($dir . '/mysql') || is_file($dir . '/mysql.exe')) |