程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 用expect免密碼進入MySQL命令模式

用expect免密碼進入MySQL命令模式

編輯:關於MYSQL數據庫

      一般情況下,我們想要進入MySQL命令模式總是需要按如下交互輸入密碼確認,才能進入命令行模式:

      zhanhailiang@linux-06bq:~> mysql -u sl -p

      Enter password:

      其實我們完全可以使用expect編寫腳本,來通來expect與shell交互通信來實現免密碼登錄:

      zhanhailiang@linux-06bq:~> cat mysql.sh

      #!/usr/local/bin/expect

      spawn /usr/local/services/mysql/bin/mysql -u sl -p

      expect {

      "assword" { send "slr" }

      }

      interact

      其實這段腳本的意思就是說“執行/usr/local/services/mysql/bin/mysql -u sl -p,等待響應,若匹配assword,則發送sl(即MySQL用戶登錄密碼),回車,模擬用戶手工操作”。

      編寫完mysql.sh腳本後,賦予執權限,然後就可以通過執行mysql.sh來免密碼進入MySQL命令行模式。

      zhanhailiang@linux-06bq:~> chmod +x mysql.sh

      zhanhailiang@linux-06bq:~> ./mysql.sh

      spawn /usr/local/services/mysql/bin/mysql -u sl -p

      Enter password:

      Welcome to the MySQL monitor. Commands end with ; or g.

      Your MySQL connection id is 12912

      Server version: 5.5.14-log MySQL Community Server (GPL)

      Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

      Oracle is a registered trademark of Oracle Corporation and/or its

      affiliates. Other names may be trademarks of their respective

      owners.

      Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

      mysql>

      注:expect擁有眾多的參數及豐富的應用場景,有興趣的同學請自行查看man手冊或其它資料。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved