本套課程為傳智播客mysql高清視頻教程,全套課程有41講,是mysql入門的優(yōu)質(zhì)教材,隨著mysql不斷發(fā)展,現(xiàn)在使用mysql+php做網(wǎng)站已成為主流,如果你想學(xué)習(xí)動態(tài)網(wǎng)頁設(shè)計,那么建議你選擇php+mysql,這套課程將是學(xué)習(xí)mysql的基礎(chǔ)課程,大學(xué)資源網(wǎng)收集整理。
一、MySQL介紹
MySQL是一個精巧的SQL數(shù)據(jù)庫管理系統(tǒng),雖然它不是開放源代碼的產(chǎn)品,但在某些情況下你可以自由使用。由于它的強大功能、靈活性、豐富的應(yīng)用編程接口(API)以及精巧的系統(tǒng)結(jié)構(gòu),受到了廣大自由軟件愛好者甚至是商業(yè)軟件用戶的青睞,特別是與Apache和PHP/PERL結(jié)合,為建立基于數(shù)據(jù)庫的動態(tài)網(wǎng)站提供了強大動力。
二、MySQL的特點與作用
MySQL是一個真正的多用戶、多線程SQL數(shù)據(jù)庫服務(wù)器。SQL(結(jié)構(gòu)化查詢語言)是世界上最流行的和標準化的數(shù)據(jù)庫語言。MySQL是以一個客戶機/服務(wù)器結(jié)構(gòu)的實現(xiàn),它由一個服務(wù)器守護程序mysqld和很多不同的客戶程序和庫組成。
SQL是一種標準化的語言,它使得存儲、更新和存取信息更容易。例如,你能用SQL語言為一個網(wǎng)站檢索產(chǎn)品信息及存儲顧客信息,同時MySQL也足夠快和靈活以允許你存儲記錄文件和圖像。
MySQL 主要目標是快速、健壯和易用。最初是因為我們需要這樣一個SQL服務(wù)器,它能處理與任何可不昂貴硬件平臺上提供數(shù)據(jù)庫的廠家在一個數(shù)量級上的大型數(shù)據(jù)庫,但速度更快,MySQL就開發(fā)出來。自1996年以來,我們一直都在使用MySQL,其環(huán)境有超過 40 個數(shù)據(jù)庫,包含 10,000個表,其中500多個表超過7百萬行,這大約有100 個吉字節(jié)(GB)的關(guān)鍵應(yīng)用數(shù)據(jù)。
MySQL數(shù)據(jù)庫的主要功能只在組織和管理很龐大或復(fù)雜的信息和基于WEB的庫存查詢請求不僅僅為客戶提供信息,而且還可以為您自己使用數(shù)據(jù)庫可以提供如下功能:
一)減少記錄編檔的時間
二)減小記錄檢索時間
三)靈活的查找序列
四)靈活的輸出格式
五)多個用戶同時訪問記錄
三、MySQL的技術(shù)路線與發(fā)展
在運行數(shù)據(jù)庫系統(tǒng)時,MySQL的使用相當(dāng)簡單,且進行MySQL安裝和使用所需的工作也很少。然而,不論您是什么級別的專家,MySQL的安裝程序都不能自動運行。MySQL數(shù)據(jù)庫系統(tǒng)由幾部分組成。
MySQL服務(wù)器
服務(wù)器mysql執(zhí)行數(shù)據(jù)庫和表的所有操作。safe_mysqld 是一個相關(guān)的程序,它用于啟動服務(wù)器、監(jiān)控服務(wù)器和重新啟動服務(wù)器。
MySQL客戶機和實用程序。有幾個MySQL程序,可用來幫助您與服務(wù)器進行通信和執(zhí)行管理的任務(wù)。其中最重要的幾個是: mysql,一個交互式程序,允許將SQL 語句發(fā)布到服務(wù)器上并瀏覽其結(jié)果。mysqladmin,一個管理程序,允許執(zhí)行諸如關(guān)閉服務(wù)器以及創(chuàng)建或刪除數(shù)據(jù)庫的工作。如果服務(wù)器運行不正常,還可以用mysqladmin 來檢查服務(wù)器的狀態(tài)。isamchk 和myisamchk,這些實用程序幫助您完成表的分析和優(yōu)化,以及在表損壞時進行崩潰恢復(fù)。mysqldump,一個工具,用于備份數(shù)據(jù)庫或?qū)?shù)據(jù)庫拷貝到另一個服務(wù)器中。服務(wù)器的語言,SQL。有些管理職責(zé)只能用mysqladmin 的命令行實用程序來完成,但是,如果您還能用服務(wù)器自己的語言來同服務(wù)器進行對話,那就更好了。作為簡單的例子,您可能需要查找用戶特權(quán)不按您所希望的方式進行工作的原因。沒有任何替代品能夠參與并與服務(wù)器直接通信。可通過使用mysql客戶機程序發(fā)布能夠檢驗授權(quán)表的SQL 查詢來做到這一點。如果您的MySQL版本還未引入GRANT 語句,則需要使用mysql首先設(shè)置每個用戶的權(quán)限。
MySQL數(shù)據(jù)目錄
數(shù)據(jù)目錄是服務(wù)器存儲其數(shù)據(jù)庫和狀態(tài)文件的所在。了解數(shù)據(jù)目錄的結(jié)構(gòu)及內(nèi)容是很重要的,您可以知道服務(wù)器是怎樣使用文件系統(tǒng)來表現(xiàn)數(shù)據(jù)庫和表的,以及像日志這樣的文件的存放位置和其內(nèi)容。還應(yīng)該了解在文件系統(tǒng)中管理磁盤空間分配的選項,當(dāng)發(fā)現(xiàn)放置數(shù)據(jù)目錄的文件系統(tǒng)過滿時可以進行調(diào)整。
MySQL服務(wù)器
MySQL的服務(wù)器能夠從命令行中手工啟動和終止服務(wù)器,并且在系統(tǒng)啟動和關(guān)閉時知道怎樣進行自動啟動和關(guān)閉。如果服務(wù)器崩潰了或啟動不正常的話,了解怎樣使服務(wù)器再次運行也是重要的。
安全性
當(dāng)運行MySQL安裝程序時,確保用戶所存儲的數(shù)據(jù)的安全性是很重要的。MySQL管理員有責(zé)任控制對數(shù)據(jù)目錄和服務(wù)器的訪問,并應(yīng)了解以下的問題:文件系統(tǒng)的安全性。UNIX 機器可能會使幾個用戶賬號成為宿主賬號,而這些賬號都沒有與MySQL相關(guān)的管理職責(zé)。確保這些賬號沒有對數(shù)據(jù)目錄的訪問是重要的。因為這樣可以防止它們通過拷貝數(shù)據(jù)庫表或移動數(shù)據(jù)庫表,或者通過能夠讀取包含敏感信息的日志文件來損壞文件系統(tǒng)級的數(shù)據(jù)。您應(yīng)該知道如何建立MySQL服務(wù)器的UNIX用戶賬號,如何建立該用戶所擁有的數(shù)據(jù)目錄,以及如何啟動服務(wù)器以便利用該用戶的權(quán)限運行。服務(wù)器的安全性。必須了解MySQL的安全系統(tǒng)是怎樣進行工作的,以便在建立用戶賬號時授予適當(dāng)?shù)臋?quán)限。通過網(wǎng)絡(luò)連接到服務(wù)器的用戶只允許做他們應(yīng)該做的事情。您不要由于對安全系統(tǒng)的錯誤理解,將超級用戶的訪問權(quán)授予匿名用戶。
數(shù)據(jù)庫修復(fù)和維護
所有的MySQL管理員都希望避免處理破壞的或毀壞的數(shù)據(jù)庫表。但是愿望不能代替現(xiàn)實。以下幾個步驟可以使您在問題發(fā)生時減少風(fēng)險并學(xué)會怎樣處理問題:崩潰恢復(fù)。如果盡管您做了最好的努力但災(zāi)難還是降臨了,則應(yīng)該知道如何修復(fù)或恢復(fù)表。很少會用到崩潰恢復(fù),但當(dāng)使用它時,它是一個令人討厭的、高強度的工作(尤其是當(dāng)您正在忙亂地修正某些內(nèi)容時,電話鈴響了或有人敲門)。然而,您必須知道怎樣處理它,否則用戶將會很不高興。要熟悉isamchk 和myisamchk 的表的檢查以及修復(fù)能力;要知道如何盡可能地從備份文件中恢復(fù),并且知道怎樣使用該更新日志來恢復(fù)備份之后所產(chǎn)生的修改。預(yù)防性維護。預(yù)防性維護的常規(guī)程序應(yīng)適當(dāng)?shù)剡M行安置,以使數(shù)據(jù)庫破壞和毀壞的可能性最小化。當(dāng)然,您還要進行備份,但是,預(yù)防性維護將減少使用這些備份的機會。
綜上所述,MySQL由于性能高、成本低、可靠性好,已經(jīng)成為最流行的開源數(shù)據(jù)庫,被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。隨著MySQL的不斷成熟,它也逐漸用于更多大規(guī)模網(wǎng)站和應(yīng)用。