版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、電子課件數(shù)據(jù)庫原理及應(yīng)用教程(基于Linux的MySQL和NoSQL應(yīng)用)第5章第5章MySQL概述數(shù)據(jù)庫原理及應(yīng)用教程(基于Linux的MySQL和NoSQL應(yīng)用)CONTENTSMySQL簡介1MySQL工作流程2MySQL系統(tǒng)構(gòu)成3MySQL 服務(wù)器與端口號(hào)42基于客戶端工具NAVICAT操作MYSQL6MySQL的安裝和使用MySQL簡介15.1 MySQL簡介MySQL的優(yōu)勢(shì)MySQL是一款單進(jìn)程多線程、支持多用戶、基于客戶機(jī)/服務(wù)器( Client/Server,C/S)的關(guān)系數(shù)據(jù)庫管理系統(tǒng)。它是開源軟件(,可以從MySQL的官方網(wǎng)站(http:/www.MySQL.com/)下載
2、該軟件。MySQL以快速、便捷和易用為發(fā)展主要目標(biāo)。成本低性能良值得信賴操作簡單兼容性好MySQL的系統(tǒng)特性使用C和C+語言編寫,并使用了多種編譯器進(jìn)行測(cè)試,保證了源代碼的可移植性。支持多線程優(yōu)化的SQL查詢算法提供TCP/IP,ODBC和JDBC等多種數(shù)據(jù)庫連接途徑支持多種操作系統(tǒng)平臺(tái)支持大型的數(shù)據(jù)庫支持多種存儲(chǔ)引擎既能夠作為一個(gè)單獨(dú)的應(yīng)用程序應(yīng)用在C/S網(wǎng)絡(luò)環(huán)境中,也能夠作為一個(gè)庫嵌入到其他的軟件中5.1 MySQL簡介MySQL發(fā)行版本W(wǎng)indows版UNIX版Linux版Mac OS版根據(jù)操作系統(tǒng)的類型來劃分Alpha:處于開發(fā)階段的版本Beta:處理測(cè)試階段的版本根據(jù)MySQL數(shù)據(jù)庫
3、的開發(fā)情況Gamma:發(fā)行過一段時(shí)間的Beta版Generally Available:該版本已經(jīng)足夠穩(wěn)定,可以在軟件開發(fā)中應(yīng)用社區(qū)版(Community Edition)企業(yè)版(Enterprise)根據(jù)MySQL數(shù)據(jù)庫用戶群體的不同5.1 MySQL簡介MySQL 5.6新增亮點(diǎn)1.通過提升MySQL優(yōu)化診斷來提供更好的查詢執(zhí)行時(shí)間和診斷功能。2.通過增強(qiáng)InnoDB存儲(chǔ)引擎來提高性能處理量和應(yīng)用可用性。3.通過MySQL復(fù)制的新功能以提高擴(kuò)展性和高可用性。4.增強(qiáng)的性能架構(gòu)(PERFORMANCE SCHEMA)。MySQL字符集字符集就是指符號(hào)和字符編碼的集合MySQL體系原理結(jié)構(gòu)My
4、SQL體系結(jié)構(gòu)組成包括:連接池組件、管理服務(wù)和工作組件、SQL接口組件、查詢分析組件、優(yōu)化器組件、緩存組件、插件式存儲(chǔ)引擎以及物理文件。5.1 MySQL簡介MySQL體系原理結(jié)構(gòu)5.1 MySQL簡介MySQL體系原理結(jié)構(gòu)1)Connectors:指的是不同語言中與SQL的交互。2)Management Services&Utilities:系統(tǒng)管理和控制工具。3)Connection Pool: 連接池。管理緩沖用戶連接,線程處理等需要緩存的需求。4)SQL Interface: SQL接口。接受用戶的SQL命令,并且返回用戶需要查詢的結(jié)果。比如select語句就是調(diào)用SQL Interf
5、ace 。5)Parser:解析器。SQL命令傳遞到解析器的時(shí)候會(huì)被解析器驗(yàn)證和解析。6)Optimizer: 查詢優(yōu)化器。SQL語句在查詢之前會(huì)使用查詢優(yōu)化器對(duì)查詢進(jìn)行優(yōu)化。他使用的是“選取-投影-聯(lián)接”策略進(jìn)行查詢。7)Cache和Buffer: 查詢緩存。如果查詢緩存有命中的查詢結(jié)果,查詢語句就可以直接去查詢緩存中取數(shù)據(jù)。這個(gè)緩存機(jī)制是由一系列小緩存組成的。比如表緩存,記錄緩存,key緩存,權(quán)限緩存等。8)Pluggable Storage Engine :插件式存儲(chǔ)引擎。MySQL工作流程25.2 MySQL工作流程MySQL是一個(gè)基于客戶機(jī)/服務(wù)器( Client/Server,C/
6、S)的關(guān)系數(shù)據(jù)庫管理系統(tǒng),MySQL的使用工作流程,如下圖。MySQL系統(tǒng)構(gòu)成35.3 MySQL系統(tǒng)構(gòu)成MySQL數(shù)據(jù)庫系統(tǒng)由多個(gè)組件構(gòu)成,通常由以下幾個(gè)部分組成。1.MySQL數(shù)據(jù)庫服務(wù)該部分主要由MySQL服務(wù)器、MySQL實(shí)例和MySQL數(shù)據(jù)庫三個(gè)部分的總成,通常簡稱為MySQL服務(wù)。 MySQL服務(wù)器(MySQL數(shù)據(jù)庫服務(wù)):是保存在MySQL服務(wù)器硬盤上的一個(gè)服務(wù)軟件。-MySQL數(shù)據(jù)庫系統(tǒng)的核心,所有的數(shù)據(jù)庫和數(shù)據(jù)表操作都是由它完成-其中的MySQLd_safe是一個(gè)用來啟動(dòng)、監(jiān)控和(出問題時(shí))重新啟動(dòng)MySQLd的相關(guān)程序-如果在同一臺(tái)主機(jī)上運(yùn)行了多個(gè)服務(wù)器,通常用MySQLd
7、_multi程序來幫助用戶管好它們 MySQL實(shí)例:一個(gè)正在運(yùn)行的MySQL服務(wù) -其實(shí)質(zhì)是一個(gè)進(jìn)程,只有處于運(yùn)行狀態(tài)的MySQL服務(wù)實(shí)例才可以響應(yīng)MySQL客戶機(jī)的請(qǐng)求,提供數(shù)據(jù)庫服務(wù)。5.3 MySQL系統(tǒng)構(gòu)成MySQL數(shù)據(jù)庫:一個(gè)物理概念,即一系列物理文件的集合。一個(gè)MySQL數(shù)據(jù)庫下可以創(chuàng)建很多個(gè)數(shù)據(jù)庫,默認(rèn)情況下至少會(huì)有4個(gè)數(shù)據(jù)庫,這些數(shù)據(jù)庫及其關(guān)聯(lián)的磁盤上的一系列物理文件構(gòu)成MySQL數(shù)據(jù)庫。performance_schemasysinformation_schematest:是測(cè)試庫信息數(shù)據(jù)庫,提供訪問數(shù)據(jù)庫元數(shù)據(jù)的方式其中,數(shù)據(jù)目錄(catalog)是一組關(guān)于數(shù)據(jù)的數(shù)據(jù),也叫
8、元數(shù)據(jù)。數(shù)據(jù)目錄的內(nèi)容包括基表、視圖的定義以及存取路徑(索引、散列等)訪問權(quán)限和用于查詢優(yōu)化的統(tǒng)計(jì)數(shù)據(jù)等的描述。只允許用戶對(duì)它進(jìn)行有控制的查詢主要用于收集數(shù)據(jù)庫服務(wù)器性能參數(shù)系統(tǒng)信息庫,可以快速地了解系統(tǒng)的元數(shù)據(jù)信息,并非常方便地讓DBA發(fā)現(xiàn)數(shù)據(jù)庫中很多信息,在解決性能瓶頸、自動(dòng)化運(yùn)維等方面提供幫助5.3 MySQL系統(tǒng)構(gòu)成1)MySQL:用于把SQL語句發(fā)往服務(wù)器并讓查看其結(jié)果的交互式程序,位于MySQL_software/bin目錄下。通過它完成連接數(shù)據(jù)庫、查詢、修改對(duì)象,執(zhí)行維護(hù)操作。2)MySQLadmin:用于完成關(guān)閉服務(wù)器或在服務(wù)器運(yùn)行不正常時(shí)檢查其運(yùn)行狀態(tài)等工作的管理性程序。3)
9、MySQLcheck、isamchk、muisamchk:用于對(duì)數(shù)據(jù)表進(jìn)行分析和優(yōu)化,即當(dāng)數(shù)據(jù)表損壞時(shí),還可以用它們進(jìn)行崩潰恢復(fù)工作。4)MySQLdump和MySQLhotcopy:用于備份數(shù)據(jù)庫或者把數(shù)據(jù)庫復(fù)制到另一個(gè)服務(wù)器的工具。2.MySQL客戶程序和工具程序 主要負(fù)責(zé)與服務(wù)器進(jìn)行通信的。主要有如下幾個(gè):3.服務(wù)器的語言SQLSQL是結(jié)構(gòu)化查詢語言(Structured Query Language,SQL)的英文縮寫,它是一種專門用來與數(shù)據(jù)庫通信的語言。5.3 MySQL系統(tǒng)構(gòu)成注意:在MySQL系統(tǒng)構(gòu)成中,要注意“MySQL數(shù)據(jù)庫”“MySQL數(shù)據(jù)庫”“MySQL庫”和“MySQL
10、”幾個(gè)術(shù)語的含義,避免產(chǎn)生概念歧義。MySQL 服務(wù)器與端口號(hào)45.4 MySQL 服務(wù)器與端口號(hào)1.MySQL服務(wù)器一個(gè)安裝有MySQL服務(wù)的主機(jī)系統(tǒng),該主機(jī)系統(tǒng)還包括操作系統(tǒng)、CPU、內(nèi)存及硬盤等軟硬件資源。2.端口號(hào)服務(wù)器上運(yùn)行的網(wǎng)絡(luò)程序一般都是通過端口號(hào)來識(shí)別的,一臺(tái)主機(jī)上端口號(hào)可以有65536個(gè)之多。同一臺(tái)MySQL服務(wù)器可以安裝多個(gè)MySQL服務(wù),甚至可以同時(shí)運(yùn)行多個(gè)MySQL服務(wù)實(shí)例。同一臺(tái)MySQL服務(wù)器同時(shí)運(yùn)行多個(gè)MySQL服務(wù)實(shí)例時(shí),使用端口號(hào)區(qū)分這些MySQL服務(wù)實(shí)例。典型的端口號(hào)的例子是某臺(tái)主機(jī)同時(shí)運(yùn)行多個(gè)QQ進(jìn)程,QQ進(jìn)程之間使用不同的端口號(hào)進(jìn)行辨識(shí)。也可將“端口號(hào)”
11、想象成“SIM卡槽”,每個(gè)“SIM卡槽”可以安裝一張“SIM卡”,將“SIM卡”想象成“MySQL服務(wù)”。MySQL的安裝和使用55.5.1 MySQL的下載與安裝官方網(wǎng)站www.MySQL.com下載最新版本的MySQL軟件。下面詳細(xì)的介紹在CentOS 7平臺(tái)上下載并安裝MySQL的步驟:從 CentOS 7 系統(tǒng)開始,MariaDB 成為 yum 源中默認(rèn)的數(shù)據(jù)庫安裝包。在 CentOS 7 及以上的系統(tǒng)中使用 yum 安裝 MySQL 包將無法使用 MySQL。 (1)檢查 MariaDB 是否安裝。yum list installed | grep mariadb(2)卸載全部 Ma
12、riaDB 相關(guān)yum -y remove mariadb*5.5.1 MySQL的下載與安裝5.5.1 MySQL的下載與安裝(3)下載 MySQL 的 YUM 源首先進(jìn)入到要下載到的路徑:cd /usr/local/src,然后下載:wget https:/dev.MySQL.com/get/MySQL57-community-release-el7-11.noarch.rpm(4)安裝 MySQL 的 YUM 源rpm -ivh MySQL57-community-release-el7-11.noarch.rpm5.5.1 MySQL的下載與安裝(5)檢查 MySQL 的 YUM 源是
13、否安裝成功yum repolist enabled | grep MySQL.*-community.*(6)查看 MySQL 版本yum repolist all | grep MySQL5.5.1 MySQL的下載與安裝(7)安裝 MySQL,在需要選擇y/n時(shí)選擇y即可yum install MySQL-community-server5.5.1 MySQL的下載與安裝5.5.1 MySQL的下載與安裝(8)啟動(dòng) MySQL 服務(wù)并測(cè)試連接 MySQL 服務(wù)啟動(dòng) MySQL 服務(wù):systemctl start MySQLd測(cè)試連接 MySQL 服務(wù):MySQL -u root 或者 M
14、ySQL剛安裝的 MySQL 是沒有密碼的,這時(shí)如果出現(xiàn):ERROR 1045 (28000): Access denied for user rootlocalhost (using password: NO),解決方案如下:停止 MySQL 服務(wù):systemctl stop MySQLd以不檢查權(quán)限的方式啟動(dòng) MySQL:MySQLd -user=root -skip-grant-tables &再次輸入 MySQL -u root 或者 MySQL,這次就可以進(jìn)來了。更新密碼:UPDATE MySQL.user SET authentication_string=PASSWORD(ro
15、ot123456) where USER=root;5.5.1 MySQL的下載與安裝刷新:flush privileges;退出:exit;設(shè)置完之后,輸入 MySQL -u root -p,這時(shí)輸入剛設(shè)置的密碼,就可以登進(jìn)數(shù)據(jù)庫了。5.5.1 MySQL的下載與安裝再次登進(jìn)數(shù)據(jù)庫后,利用show databases;查看數(shù)據(jù)庫,發(fā)現(xiàn)報(bào)錯(cuò)error 1820。錯(cuò)誤原因是密碼設(shè)置的過于簡單。再通過SET PASSWORD = PASSWORD(Root123456),將密碼設(shè)置成復(fù)雜密碼。再次登進(jìn)數(shù)據(jù)庫時(shí)就不會(huì)報(bào)錯(cuò)了。至此,MySQL已經(jīng)安裝成功。 圖 密碼過于簡單報(bào)錯(cuò)圖 設(shè)置復(fù)雜密碼5.5.
16、1 MySQL的下載與安裝注意: 啟動(dòng)服務(wù)時(shí)如果出現(xiàn)錯(cuò)誤:Job for MySQLd.service failed because the control process exited with error code. See systemctl status MySQLd.service and journalctl -xe for details.錯(cuò)誤原因是權(quán)限不夠,解決方案為:ls -la /var/lib/MySQLchown -R MySQL:MySQL /var/lib/MySQL5.5.2 啟動(dòng)和停止MySQL服務(wù)器Linux啟動(dòng)、停止、重啟MySQL數(shù)據(jù)庫的方法如下:a、啟動(dòng)
17、1、使用 service 啟動(dòng):service MySQLd start,啟動(dòng)后測(cè)試連接MySQL -uroot -pCau123456成功。2、使用 MySQLd 腳本啟動(dòng):/etc/init.d/MySQLd start5.5.2 啟動(dòng)和停止MySQL服務(wù)器b、停止1、使用 service 停止:service MySQLd stop,停止后測(cè)試連接MySQL -uroot -pCau123456失敗。2、使用 MySQLd 腳本停止:/etc/init.d/MySQLd stop5.5.2 啟動(dòng)和停止MySQL服務(wù)器c、重啟1、使用 service 重啟:service MySQLd r
18、estart,重啟后測(cè)試連接MySQL -uroot -pCau123456成功。2、使用 MySQLd 腳本重啟:/etc/init.d/MySQLd restart5.5.3 連接和斷開MySQL服務(wù)器下面分別介紹連接和斷開MySQL服務(wù)器的方法。MySQL服務(wù)器通過MySQL命令實(shí)現(xiàn)。連接MySQL數(shù)據(jù)庫格式:/MySQL u登錄名 h服務(wù)器地址 -p密碼庫退出MySQL數(shù)據(jù)庫格式: /quit 或者 /exit注意:在連接MySQL服務(wù)器時(shí),MySQL服務(wù)器所在地址(如-h)可以省略不寫。輸入完命令語句后,按Enter鍵即可連接MySQL服務(wù)器5.5.3 連接和斷開MySQL服務(wù)器說明
19、:為了保護(hù)MySQL數(shù)據(jù)庫的密碼,可以采用如下圖所示的密碼輸入方式。如果密碼在-p后直接給出,那么密碼就以明文顯示,例如:MySQL-uroot-h-proot。按Enter鍵后再輸入密碼(以加密的方式顯示),然后再按Enter鍵即可成功連接MySQL服務(wù)器。5.5.3 連接和斷開MySQL服務(wù)器基于客戶端工具NAVICAT操作MYSQL6MySQL圖形化管理工具極大的方便了數(shù)據(jù)庫的操作與管理,常用的圖形化管理工具有MySQL Workbench、Navicat、phpMyAdmin等。本章重點(diǎn)介紹Navicat客戶端管理工具的下載、安裝以及對(duì)MySQL數(shù)據(jù)庫的常見操作。5.6.1 下載與安裝
20、下載地址:/download/navicat-for-MySQL(1)下載完成后打開終端,切換到root賬戶:sudo su;(2)切換到navicat120_premium_cs_x64.tar.gz的安裝包目錄,并解壓。cd /home/root01/Downloadstar -zxvf navicat120_premium_cs_x64.tar.gz5.6.1 下載與安裝(3)將navicat120_premium_cs_x64重命名為navicat,并移動(dòng)到/opt目錄下:mv /home/root01/Downloads/navicat120_premium_cs_x64 /optc
21、d /optmv navicat120_premium_cs_x64 navicat5.6.1 下載與安裝(4)運(yùn)行Navicat的方法,進(jìn)入到navicat的安裝目錄下,執(zhí)行命令./navicat即可啟動(dòng)Navicat。(5)啟動(dòng)后發(fā)現(xiàn)亂碼,5.6.1 下載與安裝解決方案如下:vi start_navicat,將export LANG=en_US.UTF-8 將這句話改為 export LANG=zh_CN.UTF-8。5.6.1 下載與安裝編輯方式為:按鍵盤上“a”鍵,vi界面出現(xiàn) INSERT后,開始進(jìn)行編輯操作編輯完畢后,按ESC鍵,跳到命令模式,然后進(jìn)行保存退出或不保存退出操作保存,并退出vi的方法 :wq 或 :x重新執(zhí)行命令:./navicat點(diǎn)擊試用進(jìn)入Navicat:5.6.2 界面操作使用啟動(dòng)navicat,單擊主界面左側(cè)“連接”按鈕,如圖所示,選擇”MySQL”,會(huì)彈出連接界面輸入相應(yīng)的信息,比如“l(fā)ocalhost”,先點(diǎn)擊測(cè)試鏈接,如果出現(xiàn)異常,說明連接失敗,信息輸入有錯(cuò)誤。5.6.2 界面操作使用如果提示測(cè)試成功,那么表示可以正常連接,那么就可以點(diǎn)擊右下角的確定按鈕進(jìn)入操作界面,雙擊左上角的連接名。5.6.2 界面操作使用選
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 法務(wù)部負(fù)責(zé)人面試題及參考解析
- 政府項(xiàng)目部門協(xié)調(diào)管理部副經(jīng)理問題解答參考
- 國際金融貿(mào)易領(lǐng)域高級(jí)經(jīng)濟(jì)師的考試要點(diǎn)
- 制造業(yè)項(xiàng)目管理專員面試問題與參考答案
- 智能化工程師面試題及答案解析
- 醫(yī)療器械維護(hù)人員專業(yè)技能測(cè)試題目及答案參考
- 健康工程師面試題及答案解析
- 教育機(jī)構(gòu)財(cái)務(wù)出納崗位面試題集
- 第四節(jié) 用單擺測(cè)量重力加速度
- 2025年合肥工業(yè)大學(xué)招標(biāo)與采購管理中心專業(yè)技術(shù)人員招聘筆試考試參考題庫及答案解析
- 汽車車身連接工藝課件
- 關(guān)于易肇事肇禍等嚴(yán)重精神障礙患者收治管護(hù)實(shí)施方案
- 《無人機(jī)安全飛行及法律法規(guī)》參考試題庫(附答案)
- 智能家居系統(tǒng)設(shè)計(jì)與應(yīng)用技術(shù)方案
- 籃球突破分球訓(xùn)練課件
- 免疫科自身免疫性疾病治療方案
- 【287】醫(yī)務(wù)人員互聯(lián)網(wǎng)健康科普負(fù)面行為清單(試行)
- 電梯加裝梯控施工方案
- 個(gè)人求職簡歷(三頁)帶封面(可編輯)應(yīng)屆大學(xué)畢業(yè)生模版
- 2025年及未來5年中國針刺非織造布行業(yè)市場發(fā)展現(xiàn)狀及投資前景展望報(bào)告
- scr脫硝技術(shù)協(xié)議書
評(píng)論
0/150
提交評(píng)論