MySQL數(shù)據(jù)庫技術(shù)與應(yīng)用(慕課版)課后習(xí)題答案_第1頁
MySQL數(shù)據(jù)庫技術(shù)與應(yīng)用(慕課版)課后習(xí)題答案_第2頁
MySQL數(shù)據(jù)庫技術(shù)與應(yīng)用(慕課版)課后習(xí)題答案_第3頁
MySQL數(shù)據(jù)庫技術(shù)與應(yīng)用(慕課版)課后習(xí)題答案_第4頁
MySQL數(shù)據(jù)庫技術(shù)與應(yīng)用(慕課版)課后習(xí)題答案_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第1章數(shù)據(jù)庫概述1.填空題(1)Oracle(2)U1U2U4U(3)體積小、安裝成本低、速度快、源碼開放(4)Memcached、Redis、mongoDB(5)大、中、小型網(wǎng)站中2.選擇題(1)A(2)B(3)A(4)A(5)D3.簡答題(1)常見的關(guān)系型數(shù)據(jù)庫有MySQL、Oracle、SQLServer和Access數(shù)據(jù)庫。MySQL數(shù)據(jù)庫主要應(yīng)用在廣泛地應(yīng)用到互聯(lián)網(wǎng)上的大、中、小型網(wǎng)站中;Oracle數(shù)據(jù)庫主要應(yīng)用在傳統(tǒng)大企業(yè)、政府機(jī)構(gòu)、金融機(jī)構(gòu)、證券機(jī)構(gòu)等;SQLServer數(shù)據(jù)庫主要應(yīng)用在部分電商和使用Windows服務(wù)器平臺的企業(yè);Access數(shù)據(jù)庫早期應(yīng)用于小型程序系統(tǒng)ASP+Access、系統(tǒng)留言板、校友錄等。(2)關(guān)系型數(shù)據(jù)庫按照結(jié)構(gòu)化的方法存儲數(shù)據(jù),具備縱向擴(kuò)展能力,采用結(jié)構(gòu)化查詢語言,強(qiáng)調(diào)ACID規(guī)則,強(qiáng)調(diào)數(shù)據(jù)的強(qiáng)一致性,可以控制事務(wù)原子性細(xì)粒度,并且一旦操作有誤或者有需要,可以回滾事務(wù)。非關(guān)系型數(shù)據(jù)庫不需要固定的表結(jié)構(gòu),一般情況下也不存在對數(shù)據(jù)的連續(xù)操作。不同點(diǎn):關(guān)系型數(shù)據(jù)庫使用表結(jié)構(gòu),非關(guān)系型的數(shù)據(jù)庫格式靈活。關(guān)系型數(shù)據(jù)庫支持SQL語言,支持事務(wù),非關(guān)系型數(shù)據(jù)庫不提供SQL語言,無事務(wù)處理。相對于關(guān)系型數(shù)據(jù)庫,非關(guān)系型數(shù)據(jù)庫在大數(shù)據(jù)存取上具備無法比擬的性能優(yōu)勢。(3)應(yīng)該注意MySQL的版本和開發(fā)人員使用的版本。第2章環(huán)境的安裝與基本配置1.填空題(1)UbuntuCentOSRedHat(2)RPM包二進(jìn)制包源碼包(3)僅主機(jī)模式NAT模式橋接模式(4)數(shù)據(jù)庫語言(5)Mysqladmin、mysqldump等命令2.選擇題(1)A(2)B(3)B(4)D(5)D3.簡答題(1)在企業(yè)中應(yīng)該使用源碼編譯方式安裝MySQL,使用源碼安裝在編譯安裝過程可以設(shè)定參數(shù),按照需求,進(jìn)行安裝,并且安裝的版本,可以自己選擇,靈活性比較大。(2)VMware虛擬平臺提供3種網(wǎng)絡(luò)模式。僅主機(jī)模式:本機(jī)作為路由器給你的虛擬機(jī)分配一個(gè)IP,將虛擬機(jī)與外網(wǎng)隔開,使得虛擬機(jī)成為一個(gè)獨(dú)立的系統(tǒng),只與主機(jī)通信,虛擬系統(tǒng)和真實(shí)的網(wǎng)絡(luò)是被隔開的。適合在地址緊張的時(shí)候使用。NAT模式:NAT是虛擬機(jī)中默認(rèn)的網(wǎng)絡(luò)配置,用于共享主機(jī)的P地址,相當(dāng)于虛擬系統(tǒng)把物理主機(jī)作為路由器訪問互聯(lián)網(wǎng),虛擬機(jī)和主機(jī)在共享一個(gè)P地址。橋接模式:直接連接物理網(wǎng)絡(luò)。在此模式下虛擬機(jī)相當(dāng)于一臺新的.獨(dú)立的計(jì)算機(jī),可以分配到獨(dú)立的IP(與主機(jī)的P相同網(wǎng)段)。(3)第一,要手動下載安裝依賴包。第二,如果編譯中途失敗,需要刪除cmake生成的預(yù)編譯配置參數(shù)的緩存文件和make編譯后生成的文件,再重新編譯。第三,編譯過程需要消耗大量的系統(tǒng)資源,如果編譯不通過,建議將系統(tǒng)內(nèi)存調(diào)至2GB以上。第四,復(fù)制可執(zhí)行文件到指定的目錄下,并修改名字為mysqld,授予執(zhí)行權(quán)限,設(shè)置開機(jī)自啟。第五,服務(wù)啟動完成后,檢查MySQL的服務(wù)狀態(tài)和端口占用情況,驗(yàn)證MySQL源碼編譯安裝是否成功。第3章MySQL數(shù)據(jù)操作1.填空題(1)SELECT(2)指定數(shù)據(jù)(3)WHERE(4)存儲固定長度的字符串(5)取值范圍2.選擇題(1)B(2)A(3)B(4)A(5)C3.簡答題(1)MySQL支持的數(shù)值類型有TINYINT、SMALLINT、MEDIUMINT、INT/INTEGER、BIGINT、FLOAT和DOUBLE。(2)數(shù)值類型分為整數(shù)類型、浮點(diǎn)類型、定點(diǎn)數(shù)類型、位類型。(3)修改字段名的語法格式如下。ALTERTABLE表名CHANGE原字段名新字段名新數(shù)據(jù)類型。第4章數(shù)據(jù)庫單表查詢1.填空題(1)SELECT...FROM...(2)(3)(4)(5)2.選擇題(1)C(2)C(3)A(4)B(5)A3.簡答題(1)關(guān)系運(yùn)算符中“=”表示等于,“!=”表示不等于,“<>”表示不等于,“<”表示小于,“<=”表示小于等于,“>”表示大于,“>=”表示大于等于。(2)AND關(guān)鍵字表示“與”(&),即同時(shí)滿足多個(gè)條件。OR關(guān)鍵字表示“或”(||),過濾時(shí)只要滿足其中一個(gè)査詢條件即可。(3)聚合函數(shù)中COUNT()函數(shù)用于返回某列的行數(shù),SUM()函數(shù)用于返回某列值的和,AVG()函數(shù)用于返回某列的平均值,MAX()函數(shù)用于返回某列的最大值,MIN()函數(shù)用于返回某列的最小值。所有字段WHERELIMITCOUNT()第5章數(shù)據(jù)的完整性1.填空題(1)唯一組合(2)NULL(3)加快對數(shù)據(jù)的訪問速度、保證數(shù)據(jù)庫表中每一行數(shù)據(jù)的唯一性、表和表之間的連接、減少查詢中分組和排序的時(shí)間(4)實(shí)體完整性域完整性引用完整性(5)普通索引唯一索引全文索引2.選擇題(1)D(2)C(3)C(4)D(5)B3.簡答題(1)數(shù)據(jù)的完整性主要分為實(shí)體完整性、域完整性和引用完整性。實(shí)體完整性可以通過定義主鍵約束、唯一約束和自動增長列實(shí)現(xiàn),域完整性可以通過數(shù)據(jù)類型約束、非空約束和默認(rèn)值約束實(shí)現(xiàn),引用完整性可以通過外鍵約束實(shí)現(xiàn)。(2)區(qū)別:1.主鍵是唯一標(biāo)識一條記錄,不能重復(fù),不允許為空;而外鍵可以重復(fù),可以是空值。2.主鍵是用來保持?jǐn)?shù)據(jù)完整性,外鍵是用來建立與其他表聯(lián)系用的。3.主鍵只有一個(gè),外鍵可以有多個(gè)。關(guān)系:外鍵一定是另外某個(gè)表的主鍵。(3)索引的優(yōu)點(diǎn):1.可以加快數(shù)據(jù)的檢索速度。2.可以保證數(shù)據(jù)庫表中每一行數(shù)據(jù)的唯一性。3.加速表和表之間的連接。4.在使用分組或者排序子句時(shí),可以減少查詢中分組和排序的時(shí)間。索引的缺點(diǎn):1.在數(shù)據(jù)庫建立過程中,需花費(fèi)較多的時(shí)間去建立并維護(hù)索引,特別是隨著數(shù)據(jù)總量的增加,所花費(fèi)的時(shí)間將不斷遞增。2.過多的索引需要占大量的物理空間。3.當(dāng)對數(shù)據(jù)進(jìn)行增、刪、改操作時(shí),用戶也需要對索引進(jìn)行相應(yīng)的維護(hù),降低了數(shù)據(jù)的維護(hù)速度。第6章數(shù)據(jù)庫多表查詢1.填空題(1)(2)(3)(4)(5)2.選擇題一對一一對多多對一多對多左表符合連接條件笛卡爾積子查詢在SELECT語句中包含SELECT語句(1)A(2)BC(3)D(4)C(5)B3.簡答題(1)表與表之間的關(guān)系包括一對一、一對多(多對一)、多對多。一對一關(guān)系可以簡單地理解為一張表的一條記錄只能與另外一張表的一條記錄進(jìn)行對應(yīng);一對多關(guān)系可以簡單地理解為一張表中的一條記錄可以對應(yīng)另外一張表中的一條或者多條記錄,也可以沒有記錄與之關(guān)聯(lián);多對一關(guān)系與一對多關(guān)系本質(zhì)相同,只是從不同的角度來看問題;在多對多關(guān)系中,兩個(gè)數(shù)據(jù)表中的數(shù)據(jù)需要通過“中間人”實(shí)現(xiàn)數(shù)據(jù)的連接,每條記錄都可以和另一個(gè)數(shù)據(jù)表里任意數(shù)量的記錄相關(guān)聯(lián)。(2)區(qū)別:使用UNION關(guān)鍵字合并數(shù)據(jù)時(shí)會去除重復(fù)的數(shù)據(jù),UNIONALL關(guān)鍵字不會去除掉合并結(jié)果中重復(fù)的數(shù)據(jù)。(3)區(qū)別:左外連接以左表為基準(zhǔn),查詢結(jié)果中不僅顯示左表滿足條件的數(shù)據(jù),還顯示不滿足條件的數(shù)據(jù)(左表的數(shù)據(jù)全部顯示),而右表只保留滿足條件的數(shù)據(jù),不滿足條件的顯示為空。右外連接以右表為基準(zhǔn),右表的數(shù)據(jù)行全部保留,左表保留符合連接條件的行。第7章權(quán)限與賬戶管理1.填空題(1)information_schemamysqlperformance_schemasys(2)ctrl+z(3)mysql.user(4)Quit或者\(yùn)q(5)52.選擇題(1)D(2)A(3)A(4)B(5)B3.簡答題(1)第一個(gè)方法,SELECT語句查看用戶權(quán)限,具體如下所示。SELECThost,user,insert_priv,select_privFROMmysql.userwhereuser='user123';第二個(gè)方法,查看用戶權(quán)限的語法格式如下所示。SHOWGRANTSFOR'username'@'hostname';。(2)如果刪除用戶信息表,root用戶不能登錄到數(shù)據(jù)庫。(3)確保有網(wǎng)、有電、有足夠的存儲空間。第8章存儲過程與觸發(fā)器1.填空題(1)特定功能(2)減少應(yīng)用程序和數(shù)據(jù)庫服務(wù)器之間的流量提高SQL語句的重用性、共享性和可移植性安全(3)行(4)存儲過程(5)審計(jì)表2.選擇題(1)C(2)A(3)D(4)B(5)A3.簡答題(1)區(qū)別:1.存儲過程是一組已創(chuàng)建并存儲在數(shù)據(jù)庫中的SQL語句,可以重用代碼。而觸發(fā)器是一種特殊的不是由用戶直接調(diào)用存儲過程,創(chuàng)建觸發(fā)器時(shí),會定義在針對特定表或列進(jìn)行特定類型的數(shù)據(jù)修改時(shí)觸發(fā)。2.用戶可以使用Execute或Exec語句來直接調(diào)用或執(zhí)行存儲過程,而無法直接調(diào)用或執(zhí)行觸發(fā)器。觸發(fā)相關(guān)事件時(shí),只會自動執(zhí)行觸發(fā)器。3.存儲過程可以采用輸入?yún)?shù),而觸發(fā)器中不能將參數(shù)作為輸入我們不能將參數(shù)作為輸入傳遞給觸發(fā)器。4.存儲過程可以返回零或n值,觸發(fā)器無法返回值。5.在存儲過程中可以使用事務(wù),觸發(fā)器內(nèi)不允許進(jìn)行事務(wù)處理。8.存儲過程通常用于執(zhí)行用戶指定的任務(wù),觸發(fā)器通常用于審計(jì)工作。(2)查看存儲過程:1.使用SHOWSTATUS語句查看存儲過程。2.使用SHOWCREATE語句查看存儲過程。3.通過information_schema.Routines表查看存儲過程。(3)使用CALL或EXECUTE語句調(diào)用存儲過程,存儲過程返回結(jié)果(例如SELECT語句的結(jié)果)。這些結(jié)果可以由其他存儲過程或應(yīng)用程序使用。第9章數(shù)據(jù)庫事務(wù)與鎖機(jī)制1.填空題(1)(2)(3)(4)(5)原子性一致性隔離性持久性SQL語句不可行的表鎖行鎖頁鎖臟讀取不可重復(fù)讀幻讀2.選擇題(1)B(2)B(3)C(4)A(5)C3.簡答題(1)幻讀是指一個(gè)線程中的事務(wù)讀取到了另外一個(gè)線程中提交的INSERT數(shù)據(jù)。例如,用戶A將數(shù)據(jù)庫中所有學(xué)生的成績從具體分?jǐn)?shù)改為ABCDE等級,但是用戶B此時(shí)插入了一條具體分?jǐn)?shù)的記錄,用戶A修改完成后發(fā)現(xiàn)還有一條記錄沒有改過來,就好像發(fā)生了幻覺一樣,因此稱這種情況為幻讀或者虛讀。(2)區(qū)別:MySQL中InnoDB引擎支持行鎖,但有時(shí)也會升級為表鎖,而MyISAM引擎只支持表鎖。(3)在MySQL中可以通過“SHOWFULLPROCESSLIST”和“SHOWENGINEINNODBSTATUS”命令來監(jiān)控事務(wù)中的鎖情況。另外,也可以通過查詢informationschema庫下的INNODBTRX、INNODBLOCKS和INNODBLOCKWAITS這三張表來獲取更加詳細(xì)的鎖的信息。第10章MySQL數(shù)據(jù)備份1.填空題(1)物理備份邏輯備份(2)熱備份(3)硬件故障軟件故障自然災(zāi)害黑客攻擊(或管理人員的誤操作)(4)災(zāi)難恢復(fù)審計(jì)測試(5)低2.選擇題(1)B(2)A(3)A(4)C(5)C3.簡答題(1)區(qū)別:物理備份主要備份的是真實(shí)的數(shù)據(jù)文件,而邏輯備份主要備份的是建表、建庫、插入數(shù)據(jù)等操作所執(zhí)行的SQL語句。物理備份恢復(fù)速度比較快,占用空間比較大,邏輯備份速度比較慢,占用空間比較小。邏輯備份的恢復(fù)成本高。(2)使用xtrabackup進(jìn)行全量備份時(shí),備份后的數(shù)據(jù)并不能直接使用,還需要將同時(shí)備份出的事務(wù)日志應(yīng)用到備份中,才可以能得到一份完整、一致、可用的數(shù)據(jù)。在prepare階段時(shí),不建議中斷xtrabackup進(jìn)程,因?yàn)檫@可能會造成備份數(shù)據(jù)文件損壞,從而無法保證備份有效性。在f配置中指定數(shù)據(jù)恢復(fù)的路徑datadir時(shí),為了可以正常的恢復(fù)數(shù)據(jù),需要確保已將MySQL服務(wù)停止。使用xtrabackup進(jìn)行增量備份時(shí),提前進(jìn)行全量備份。(3)合理的備份策略可以有效地防范網(wǎng)絡(luò)攻擊和IT中斷。企業(yè)在選擇備份解決方案時(shí),需要考慮以下三個(gè)因素:針對遠(yuǎn)程優(yōu)先進(jìn)行優(yōu)化、同步與備份以及恢復(fù)以下四個(gè)簡單的因素可以幫助其做出有關(guān)備份策略的決策。第一,靈活性–確保企業(yè)的備份解決方案所支持的生態(tài)系統(tǒng)比當(dāng)前使用的更廣泛。企業(yè)不希望它阻礙其敏捷性或云計(jì)算服務(wù)的采用。第二,自動化—尋找智能自動化(甚至是人工智能)有助于消除備份過程中的專家或日常元素,并為IT團(tuán)隊(duì)騰出更多時(shí)間的解決方案。第三,預(yù)算–長期需要重復(fù)數(shù)據(jù)刪除設(shè)備的低成本軟件,或者具有嚴(yán)格升級路徑的設(shè)備,長期來看在成本上可能會變得更加昂貴,企業(yè)需要對此更加關(guān)注。第四,整合–許多產(chǎn)品通常意味著孤島、浪費(fèi)空間以及更加復(fù)雜性。將多個(gè)產(chǎn)品整合到備份平臺可以在節(jié)省基礎(chǔ)設(shè)施成本和降低復(fù)雜性方面起到重要的作用。第11章日志管理1.填空題(1)錯(cuò)誤日志查詢?nèi)罩径M(jìn)制日志慢查詢?nèi)罩镜卿浫罩荆?)錯(cuò)誤(3)二進(jìn)制(4)慢查詢(5)系統(tǒng)日志2.選擇題(1)B(2)A(3)C(4)A(5)D3.簡答題(1)詳解見11.2節(jié)。(2)應(yīng)該考慮溫備的持鎖多久、備份產(chǎn)生的負(fù)載、備份過程的時(shí)長、恢復(fù)過程的時(shí)長等。(3)首先在配置文件/etc/f中定義存儲路徑,然后配置/etc/syslogd文件的日志輪轉(zhuǎn)。第12章主從復(fù)制1.填空題(1)用戶(2)二進(jìn)制(3)I/OSQL(4)同一臺服務(wù)器(5)省略Server-ID2.選擇題(1)A(2)C(3)C(4)B(5)D3.簡答題(1)優(yōu)點(diǎn):兩者都是日志文件里事件的一個(gè)標(biāo)志,如果將整個(gè)mysql集群看作一個(gè)整體,pos就是局部的,GTID就是全局的。因?yàn)椴挥檬止ぴO(shè)置日志偏移量,GTID方式可以很方便地進(jìn)行故障轉(zhuǎn)移,如果啟用log_slave_updates那么從庫不會丟失主庫上的任何修改。(2)流程:配置主服務(wù)器。第一,在主服務(wù)器上開啟二進(jìn)制日志并配置唯一的服務(wù)器ID,配置完成后,創(chuàng)建相關(guān)的日志目錄并賦予權(quán)限,重新啟動mysqld服務(wù)。第二,在主服務(wù)器的f配置文件中加入以下配置項(xiàng):innodb_flush_log_at_trx_commit=1sync_binlog=1將skip_networking選項(xiàng)設(shè)置為OFF狀態(tài)。第三,創(chuàng)建一個(gè)專門用于復(fù)制數(shù)據(jù)的用戶。配置從服務(wù)器。第一,在從服務(wù)器的f配置文件中添加ServerID,重新啟動mysqld的服務(wù)。第二,登錄到從服務(wù)器的數(shù)據(jù)庫中將備份的數(shù)據(jù)導(dǎo)入。第三,從服務(wù)器上配置連接到主服務(wù)器,配置完成后,在從服務(wù)器開始復(fù)制線程,驗(yàn)證線程是否工作正常。(3)注意問題:主服務(wù)器需要修改新加入從服務(wù)器的Server-ID編號,建議用最新的備份數(shù)據(jù)。第13章MySQL讀寫分離1.填空題(1)MySQLProxyAtlasDBProxyAmoeba(2)數(shù)據(jù)庫中間件(3)schema.xml文件(4)端口IP(5)對不同請求的分發(fā)2.選擇題(1)A(2)B(3)A(4)C(5)C3.簡答題(1)注意事項(xiàng):1.使用Wget工具下載相應(yīng)的JDK壓縮包并解壓,完成后需要在全局配置文件內(nèi)追加設(shè)置Java環(huán)境變量。2.上

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論