程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
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