從Linux命令行直接執(zhí)行MySQL/MariaDB查詢
如果您負責管理數(shù)據(jù)庫服務(wù)器,則可能需要不時運行查詢并仔細檢查它。雖然您可以從MySQL/MariaDB Shell執(zhí)行此操作,但此技巧將使您可以直接使用Linux命令行執(zhí)行MySQL/MariaDB查詢,并將輸出保存到文件中以供以后檢查(這在查詢返回時特別有用。很多記錄)。讓我們來看一些直接從命令行運行查詢的簡單示例,然后再轉(zhuǎn)向更高級的查詢。要查看服務(wù)器上的所有數(shù)據(jù)庫,可以發(fā)出以下命令:
- [linuxidc@localhost ~/www.linuxidc.com]$mysql -u root -p -e "show databases;"
- +--------------------+
- | Database |
- +--------------------+
- | idc_db |
- | information_schema |
- | linuxidc_db |
- | mysql |
- | performance_schema |
- | xxx_db |
- +--------------------+
接下來,要在數(shù)據(jù)庫linuxidc_db 中創(chuàng)建一個名為linuxceshi的數(shù)據(jù)庫表,請運行以下命令:
- [linuxidc@localhost ~/www.linuxidc.com]$mysql -u root -p -e "USE linuxidc_db ; CREATE TABLE linuxceshi(idc_id INT NOT NULL AUTO_INCREMENT, idc_title VARCHAR(100) NOT NULL, idc_author VARCHAR(40) NOT NULL, submissoin_date DATE, PRIMARY KEY (idc_id));"
查詢下表建好沒有
- [linuxidc@localhost ~/www.linuxidc.com]$mysql -u root -p -e "use linuxidc_db; desc linuxceshi;"
- +-----------------+--------------+------+-----+---------+----------------+
- | Field | Type | Null | Key | Default | Extra |
- +-----------------+--------------+------+-----+---------+----------------+
- | idc_id | int(11) | NO | PRI | NULL | auto_increment |
- | idc_title | varchar(100) | NO | | NULL | |
- | idc_author | varchar(40) | NO | | NULL | |
- | submissoin_date | date | YES | | NULL | |
- +-----------------+--------------+------+-----+---------+----------------+
我們將使用以下命令,并將輸出通過管道傳遞到tee命令,后跟要在其中存儲輸出的文件名。
為了進行說明,我們將使用一個名為linuxidc數(shù)據(jù)庫的linuxceshi表。請注意,系統(tǒng)將提示您輸入數(shù)據(jù)庫用戶的密碼:
- [linuxidc@localhost ~/www.linuxidc.com]$mysql -u root -p -e "use linuxidc_db; desc linuxceshi;" | tee linuxidc_chaxun.txt
借助cat命令查看查詢結(jié)果。
- [linuxidc@localhost ~/www.linuxidc.com]$mysql -u root -p -e "use linuxidc_db; desc linuxceshi;" | tee linuxidc_chaxun.txt
- Enter password:
- Field Type Null Key Default Extra
- idc_id int(11) NO PRI NULL auto_increment
- idc_title varchar(100) NO NULL
- idc_author varchar(40) NO NULL
- submissoin_date date YES NULL
- [linuxidc@localhost ~/www.linuxidc.com]$cat linuxidc_chaxun.txt
- Field Type Null Key Default Extra
- idc_id int(11) NO PRI NULL auto_increment
- idc_title varchar(100) NO NULL
- idc_author varchar(40) NO NULL
- submissoin_date date YES NULL
使用純文本文件的查詢結(jié)果,您可以使用其他命令行實用工具更輕松地處理記錄。
小結(jié)
本文已經(jīng)分享了一點Linux技巧,作為系統(tǒng)管理員,您可以在自動執(zhí)行日常Linux任務(wù)或更輕松地執(zhí)行它們方面發(fā)現(xiàn)有用的信息。