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