Ich konnte meinen ähnlichen Befehl mit folgendem Ansatz zum Laufen bringen:
msdeploy.exe -verb=sync "-source=dbFullSql=Server=THESERVER;Database=myDB;UID=sa;Pwd=saPwd" -dest=dbFullSql=c:\temp\test.sql
Für Ihren Befehl (nicht, dass das jetzt viel helfen würde), würde die Sache etwa so aussehen:
msdeploy.exe -verb=sync "-source=dbfullsql=Server=mysource;Trusted_Connection=false;UID=sa;Pwd=sapass!;Database=mydb;" "-dest=dbfullsql=Server=mydestsource;Trusted_Connection=false;UID=sa;Pwd=sapass!;Database=mydb;",computername=10.10.10.10,username=administrator,password=adminpass
Die wichtigsten Punkte sind:
- Verwenden Sie Anführungszeichen für das Quellargument, und entfernen Sie die eingebetteten Anführungszeichen für die Verbindungszeichenfolge
- Verwenden Sie beim Aufbau der SQL-Verbindungszeichenfolge die alternativen Schlüsselnamen, die keine Leerzeichen enthalten. Verwenden Sie beispielsweise "UID" anstelle von "User Id", "Server" anstelle von "Data Source", "Trusted_Connection" anstelle von "Integrated Security", und so weiter. Bei mir hat es erst funktioniert, als ich alle Leerzeichen aus der Verbindungszeichenfolge entfernt habe.
Ich habe nicht versucht, den Teil "computername" am Ende der Befehlszeile hinzuzufügen, aber ich hoffe, dass diese Information anderen Lesern hilft, ihrem gewünschten Ergebnis näher zu kommen.