Mysql常用命令

寫在前面

最近在學習SQL注入烂斋,以sqli-labs練習础废,可是自己對MySQL感到很陌生评腺,故在此學習一下。

連接與退出MySQL

  1. 格式:mysql -h主機地址 -u用戶名 -p用戶密碼
  2. 連接到本機上的MySQL:
  • 首先打開DOS窗口蝶念,然后進入目錄mysql/bin芋绸,再鍵入命令mysql -u root -p媒殉,
    回車后提示你輸密碼。
  • 注意用戶名前可以有空格也可以沒有空格摔敛,但是密碼前必須沒有空格廷蓉,否則讓你重新輸入密碼。
  1. 連接到遠程主機上的MySQL马昙。假設遠程主機的IP為:110.110.110.110桃犬,用戶名為root,密碼為12345678。則鍵入以下命 令:mysql -h110.110.110.110 -u root -p 12345678 (注:u與root之間可以不用加空格行楞,其它也一樣)
  2. 退出MySQL命令: exit (回車)

常用命令

  1. 使用SHOW語句找出在服務器上當前存在什么數(shù)據庫:show databases;
  2. 創(chuàng)建一個數(shù)據庫: create database database_name;
  3. 選擇所要用的數(shù)據庫:use database_name; (按回車鍵出現(xiàn)Database changed 時說明操作成功)
  4. 查看現(xiàn)在的數(shù)據庫中存在什么表:show tables;
  5. 創(chuàng)建一個數(shù)據庫表:create table table_name (column1 類型 ,column2 類型,... );
  6. 顯示表的結構:describe table_name;
  7. 往表中加入記錄:insert into table_name values("value1","value2");
  8. 用文本方式將數(shù)據裝入數(shù)據庫表中(例如D:/mysql.txt):load data local infile “D:/mysql.txt” into table table_name;
  9. 導入.sql文件命令(例如D:/mysql.sql):source d:/mysql.sql;
  10. 刪除表:drop table tabe_name;
  11. 清空表:delete from table_name;
  12. 更新表中數(shù)據:update table_name set column1="value1" where column2='value2';
  13. 命令行修改root密碼:
  • 格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼攒暇。
  • 或者update mysql.user set password=PASSWORD('新密碼') where User='root'; 然后 flush privileges;
  1. 創(chuàng)建用戶,向表中添加用戶:例如insert into mysql.user(Host,User,Password) values(‘localhost’,'jeecn’,password(‘jeecn’)); 記得刷新系統(tǒng)權限表敢伸,flush privileges; 這樣就創(chuàng)建了一個名為:jeecn 密碼為:jeecn 的用戶扯饶。
  2. 為用戶授權:
  • 格式:grant 權限1,權限2,…權限n on 數(shù)據庫名稱.表名稱 to 用戶名@用戶地址 identified by ‘連接口令’;
  • 權限1,權限2,…權限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14個權限。
  • 權限1,權限2,…權限nall privileges或者all代替,表示賦予用戶全部權限尾序。
  • 數(shù)據庫名稱.表名稱*.*代替钓丰,表示賦予用戶操作服務器上所有數(shù)據庫所有表的權限。
  • 用戶地址可以是localhost每币,也可以是ip地址携丁、機器名字、域名兰怠。也可以用%表示從任何地址連接梦鉴。
  • 連接口令不能為空,否則創(chuàng)建失敗揭保。
  1. 刪除用戶:delete from user where User=”jeecn” and Host=”localhost”;
    注意:關于用戶的創(chuàng)建肥橙,更新,授權秸侣,刪除等存筏,執(zhí)行完相應操作后,需要刷新系統(tǒng)權限表味榛,flush privileges;
  2. 刪除數(shù)據庫 drop database database_name;

全局管理權限

FILE: 在MySQL服務器上讀寫文件椭坚。
PROCESS: 顯示或殺死屬于其它用戶的服務線程。
RELOAD: 重載訪問控制表搏色,刷新日志等善茎。
SHUTDOWN: 關閉MySQL服務。

數(shù)據庫/數(shù)據表/數(shù)據列權限:

ALTER: 修改已存在的數(shù)據表(例如增加/刪除列)和索引频轿。
CREATE: 建立新的數(shù)據庫或數(shù)據表垂涯。
DELETE: 刪除表的記錄。
DROP: 刪除數(shù)據表或數(shù)據庫略吨。
INDEX: 建立或刪除索引集币。
INSERT: 增加表的記錄。
SELECT: 顯示/搜索表的記錄翠忠。
UPDATE: 修改表中已存在的記錄鞠苟。

特別的權限:

ALL: 允許做任何事(和root一樣)。
USAGE: 只允許登錄–其它什么也不允許做秽之。


備份數(shù)據庫

  1. 導出整個數(shù)據庫:mysqldump -u user_name -p123456 database_name > outfile_name.sql
  2. 導出一個表:mysqldump -u user_name -p database_name table_name > outfile_name.sql
  3. 導出一個數(shù)據庫結構:mysqldump -u user_name -p -d --add-drop-table database_name > outfile_name.sql 其中当娱,-d: 沒有數(shù)據, --add-drop-table 在每個create語句之前增加一個drop table
  4. 帶語言參數(shù)導出:mysqldump -u -p --default-character-set=latin1 --set-charset=gbk --skip-opt database_name > outfile_name.sql

加深運用

  1. 根據已有的表創(chuàng)建新表:
  • create table tab_new like tab_old(使用舊表創(chuàng)建新表)

  • create table tab_new as select col1,col2… from tab_old definition only

  1. 增加一個列: Alter table tabname add column col type
    注:列增加后將不能刪除。列加上數(shù)據后類型也不能改變考榨,唯一能改變的是增加varchar類型的長度跨细。
  2. 添加主鍵:Alter table tabname add primary key(col) 刪除主鍵:Alter table tabname drop primary key(col)
  3. 創(chuàng)建索引:create [unique] index idxname on tabname(col….) 刪除索引:drop index idxname
    注:索引是不可更改的,想更改必須刪除重新建河质。
  4. 創(chuàng)建視圖:create view viewname as select statement 刪除視圖:drop view viewname
  5. 幾個簡單的基本的sql語句:
  • 選擇:select * from table1 where 范圍
  • 插入:insert into table1(field1,field2) values(value1,value2)
  • 刪除:delete from table1 where 范圍
  • 更新:update table1 set field1=value1 where 范圍
  • 查找:select * from table1 where field1 like ’%value1%’
  • 排序:select * from table1 order by field1,field2 [desc]
  • 總數(shù):select count as totalcount from table1
  • 求和:select sum(field1) as sumvalue from table1
  • 平均:select avg(field1) as avgvalue from table1
  • 最大:select max(field1) as maxvalue from table1
  • 最屑讲选:select min(field1) as minvalue from table1
  1. 幾個高級查詢運算詞:
  • UNION 運算符: UNION 運算符通過組合其他兩個結果表(例如 TABLE1 和 TABLE2)并消去表中任何重復行而派生出一個結果表震叙。當 ALL 隨 UNION 一起使用時(即 UNION ALL),不消除重復行散休。兩種情況下媒楼,派生表的每一行不是來自 TABLE1 就是來自 TABLE2。
  • EXCEPT 運算符: EXCEPT 運算符通過包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重復行而派生出一個結果表戚丸。當 ALL 隨 EXCEPT 一起使用時(EXCEPT ALL)划址,不消除重復行。
  • INTERSECT 運算符: INTERSECT 運算符通過只包括 TABLE1 和 TABLE2 中都有的行并消除所有重復行而派生出一個結果表限府。當 ALL 隨 INTERSECT 一起使用時(INTERSECT ALL)夺颤,不消除重復行。
    注:使用運算詞的幾個查詢結果行必須是一致的胁勺。
  1. 對數(shù)據庫進行操作:
  • 分離數(shù)據庫: sp_detach_db;
  • 附加數(shù)據庫:sp_attach_db 后接表明附加需要完整的路徑名
  1. 修改數(shù)據庫的名稱: sp_renamedb 'old_name', 'new_name'
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末世澜,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子署穗,更是在濱河造成了極大的恐慌宜狐,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蛇捌,死亡現(xiàn)場離奇詭異,居然都是意外死亡咱台,警方通過查閱死者的電腦和手機络拌,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來回溺,“玉大人春贸,你說我怎么就攤上這事∫抛瘢” “怎么了萍恕?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長车要。 經常有香客問我允粤,道長,這世上最難降的妖魔是什么翼岁? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任类垫,我火速辦了婚禮,結果婚禮上琅坡,老公的妹妹穿的比我還像新娘悉患。我一直安慰自己,他們只是感情好榆俺,可當我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布售躁。 她就那樣靜靜地躺著坞淮,像睡著了一般。 火紅的嫁衣襯著肌膚如雪陪捷。 梳的紋絲不亂的頭發(fā)上回窘,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天,我揣著相機與錄音揩局,去河邊找鬼毫玖。 笑死,一個胖子當著我的面吹牛凌盯,可吹牛的內容都是我干的付枫。 我是一名探鬼主播,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼驰怎,長吁一口氣:“原來是場噩夢啊……” “哼阐滩!你這毒婦竟也來了?” 一聲冷哼從身側響起县忌,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤掂榔,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后症杏,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體装获,經...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年厉颤,在試婚紗的時候發(fā)現(xiàn)自己被綠了穴豫。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡逼友,死狀恐怖精肃,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情帜乞,我是刑警寧澤司抱,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站黎烈,受9級特大地震影響习柠,放射性物質發(fā)生泄漏。R本人自食惡果不足惜怨喘,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一津畸、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧必怜,春花似錦肉拓、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽卑惜。三九已至,卻和暖如春驻售,著一層夾襖步出監(jiān)牢的瞬間露久,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工欺栗, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留毫痕,地道東北人。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓迟几,卻偏偏與公主長得像消请,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子类腮,可洞房花燭夜當晚...
    茶點故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內容

  • 1.導出整個數(shù)據庫 mysqldump -u 用戶名 -p –default-character-set=lati...
    往你頭上敲三下閱讀 599評論 1 10
  • MYSQL 基礎知識 1 MySQL數(shù)據庫概要 2 簡單MySQL環(huán)境 3 數(shù)據的存儲和獲取 4 MySQL基本操...
    Kingtester閱讀 7,780評論 5 116
  • 1.linux下啟動mysql的命令:mysqladmin start/ect/init.d/mysql star...
    ljwheyxy閱讀 387評論 0 2
  • 一臊泰、常用 MYSQL 命令1、啟動:net start mySql;2蚜枢、進入:mysql -u root -p/m...
    沈宥閱讀 412評論 0 3
  • 一. 連接MySQL 格式: mysql -h主機地址 -u用戶名 -p用戶密碼 或者: mysql -u 用戶名...
    java日記閱讀 412評論 0 3