@@ -38,7 +38,7 @@ public function handle(): bool
38
38
$ mysqldumpSkipTzUtc = config ('dbsync.mysqldumpSkipTzUtc ' ) ? '--skip-tz-utc ' : '' ;
39
39
40
40
$ targetConnection = config ('dbsync.targetConnection ' );
41
-
41
+
42
42
$ localUsername = config ('database.connections.mysql.username ' );
43
43
$ localPassword = config ('database.connections.mysql.password ' );
44
44
$ localHostname = config ('database.connections.mysql.host ' );
@@ -59,28 +59,32 @@ public function handle(): bool
59
59
$ ignoreString .= " --ignore-table= $ database. $ name " ;
60
60
}
61
61
62
+ $ totalSteps = 2 ;
63
+ $ progressBar = $ this ->output ->createProgressBar ($ totalSteps );
64
+
62
65
if ($ useSsh === true ) {
63
66
echo ($ mysqlHostName . PHP_EOL );
64
- exec ("ssh $ sshUsername@ $ host -p $ sshPort mysqldump -P $ port -h $ mysqlHostName -u $ username -p $ password $ database $ ignoreString > $ fileName " , $ output );
67
+ exec ("ssh $ sshUsername@ $ host -p $ sshPort mysqldump --single-transaction --set-gtid-purged=OFF --port= $ port --host= $ mysqlHostName --user= $ username --password= $ password $ database $ ignoreString > $ fileName " , $ output );
65
68
} else {
66
- exec ("mysqldump -h $ host -P $ port -u $ username -p $ password $ database $ ignoreString $ mysqldumpSkipTzUtc --column-statistics=0 > $ fileName " , $ output );
69
+ exec ("mysqldump --single-transaction --set-gtid-purged=OFF --port= $ port --host= $ mysqlHostName --user= $ username --password= $ password $ database $ ignoreString $ mysqldumpSkipTzUtc --column-statistics=0 > $ fileName " , $ output );
67
70
}
68
71
69
- $ this -> comment ( implode ( PHP_EOL , $ output ) );
72
+ $ progressBar -> advance ( );
70
73
71
- if ($ importSqlFile === true ) {
72
- $ command = $ localPassword
73
- ? "$ localMysqlPath -u $ localUsername -h $ localHostname -p $ localPassword -P $ localPort $ localDatabase < $ fileName "
74
- : "$ localMysqlPath -u $ localUsername -h $ localHostname -P $ localPort $ localDatabase < $ fileName " ;
75
- exec ($ command , $ output );
76
- }
74
+ $ command = $ localPassword
75
+ ? "$ localMysqlPath -u $ localUsername -h $ localHostname -p $ localPassword -P $ localPort $ localDatabase < $ fileName "
76
+ : "$ localMysqlPath -u $ localUsername -h $ localHostname -P $ localPort $ localDatabase < $ fileName " ;
77
+ exec ($ command , $ output );
78
+
79
+ $ progressBar ->advance ();
80
+ $ progressBar ->finish ();
77
81
78
82
if ($ removeFileAfterImport === true ) {
79
83
unlink ($ fileName );
80
84
}
81
85
}
82
86
83
- $ this ->comment (' DB Synced' );
87
+ $ this ->comment ("\n DB Synced" );
84
88
85
89
return true ;
86
90
}
0 commit comments