版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第2章介紹MySQL2023/2/41華育國際呼和浩特分校本章內(nèi)容2.1什么是MySQL2.2MySQL版本2.3安裝MySQL2.4字符集2.5存儲引擎2.6MySQL工具2.7MySQL幫助2023/2/42華育國際呼和浩特分校2.1什么是MySQLMySQL是一個中、小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQLAB公司開發(fā),目前屬于Oracle公司,與其他大型數(shù)據(jù)庫管理系統(tǒng)(如Oracle、DB2、SQLServer等)相比,MySQL規(guī)模小、功能有限,但是其體積小、速度快、成本低,并且MySQL提供的功能已經(jīng)綽綽有余,這些特性使得MySQL成為世界上最受歡迎的開放源代碼數(shù)據(jù)庫。本節(jié)將介紹MySQL的特點。2023/2/43華育國際呼和浩特分校mySQL架構(gòu)圖2023/2/44華育國際呼和浩特分校MySQL版本社區(qū)版(免費)企業(yè)服務(wù)器版付費提供電話技術(shù)支持支持事物2023/2/45華育國際呼和浩特分校MySQL的系統(tǒng)特性(1)使用C和C++編寫,并使用了多種編譯器進行測試,保證源代碼的可移植性支持FreeBSD、Linux、MacOS、Windows、NovellNetware等多種操作系統(tǒng)為多種編程語言提供了API。這些編程語言包括C、C++、Java、PHP等。支持多線程,充分利用CPU資源優(yōu)化的SQL查詢算法,有效地提高查詢速度提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫操作的管理工具。2023/2/46華育國際呼和浩特分校MySQL的系統(tǒng)特性(2)既能夠作為一個單獨的應(yīng)用程序應(yīng)用在客戶端服務(wù)器網(wǎng)絡(luò)環(huán)境中,也能夠作為一個庫而嵌入到其他的軟件中。提供多語言支持,常見的編碼如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名。提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫連接途徑。支持大型的數(shù)據(jù)庫。可以處理擁有上千萬條記錄的大型數(shù)據(jù)庫。支持多種存儲引擎。2023/2/47華育國際呼和浩特分校2.2安裝MySQL此外您需要運行這一命令以確保您的軟件包列表是最新的。root@ubuntuServer:~#apt-getupdate安裝MySQLroot@ubuntuServer:~#sapt-getinstallmysql-server2023/2/48華育國際呼和浩特分校2.3字符集-基本概念字符指人類語言中最小的表義符號,如‘A’、‘B’等。編碼給定一系列字符,對每個字符賦予一個值,用數(shù)值代表對應(yīng)的字符,這一數(shù)值就是字符的編碼(Encoding)。如‘A’賦予數(shù)值0,給字符‘B’賦予1,則0是字符A的編碼,1是B的編碼。字符集給定一系列字符并賦予對應(yīng)編碼后,所有這些字符和編碼對組成的集合就是字符集(characterSet),如{‘A’=0,‘B’=1}就是一個字符集。2023/2/49華育國際呼和浩特分校字符集-基本概念(續(xù))字符序(Collation)是指在同一字符集內(nèi)字符之間的比較規(guī)則。字符序確定字符序后,才能在比較字符之間的大小。一個字符集可以對應(yīng)多種字符序,其中有一個默認字符序(DefaultCollation)。MySQL中的字符序名稱遵從命名慣例:以字符序?qū)?yīng)的字符集名稱開頭;以_ci(表示大小寫不敏感)、_cs(表示大小寫敏感)或_bin(表示按編碼值比較)。例如:在字符序“utf8_general_ci”下,字符“a”和“A”是等價的。2023/2/410華育國際呼和浩特分校字符集簡史-ASCII碼在所有字符集中,最知名的可能要數(shù)被稱為ASCII的7位字符集了。它是美國標(biāo)準(zhǔn)信息交換代碼(AmericanStandardCodeforInformationInterchange)的縮寫,為美國英語通信所設(shè)計。它由128個字符組成,包括大小寫字母、數(shù)字0-9、標(biāo)點符號、非打印字符(換行符、制表符等4個)以及控制字符(退格、響鈴等)組成2023/2/411華育國際呼和浩特分校字符集簡史-Latin1ASCII碼當(dāng)處理帶有音調(diào)標(biāo)號(形如漢語的拼音)的歐洲文字時就會出現(xiàn)問題,因此,創(chuàng)建出了一些包括255個字符的由ASCII擴展的字符集。將128-255之間的字符用于拉丁字母表中特殊語言字符的編碼,8位字符集是ISO8859-1Latin1,也簡稱為ISOLatin-1。2023/2/412華育國際呼和浩特分校字符集簡史-UNICODE編碼歐洲語言不是地球上的唯一語言,因此亞洲和非洲語言并不能被8位字符集所支持。僅漢語(或pictograms)字母表就有80000以上個字符。但是把漢語、日語和越南語的一些相似的字符結(jié)合起來,在不同的語言里,使不同的字符代表不同的字,這樣只用2個字節(jié)就可以編碼地球上幾乎所有地區(qū)的文字。因此,創(chuàng)建了UNICODE編碼2023/2/413華育國際呼和浩特分校字符集簡史-UTF8事實證明,對可以用ASCII表示的字符使用UNICODE并不高效,因為UNICODE比ASCII占用大一倍的空間,而對ASCII來說高字節(jié)的0對他毫無用處。為了解決這個問題,就出現(xiàn)了一些中間格式的字符集,他們被稱為通用轉(zhuǎn)換格式,即UTF(UniversalTransformationFormat)。目前存在的UTF格式有:UTF-7,UTF-7.5,UTF-8,UTF-16,以及UTF-32。2023/2/414華育國際呼和浩特分校測試字符集的輸出結(jié)果在SQLadmin管理工具中測試使用不同編碼顯示漢字和字符??梢钥吹介L的編碼變成短的,出現(xiàn)亂碼。短的編碼存到長的,不出現(xiàn)亂碼。SELECT_latin1'hanligang'顯示名unionSELECT_latin1'韓立剛'unionSELECT_utf8'韓立剛'unionSELECT_gbk'韓立剛'unionSELECT_ascii'han立剛'2023/2/415華育國際呼和浩特分校MySQL中的字符集轉(zhuǎn)換過程圖示2023/2/416華育國際呼和浩特分校MySQL中的字符集轉(zhuǎn)換過程1.MySQLServer收到請求時將請求數(shù)據(jù)從character_set_client轉(zhuǎn)換為character_set_connection;2.進行內(nèi)部操作前將請求數(shù)據(jù)從character_set_connection轉(zhuǎn)換為內(nèi)部操作字符集,其確定方法如下:使用每個數(shù)據(jù)字段的CHARACTERSET設(shè)定值;若上述值不存在,則使用對應(yīng)數(shù)據(jù)表的DEFAULTCHARACTERSET設(shè)定值(MySQL擴展,非SQL標(biāo)準(zhǔn));若上述值不存在,則使用對應(yīng)數(shù)據(jù)庫的DEFAULTCHARACTERSET設(shè)定值;若上述值不存在,則使用character_set_server設(shè)定值。2023/2/417華育國際呼和浩特分校mySQL字符集設(shè)置級別設(shè)置字段字符集CREATETABLEtbl(nameCHAR(20)CHARACTERSETUTF8,)設(shè)置表字符集CREATETABLEtbl(......)ENGINE=MyISAMDEFAULTCHARSETUTF8;設(shè)置數(shù)據(jù)庫字符集CREATEDATABASEdbDEFAULTCHARSETUTF8;設(shè)置服務(wù)器字符集
更改配置文件/etc/mySQl/f[mysqld]default-character-set=utf82023/2/418華育國際呼和浩特分校設(shè)置客戶端字符集1設(shè)置putty字符集2023/2/419華育國際呼和浩特分校設(shè)置客戶端字符集2設(shè)置SQLadmin字符集2023/2/420華育國際呼和浩特分校2.4MySQL常用的存儲引擎MyISAM最好用于處理讀多寫少數(shù)據(jù)庫
MySQL的默認存儲引擎。MyISAM不支持事務(wù)、也不支持外鍵,但其訪問速度快,對事務(wù)完整性沒有要求。InnoDB使用于數(shù)據(jù)完整性要求高的數(shù)據(jù)庫具有提交、回滾和崩潰恢復(fù)能力的事務(wù)安全。但是比起MyISAM存儲引擎,InnoDB寫的處理效率差一些并且會占用更多的磁盤空間以保留數(shù)據(jù)和索引MEMORY存儲引擎使用存在內(nèi)存中的內(nèi)容來創(chuàng)建表。每個MEMORY表只實際對應(yīng)一個磁盤文件。MEMORY類型的表訪問非常得快,因為它的數(shù)據(jù)是放在內(nèi)存中的,并且默認使用HASH索引。但是一旦服務(wù)關(guān)閉,表中的數(shù)據(jù)就會丟失掉。
2023/2/421華育國際呼和浩特分校查看默認存儲引擎mysql>showvariableslike'table_type';2023/2/422華育國際呼和浩特分校更改mySQL的默認存儲引擎編輯配置文件vi
/etc/mysql/f2023/2/423華育國際呼和浩特分校指定數(shù)據(jù)庫的存儲引擎創(chuàng)建數(shù)據(jù)庫時指定存儲引擎createtableau(studentidintnotnullauto_increment,primarykey(studentid))engine=innodb2023/2/424華育國際呼和浩特分校指定表的存儲引擎創(chuàng)建表時指定存儲引擎CREATETABLETStudent`(StudentIDvarchar(15)NOTNULL,Snamevarchar(10)DEFAULTNULL,PRIMARYKEY(`StudentID`))ENGINE=InnoDB修改現(xiàn)有表的存儲引擎mysql>useschoolDB;mysql>altertableTStudentengine=InnoDB;2023/2/425華育國際呼和浩特分校使用SQLadmin指定表的存儲引擎2023/2/426華育國際呼和浩特分校InnoDB存擎的特點自動增長列自動增長列可以送給插入,但是插入的如果是空或者為0,則實際插入的值是自動增長后的值。外鍵約束MySQL支持外鍵存儲引擎只有InnoDB,在創(chuàng)建外鍵的時候,要求父表必須有對應(yīng)的索引,子表在創(chuàng)建外鍵的時候也會自動創(chuàng)建索引在刪除更新父表時,對子表進行相應(yīng)的操作,包括restrict、cascade、setnull和noaction使用InnoDB存儲引擎數(shù)據(jù)按主鍵順序存放2023/2/427華育國際呼和浩特分校2.5MySQL圖形化管理工具MySQL數(shù)據(jù)庫管理系統(tǒng)提供了許多命令行工具,這些工具可以用來管理MySQL服務(wù)器、對數(shù)據(jù)庫進行訪問控制、管理MySQL用戶以及數(shù)據(jù)庫備份和恢復(fù)工具等。而且MySQL提供圖形化的管理工具,這使得對數(shù)據(jù)庫的操作更加簡單。2023/2/428華育國際呼和浩特分校五個常用MySQL圖形化管理工具MySQLManagerLiteSetupphpMyAdminMySQLDumperNavicatMySQLGUITools2023/2/429華育國際呼和浩特分校mySQL客戶端工具輸入my按tab鍵能夠看到所有mySQL客戶端工具2023/2/430華育國際呼和浩特分校MySQL客戶端實用工具程序(1)Myisampack壓縮MyISAM表以產(chǎn)生更小的只讀表的一個工具。
Mysql交互式輸入SQL語句或從文件以批處理模式執(zhí)行它們的命令行工具。
mysqlaccess檢查訪問主機名、用戶名和數(shù)據(jù)庫組合的權(quán)限的腳本。2023/2/431華育國際呼和浩特分校MySQL客戶端實用工具程序(2)mysqladmin執(zhí)行管理操作的客戶程序,例如創(chuàng)建或刪除數(shù)據(jù)庫,重載授權(quán)表,將表刷新到硬盤上,以及重新打開日志文件。mysqladmin還可以用來檢索版本、進程,以及服務(wù)器的狀態(tài)信息。
mysqlbinlog從二進制日志讀取語句的工具。在二進制日志文件中包含的執(zhí)行過的語句的日志可用來幫助從崩潰中恢復(fù)。Mysqlcheck檢查、
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東外語外貿(mào)大學(xué)南國商學(xué)院《材料制備科學(xué)與技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東司法警官職業(yè)學(xué)院《會計信息系統(tǒng)分析設(shè)計》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東生態(tài)工程職業(yè)學(xué)院《研學(xué)旅行方案設(shè)計與產(chǎn)品開發(fā)》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東輕工職業(yè)技術(shù)學(xué)院《半導(dǎo)體集成電路工藝》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東茂名健康職業(yè)學(xué)院《服裝工藝與結(jié)構(gòu)》2023-2024學(xué)年第一學(xué)期期末試卷
- 二年級數(shù)學(xué)(上)計算題專項練習(xí)
- 【名師一號】2021高考化學(xué)(蘇教版)一輪復(fù)習(xí)課時訓(xùn)練:11-3烴的含氧衍生物
- 遼寧省錦州市某校2024-2025學(xué)年高一(上)期末物理試卷(含解析)
- 湖南省益陽市2024-2025學(xué)年高二上學(xué)期1月期末質(zhì)量檢測物理試題(含答案)
- 貴州省貴陽市花溪區(qū)高坡民族中學(xué)2024-2025學(xué)年度第一學(xué)期12月質(zhì)量監(jiān)測九年級語文試卷
- 咳嗽的診斷與治療指南(2021版)解讀
- 勞動爭議工資調(diào)解協(xié)議書(2篇)
- 機動車駕駛員考試《科目一》試題與參考答案(2024年)
- 2024年四年級英語上冊 Module 8 Unit 2 Sam is going to ride horse說課稿 外研版(三起)
- 重慶南開中學(xué)2025屆生物高二上期末聯(lián)考試題含解析
- 高中地理人教版(2019)必修第一冊 全冊教案
- X市科協(xié)領(lǐng)導(dǎo)班子2021年工作總結(jié)
- 2024年新人教版七年級上冊地理課件 第二章 地圖 第二節(jié) 地形圖的判讀
- 2024至2030年中國汽摩配行業(yè)發(fā)展?fàn)顩r及競爭格局分析報告
- 濰柴天然氣發(fā)動機結(jié)構(gòu)及工作原理
- 國家開放大學(xué)《理工英語2》形考任務(wù)1-8參考答案
評論
0/150
提交評論