From 347b4fe52d1f50a328cbce8506b4f4acb4afbab1 Mon Sep 17 00:00:00 2001 From: Mirko Date: Mon, 19 Dec 2022 15:44:13 +0100 Subject: [PATCH] add --skip-tz-utc option to mysqldump --- README.md | 5 +++++ config/dbsync.php | 2 ++ src/Console/DbSyncCommand.php | 3 ++- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4f390a9..8eee2aa 100644 --- a/README.md +++ b/README.md @@ -68,6 +68,11 @@ To specify a different local database connection: LOCAL_TARGET_CONNECTION=different_mysql_connection ``` +For only mysqldump: +``` +REMOTE_MYSQLDUMP_SKIP_TZ_UTC=true +``` + ## Usage To export a remote database to OVERRIDE your local database by running: diff --git a/config/dbsync.php b/config/dbsync.php index 3f54f97..86dcf13 100755 --- a/config/dbsync.php +++ b/config/dbsync.php @@ -66,4 +66,6 @@ * Sets the target databse connection */ 'targetConnection' => env('LOCAL_TARGET_CONNECTION', 'mysql'), + + 'mysqldumpSkipTzUtc' => env('REMOTE_MYSQLDUMP_SKIP_TZ_UTC', false), ]; diff --git a/src/Console/DbSyncCommand.php b/src/Console/DbSyncCommand.php index f1bad13..58936f6 100644 --- a/src/Console/DbSyncCommand.php +++ b/src/Console/DbSyncCommand.php @@ -34,6 +34,7 @@ public function handle(): bool $importSqlFile = config('dbsync.importSqlFile'); $removeFileAfterImport = config('dbsync.removeFileAfterImport'); $fileName = $this->option('filename') ?? config('dbsync.defaultFileName'); + $mysqldumpSkipTzUtc = config('dbsync.mysqldumpSkipTzUtc') ? '--skip-tz-utc' : ''; $targetConnection = config('dbsync.targetConnection'); @@ -53,7 +54,7 @@ public function handle(): bool if ($useSsh === true) { exec("ssh $sshUsername@$host -p$sshPort mysqldump -P$port -u$username -p$password $database $ignoreString > $fileName", $output); } else { - exec("mysqldump -h$host -P$port -u$username -p$password $database $ignoreString --column-statistics=0 > $fileName", $output); + exec("mysqldump -h$host -P$port -u$username -p$password $database $ignoreString $mysqldumpSkipTzUtc --column-statistics=0 > $fileName", $output); } $this->comment(implode(PHP_EOL, $output));