Hi!
Beim Aufruf von mysql musst du auch keine Datenbank/Schema angeben, wenn diese noch nicht da ist.
Die Fehlermeldung zeigt, dass es ein Problem mit den Benutzerrechten gibt. Wenn er es so macht (Datenbank neu anlgen) wird das Problem wieder auftreten, es sei denn $MYSQL_DESTINATION_USER hat das Recht neue Datenbanken anzulegen.
Stimmt, jetzt wo du es sagst ... Datenbanken anlegen sollte der Stino-User nicht unbedingt können. Dumpen und Restoren sind ja eigentlich auch Administratoren-Aufgaben, also was für den root oder einen Untertanen mit ausreichenden Rechten.
Mit $MYSQL_DESTINATION_USER='root' mag das passen. Ansonsten muss die Datenbank an sich existieren und $MYSQL_DESTINATION_USER muss das Recht haben neue Tabellen anzulegen, Tabellen zu löschen etc.
Auch das.
Die Fehlermeldung besagt aber:
ERROR 1044 (42000) at line 22: Access denied for user 'schemaY'@'%' to database 'schemaX'
besagt aber, er hat nicht einmal Zugriff auf die Datenbank 'schemaX'.
Sollte dort nicht vielleicht auch ein schemaX als Username übergeben werden? $MYSQL_DESTINATION_USER='schemaX'
Er will ja X gar nicht anlegen, sondern Y. Dazu muss das Create-X-Statement verschwinden oder in Y umgeschrieben werden (so er DBs anlegen darf und/oder Y nicht anderweitig angelegt wurde).
Lo!