Mysql數(shù)據(jù)庫(kù)的增刪改查、備份、還原等基本操作大全
創(chuàng)建數(shù)據(jù)庫(kù)的時(shí)候,有兩個(gè)編碼集:
1.數(shù)據(jù)庫(kù)編碼集——數(shù)據(jù)庫(kù)未來(lái)存儲(chǔ)數(shù)據(jù)
2.數(shù)據(jù)庫(kù)校驗(yàn)集——支持?jǐn)?shù)據(jù)庫(kù)進(jìn)行字段比較使用的編碼,本質(zhì)也是一種讀取數(shù)據(jù)庫(kù)中數(shù)據(jù)采用的編碼格式
數(shù)據(jù)庫(kù)無(wú)論對(duì)數(shù)據(jù)做任何操作,都必須保證操作和編碼必須是匹配的的,防止亂碼
1.1.1 查看系統(tǒng)默認(rèn)字符集以及校驗(yàn)規(guī)則show variables like 'character_set_database';//查看默認(rèn)字符集show variables like 'collation_database';//查看默認(rèn)校驗(yàn)規(guī)則show charset; 查看數(shù)據(jù)庫(kù)支持的字符集
show collation; 查看數(shù)據(jù)庫(kù)支持的字符集校驗(yàn)規(guī)則
1.1.2 默認(rèn)方式建立數(shù)據(jù)庫(kù)if not exists:如果不存在就創(chuàng)建,存在就返回waring
關(guān)鍵語(yǔ)句
charset=utf8/設(shè)置字符集*/ collate utf8_general_ci/*設(shè)置校驗(yàn)規(guī)則*/上篇文章中說(shuō)道數(shù)據(jù)庫(kù)的本質(zhì)就是一個(gè)目錄,那么直接在指定文件夾下建立一個(gè)目錄通過(guò)show databases也是可以查到的,但是不建議這么做
前面提到了show databases顯示mysql下的所有數(shù)據(jù)庫(kù)
2.2 顯示數(shù)據(jù)庫(kù)的創(chuàng)建語(yǔ)句show create database 數(shù)據(jù)庫(kù)名;/…/不是注釋,他表示如果mysql版本大于4.01,d2創(chuàng)建語(yǔ)句就變成了
CREATE DATABASEd2 DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
3.2 顯示目前處于那個(gè)數(shù)據(jù)庫(kù)select database();對(duì)數(shù)據(jù)庫(kù)的修改主要指的是修改數(shù)據(jù)庫(kù)的字符集,校驗(yàn)規(guī)則
如下圖,數(shù)據(jù)庫(kù)d2原本校驗(yàn)編碼是utf8_bin,通過(guò)ALTER修改其校驗(yàn)碼為utf8
如果存在數(shù)據(jù)庫(kù),就刪除
DROP DATABASE [IF EXISTS] db_ name;執(zhí)行刪除之后的結(jié)果:
數(shù)據(jù)庫(kù)內(nèi)部看不到對(duì)應(yīng)的數(shù)據(jù)庫(kù)對(duì)應(yīng)的數(shù)據(jù)庫(kù)文件夾被刪除,級(jí)聯(lián)刪除,里面的數(shù)據(jù)表全部被刪
注意:不要隨意刪除數(shù)據(jù)庫(kù),否則你就會(huì)成為3個(gè)月獲得60萬(wàn)的男人
五、補(bǔ)充:校驗(yàn)規(guī)則對(duì)數(shù)據(jù)庫(kù)的影響前面提到的編碼集在數(shù)據(jù)庫(kù)中有什么作用呢?通過(guò)一個(gè)案例觀察一下
創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),校驗(yàn)規(guī)則使用utf8_ general_ ci[不區(qū)分大小寫]
區(qū)分大小寫的查詢以及結(jié)果[utf8_ bin]
前面說(shuō)道,數(shù)據(jù)庫(kù)的本質(zhì)就是linux下一個(gè)文件目錄,最簡(jiǎn)單的方法就是直接復(fù)制那個(gè)目錄,但是這種方式可移植性不太好,下面來(lái)介紹一下常用的備份方式
mysqldump -P3306 -u root -p 密碼 -B 數(shù)據(jù)庫(kù)名 > 數(shù)據(jù)庫(kù)備份存儲(chǔ)的文件路徑第一步:備份數(shù)據(jù)庫(kù)
sql文件里不僅僅備份了數(shù)據(jù)庫(kù)內(nèi)的數(shù)據(jù),之前的有效操作也一并備份了
第二步:刪除數(shù)據(jù)庫(kù)
第三步:恢復(fù)數(shù)據(jù)庫(kù)
如果備份一個(gè)數(shù)據(jù)庫(kù)時(shí),沒有帶上-B參數(shù),在恢復(fù)數(shù)據(jù)庫(kù)時(shí),需要先創(chuàng)建空數(shù)據(jù)庫(kù),然后使用(use db_name)數(shù)據(jù)庫(kù),再使用source來(lái)還原
到此這篇關(guān)于Mysql數(shù)據(jù)庫(kù)的增刪改查、備份、還原等基本操作的文章就介紹到這了,更多相關(guān)mysql增刪改查、備份、還原內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
