MySQL 中的常用工具

mysql(客戶端連接工具)

mysql[options][database]

這里的 options 表示 mysql 的可用選項(xiàng)怀偷,可以一次寫一個(gè)或者多個(gè)仔引,也可以不寫扔仓;database 表示連接的數(shù)據(jù)庫(kù),一次只能寫一個(gè)咖耘,如果不寫当辐,連接成功后需要用 use database 來(lái)進(jìn)入要操作的數(shù)據(jù)庫(kù)

有兩種表達(dá)方式:

  • -加選項(xiàng)單詞的縮寫字符,加選項(xiàng)值

      mysql --uroot
    
  • --加選項(xiàng)的完整單詞加=加選項(xiàng)的實(shí)際值

      mysql --user=root
    

要了解更多的選項(xiàng)鲤看,可以使用 mysql --help 命令查看

連接選項(xiàng)

-u 或者 --user=name 指定用戶名

-p 或者 --password[=name]指定密碼

-h 或者 --host=name 指定服務(wù)器 IP 或者域名

-P 或者 --port=# 指定連接端口

客戶端字符集選項(xiàng)

--default-character-set=character-name

執(zhí)行選項(xiàng)

-e 或者 --execute=name 執(zhí)行 SQL 語(yǔ)句并退出

此選項(xiàng)可以直接在 MySQL 客戶端執(zhí)行 SQL 語(yǔ)句缘揪,而不用連接到 MySQL 數(shù)據(jù)庫(kù)后再執(zhí)行

可以連續(xù)執(zhí)行多個(gè) SQL 語(yǔ)句,用分號(hào)隔開(kāi)

mysql -uroot -p -e"select * from dbtest.xixi;select * from dbtest.haha"

格式化選項(xiàng)

-E 或者 --vertical 將輸出方式按照字段順序豎著顯示义桂,類似于 SQL 語(yǔ)句后加 \G找筝,可以將輸出內(nèi)容比較多的行更清晰完整的顯示,經(jīng)常和 -e 選項(xiàng)一起使用

-s 或者 --silent 去掉 mysql 中的線條框顯示慷吊,字段之間用 tab 進(jìn)行分割袖裕,每條記錄顯示一行

錯(cuò)誤處理選項(xiàng)

-f 或者 --force 強(qiáng)制執(zhí)行 SQL

-v 或者 --verbose 顯示更多信息

--show-warnings 顯示警告信息

myisampack(MyISAM 表壓縮工具)

myisampack tname

壓縮后變成只讀表

mysqladmin(MySQL 管理工具)

mysqladmin 是一個(gè)執(zhí)行管理操作的客戶端程序「绕浚可以用它來(lái)檢查服務(wù)器的配置和當(dāng)前的狀態(tài)急鳄,創(chuàng)建并刪除數(shù)據(jù)庫(kù)等谤民。它的功能和 mysql 客戶端非常類似,主要區(qū)別在于它更側(cè)重于一些管理方面的功能疾宏,比如關(guān)閉數(shù)據(jù)庫(kù)

mysqladmin [options] command [command-options] [command [command-options]]...

mysqlbinlog(日志管理工具)

由于服務(wù)器生成的二進(jìn)制日志文件以二進(jìn)制格式保存张足,所以如果想要檢查這些文件的文本格式,就會(huì)用到 mysqlbinlog 日志管理工具

mysqlbinlog [options] log-files1 log-files2...

option 常用的選項(xiàng)如下:

-d 或者 --database=name 指定數(shù)據(jù)庫(kù)名稱坎藐,只列出指定的數(shù)據(jù)庫(kù)相關(guān)操作

-o 或者 --offset=# 忽略掉日志中的前 n 行命令

-r 或者 -result-file=name 將輸出的文本格式日志輸出到指定文件

-s 或者 -short-form 顯示簡(jiǎn)單格式为牍,省略掉一些信息

--set-charset=char-name 在輸出為文本格式時(shí),在文件的第一行加上 set names char-name

--start-datetime=name --stop-datetime=name 指定日期間隔內(nèi)的所有日志

--start-position=# --stop-position=# 指定位置間隔內(nèi)的所有日志

mysqlcheck(MyISM 表維護(hù)工具)

mysqlcheck 客戶端工具可以檢查和修復(fù) MyISAM 表岩馍,還可以優(yōu)化和分析表碉咆,實(shí)際上,它集成了 mysql 工具中的 check蛀恩,repair疫铜,analyze,optimize 的功能

mysqlcheck [options] dbname [table]
mysqlcheck [options] --database db1[db2 db3...]
mysqlcheck [options] --all-database

option 中有以下常用選項(xiàng):

-c 或者 --check 檢查表(默認(rèn))

-r 或者 --repair 修復(fù)表

-a 或者 --analyze 分析表

-o 或者 --optimize 優(yōu)化表

mysqldump(數(shù)據(jù)導(dǎo)出工具)

mysqldump 客戶端工具用來(lái)備份數(shù)據(jù)庫(kù)或在不同數(shù)據(jù)庫(kù)之間進(jìn)行數(shù)據(jù)遷移双谆。備份內(nèi)容包含創(chuàng)建表或裝載表的 SQL 語(yǔ)句

mysqldump [options] dbname [tables]
mysqldump [options] --database db1[db2 db3]...
mysqldump [options] --all-database

mysqldump --help 查看更詳細(xì)功能

輸出內(nèi)容選項(xiàng)

--add-drop-database 每個(gè)數(shù)據(jù)庫(kù)創(chuàng)建語(yǔ)句前加上 drop database 語(yǔ)句

--add-drop-table 在每個(gè)表創(chuàng)建語(yǔ)句前加上 drop table 語(yǔ)句

以上這兩個(gè)選項(xiàng)可以在導(dǎo)入數(shù)據(jù)庫(kù)時(shí)不用先手工刪除舊的數(shù)據(jù)庫(kù)壳咕,而是會(huì)自動(dòng)刪除,提高導(dǎo)入效率佃乘,但是導(dǎo)入前一定要做好備份并且確認(rèn)舊數(shù)據(jù)庫(kù)的確已經(jīng)可以刪除囱井,否則誤操作將會(huì)造成數(shù)據(jù)的損失驹尼。默認(rèn)情況下趣避,這兩個(gè)參數(shù)都是自動(dòng)加上的

-n 或者 --no-create-db 不包含數(shù)據(jù)庫(kù)的創(chuàng)建語(yǔ)句

-t 或者 --no-create-info 不包含數(shù)據(jù)表的創(chuàng)建語(yǔ)句

-d 或者 --no-data 不包含數(shù)據(jù)

輸出格式選項(xiàng)

--compact 使輸出結(jié)果簡(jiǎn)潔,不包括默認(rèn)選項(xiàng)中的各種注釋

-c 或者 --complete-insert 使得輸出文件中的 insert 語(yǔ)句包括字段名稱新翎,默認(rèn)不包括

-T 將指定數(shù)據(jù)表中的數(shù)據(jù)被分為單純的數(shù)據(jù)文本和建表 SQL 兩個(gè)文件

字符集選項(xiàng)

--default-character-set=name 可以設(shè)置導(dǎo)出的客戶端字符集

這個(gè)選項(xiàng)在導(dǎo)出數(shù)據(jù)庫(kù)的時(shí)候非常重要程帕,如果客戶端字符集和數(shù)據(jù)庫(kù)字符集不一致,數(shù)據(jù)在導(dǎo)出的時(shí)候就需要進(jìn)行字符集轉(zhuǎn)換地啰,將數(shù)據(jù)庫(kù)字符集轉(zhuǎn)換為客戶端字符集愁拭,經(jīng)過(guò)轉(zhuǎn)換后的數(shù)據(jù)很可能成為亂碼或者特殊字符,使得備份文件無(wú)法恢復(fù)

其他常用選項(xiàng)

-F 或者 --flush-logs:備份前刷新日志亏吝。加上此選項(xiàng)后岭埠,備份前將關(guān)閉舊日志,生成新日志蔚鸥。使得進(jìn)行恢復(fù)的時(shí)候直接從新日志開(kāi)始進(jìn)行重做惜论,大大方便了恢復(fù)過(guò)程

-l 或者 --lock-tables:給所有表加讀鎖≈古纾可以在備份期間使用馆类,使得數(shù)據(jù)無(wú)法被更新,從而使備份的數(shù)據(jù)保持一致性弹谁,可以配合 -F 選項(xiàng)一起使用

mysqlimport(數(shù)據(jù)導(dǎo)入工具)

用來(lái)導(dǎo)入 mysqldump 加 -T 選項(xiàng)后導(dǎo)出的文本文件乾巧。它實(shí)際上是客戶端提供了 load data infile 語(yǔ)句的一個(gè)命令行接口

mysqlimport [options] dbname textfile1 [textfile2]...

mysqlshow(數(shù)據(jù)庫(kù)對(duì)象查看工具)

用來(lái)很快的查找存在哪些數(shù)據(jù)庫(kù)句喜,數(shù)據(jù)庫(kù)中的表,表中的列或索引

mysqlshow [option] [dbname [tablename [colname]]]

如果不加任何選項(xiàng)沟于,默認(rèn)情況下會(huì)顯示所有數(shù)據(jù)庫(kù)

常用選項(xiàng):

--count:顯示數(shù)據(jù)庫(kù)和表的統(tǒng)計(jì)信息咳胃。如果不指定數(shù)據(jù)庫(kù),則顯示每個(gè)數(shù)據(jù)庫(kù)的名稱社裆,表數(shù)量拙绊,記錄數(shù)量;如果指定數(shù)據(jù)庫(kù)泳秀,則顯示指定數(shù)據(jù)庫(kù)的每個(gè)表名标沪,字段數(shù)量,記錄數(shù)量嗜傅;如果指定具體數(shù)據(jù)庫(kù)中的具體表金句,則顯示表的字段信息

-k 或者 --keys:顯示指定表中的所有索引

-i 或者 --status:顯示表的一些狀態(tài)信息

perror(錯(cuò)誤代碼查看工具)

perror [options] [errorcode [errorcode...]]

replace(文本替換工具)

replace from to [from to]... -- file [file]...
replace from to [from to]... < file

-- 表示字符串結(jié)束,文件的開(kāi)始吕嘀,可以跟多個(gè)源文件违寞,替換完畢后會(huì)覆蓋原文件

< 表示后面的文件作為輸入,替換后的文本顯示在標(biāo)準(zhǔn)輸出上偶房,不會(huì)覆蓋原文件

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末趁曼,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子棕洋,更是在濱河造成了極大的恐慌挡闰,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掰盘,死亡現(xiàn)場(chǎng)離奇詭異摄悯,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)愧捕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門奢驯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人次绘,你說(shuō)我怎么就攤上這事瘪阁。” “怎么了邮偎?”我有些...
    開(kāi)封第一講書人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵管跺,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我钢猛,道長(zhǎng)伙菜,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任命迈,我火速辦了婚禮贩绕,結(jié)果婚禮上火的,老公的妹妹穿的比我還像新娘。我一直安慰自己淑倾,他們只是感情好馏鹤,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著娇哆,像睡著了一般湃累。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上碍讨,一...
    開(kāi)封第一講書人閱讀 48,970評(píng)論 1 284
  • 那天治力,我揣著相機(jī)與錄音,去河邊找鬼勃黍。 笑死宵统,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的覆获。 我是一名探鬼主播马澈,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼弄息!你這毒婦竟也來(lái)了痊班?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤摹量,失蹤者是張志新(化名)和其女友劉穎涤伐,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體荆永,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡废亭,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年国章,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了具钥。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡液兽,死狀恐怖骂删,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情四啰,我是刑警寧澤宁玫,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布,位于F島的核電站柑晒,受9級(jí)特大地震影響欧瘪,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜匙赞,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一佛掖、第九天 我趴在偏房一處隱蔽的房頂上張望妖碉。 院中可真熱鬧,春花似錦芥被、人聲如沸欧宜。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)冗茸。三九已至,卻和暖如春匹中,著一層夾襖步出監(jiān)牢的瞬間夏漱,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來(lái)泰國(guó)打工顶捷, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留麻蹋,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓焊切,卻偏偏與公主長(zhǎng)得像扮授,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子专肪,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • MySQL 數(shù)據(jù)庫(kù)常用命令 1刹勃、MySQL常用命令 create database name; 創(chuàng)建數(shù)據(jù)庫(kù) use...
    55lover閱讀 4,772評(píng)論 1 57
  • MySQL技術(shù)內(nèi)幕:InnoDB存儲(chǔ)引擎(第2版) 姜承堯 第1章 MySQL體系結(jié)構(gòu)和存儲(chǔ)引擎 >> 在上述例子...
    沉默劍士閱讀 7,389評(píng)論 0 16
  • MySQL物理文件組成——日志文件——錯(cuò)誤日志(Error Log) 錯(cuò)誤日志記錄了MyQL服務(wù)器運(yùn)行過(guò)程中所有較...
    每天學(xué)點(diǎn)編程閱讀 2,240評(píng)論 0 12
  • 什么是數(shù)據(jù)庫(kù)? 數(shù)據(jù)庫(kù)是存儲(chǔ)數(shù)據(jù)的集合的單獨(dú)的應(yīng)用程序嚎尤。每個(gè)數(shù)據(jù)庫(kù)具有一個(gè)或多個(gè)不同的API荔仁,用于創(chuàng)建,訪問(wèn)芽死,管理...
    chen_000閱讀 4,030評(píng)論 0 19
  • 一大早起來(lái)乏梁,公寓租的宿舍很干凈,其它室友都早早的上班去了关贵。5個(gè)床位遇骑,唯獨(dú)她的最亂。因?yàn)樗X(jué)得亂并不代表臟揖曾,整齊并不...
    gayeong閱讀 276評(píng)論 0 0