Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie erstelle ich eine MySQL-Datenbank aus einer Dump-Datei im Expect/TCL-Skript?

spawn unterstützt den < nicht Richtung, aber Sie können so vorgehen:

spawn sh -c "mysql -u root -h localhost -proot dbTest < temp.sql"

Anscheinend möchten Sie mysql ausführen auf nicht-interaktive Weise, sodass Sie auch Expect verwenden können 's system Befehl:

system "mysql -u root -h localhost -proot dbTest < temp.sql"

oder Tcl 's exec Befehl:

exec mysql -u root -h localhost -proot dbTest < temp.sql >@ stdout 2>@ stderr

Möglicherweise müssen Sie das gesamte system einfügen oder exec Befehl in einem catch Block für den Fall, dass mysql schlägt fehl:

catch {system "mysql ..."} catched
# or
catch {exec mysql ...} catched