MySQL Expect 是一個自動化工具,可以將交互式的 MySQL 任務自動化。它基于 Expect,它是一個像 Tcl 、Perl 和 Python 一樣的編程語言,可以模擬終端上的交互,例如交互式 Shell 或腳本。
#!/usr/bin/expect -f set timeout 10 set MYSQL [lindex $argv 0] set DBUSER [lindex $argv 1] set DBPASSWORD [lindex $argv 2] set DATAFILE [lindex $argv 3] spawn mysql -h localhost -u $DBUSER -p expect "Enter password:" { send "$DBPASSWORD\r" } expect "mysql>" { send "use $MYSQL;\r" } expect "mysql>" { send "source $DATAFILE\r" } expect "mysql>" { send "exit\r" }
上面的腳本可以用來執行一個 SQL 腳本,該腳本由指定的數據庫用戶使用指定的密碼,并且在指定的 MySQL 數據庫中使用。此腳本將指定的 SQL 腳本讀入,然后將 SQL 語句發送到 MySQL 環境中并執行。
MySQL Expect 可以用來自動化大量 MySQL 任務??梢允褂?Auto Expect 腳本生成器生成自動化腳本,以便輕松管理和定期執行任務。