Mysql批處理

來源:互聯網
上載者:User

標籤:

在批處理模式 下使用mysql在前面的章節中,你互動式地使用 mysql輸入查詢並且查看結果。你也可以以批模式運行 mysql。為了做到這些,把你想要啟動並執行命令放在一個檔案中,然後告訴 mysql從檔案讀取它的輸入:
shell> mysql < batch-file

如果在Windows下運行mysql,並且檔案中有一些可以造成問題的特殊字元,可以這樣操作:

C:\> mysql -e "source batch-file"

如果你需要在命令列上指定串連參數,命令應為:

shell> mysql -h host -u user -p < batch-file
Enter password: ********

當這樣操作mysql時,則建立一個指令檔,然後執行指令碼。

如果你想在語句出現錯誤的時候仍想繼續執行指令碼,則應使用--force命令列選項。

為什麼要使用一個指令碼?有很多原因:

  • 如果你需要重複執行查詢(比如說,每天或每周),可以把它編成一個指令碼,則每次執行時不必重新鍵入。
  • 可以通過拷貝並編輯指令檔從類似的現有的查詢產生一個新查詢。
  • 當你正在開發查詢時,批模式也是很有用的,特別對多行命令或多語句命令序列。如果你犯了一個錯誤,你不必重新輸入所有內容,只需要編輯指令碼來改正錯誤,然後告訴mysql再次執行指令碼。
  • 如果你有一個產生多個輸出的查詢,你可以通過一個分頁器而不是盯著它翻屏到螢幕的頂端來運行輸出:
·                shell> mysql < batch-file | more
  • 你可以捕捉檔案中的輸出以便進行進一步的處理:
·                shell> mysql < batch-file > mysql.out
  • 你可以將指令碼分發給另外的人,以便他們也能運行命令。
  • 某些情況不允許互動地使用,例如, 當你從一個cron任務中執行查詢時。在這種情況下,你必須使用批模式。

當你以批模式運行mysql時,比起你互動地使用它時,其預設輸出格式是不同的(更簡明些)。例如,當互動式運行SELECT DISTINCT species FROM pet時,輸出應為:

 

+---------+
| species |
+---------+
| bird    |
| cat     |
| dog     |
| hamster |
| snake   |
+---------+

但是當以批模式運行時,輸出應為:

species
bird
cat
dog
hamster
snake

如果你想要在批模式中得到互動輸出格式,使用mysql -t。為了回顯以輸出被執行的命令,使用mysql -vvv。

你還可以使用原始碼或 \.命令從mysql提示符運行指令碼:

mysql> source filename;
mysql> \. filename

e.g 在d:\1.txt

show databses;

select * from menagerie.pet;

然後通過執行mysql -hlocalhost -uroot -p <d:1.txt

執行結果如下所示:

或者我們可以直接將批次檔輸出到指定路徑下以檔案的形式儲存,

C:\Users\David>mysql -hlocalhost -uroot -p123 <d:\1.txt>mysql.out

 同樣的為了方便操作,可以這樣執行,

 也可以這樣執行,

Mysql批處理

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.