大數據“復活”記
736
2025-03-31
MySQL的起源
MySQL是一個關系型數據庫管理系統,由瑞典MySQL AB 公司開發,屬于 Oracle 旗下產品。MySQL 是最流行的關系型數據庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關系數據庫管理系統) 應用軟件之一。
MySQL是一種關系型數據庫管理系統,關系數據庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度并提高了靈活性。
MySQL所使用的 SQL 語言是用于訪問數據庫的最常用標準化語言。MySQL 軟件采用了雙授權政策,分為社區版和商業版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網站的開發都選擇 MySQL 作為網站數據庫。
MySQL的優勢
使用 C 和 C++ 編寫,并使用多種編譯器進行測試,保證源代碼的可移植性。
支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows 等多種操作系統。
為多種編程語言提供了 API。這些編程語言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby 和 Tcl 等。
支持多線程,充分利用 CPU 資源。
優化的 SQL 查詢算法,有效地提高查詢速度。
既能夠作為一個單獨的應用程序應用在客戶端服務器網絡環境中,也能夠作為一個庫而嵌入其他的軟件中。
提供多語言支持,常見的編碼如中文的 GB 2312、BIG 5,日文的 Shift_JIS 等都可以用作數據表名和數據列名。
提供 TCP/IP、ODBC 和 JDBC 等多種數據庫連接途徑。
提供用于管理、檢查、優化數據庫操作的管理工具。
支持大型的數據庫。可以處理擁有上千萬條記錄的大型數據庫。
支持多種存儲引擎。
MySQL的應用
1、Web網站系統
Web站點,是MySQL最大的客戶群,也是MySQL發展史上最為重要的支撐力量,這一點在最開始的MySQLServer簡介部分就已經說明過。
MySQL之所以能成為Web站點開發者們最青睞的數據庫管理系統,是因為MySQL數據庫的安裝配置都非常簡單,使用過程中的維護也不像很多大型商業數據庫管理系統那么復雜,而且性能出色。還有一個非常重要的原因就是MySQL是開放源代碼的,完全可以免費使用。
2、日志記錄系統
MySQL數據庫的插入和查詢性能都非常的高效,如果設計地較好,在使用MyISAM存儲引擎的時候,兩者可以做到互不鎖定,達到很高的并發性能。所以,對需要大量的插入和查詢日志記錄的系統來說,MySQL是非常不錯的選擇。比如處理用戶的登錄日志,操作日志等,都是非常適合的應用場景。
3、數據倉庫系統
隨著現在數據倉庫數據量的飛速增長,我們需要的存儲空間越來越大。數據量的不斷增長,使數據的統計分析變得越來越低效,也越來越困難。怎么辦?這里有幾個主要的解決思路,一個是采用昂貴的高性能主機以提高計算性能,用高端存儲設備提高I/O性能,效果理想,但是成本非常高;第二個就是通過將數據復制到多臺使用大容量硬盤的廉價pcserver上,以提高整體計算性能和I/O能力,效果尚可,存儲空間有一定限制,成本低廉;第三個,通過將數據水平拆分,使用多臺廉價的pcserver和本地磁盤來存放數據,每臺機器上面都只有所有數據的一部分,解決了數據量的問題,所有pcserver一起并行計算,也解決了計算能力問題,通過中間代理程序調配各臺機器的運算任務,既可以解決計算性能問題又可以解決I/O性能問題,成本也很低廉。在上面的三個方案中,第二和第三個的實現,MySQL都有較大的優勢。通過MySQL的簡單復制功能,可以很好的將數據從一臺主機復制到另外一臺,不僅僅在局域網內可以復制,在廣域網同樣可以。當然,很多人可能會說,其他的數據庫同樣也可以做到,不是只有MySQL有這樣的功能。確實,很多數據庫同樣能做到,但是MySQL是免費的,其他數據庫大多都是按照主機數量或者cpu數量來收費,當我們使用大量的pcserver的時候,license費用相當驚人。第一個方案,基本上所有數據庫系統都能夠實現,但是其高昂的成本并不是每一個公司都能夠承擔的。
4、嵌入式系統
嵌入式環境對軟件系統最大的限制是硬件資源非常有限,在嵌入式環境下運行的軟件系統,必須是輕量級低消耗的軟件。
MySQL在資源的使用方面的伸縮性非常大,可以在資源非常充裕的環境下運行,也可以在資源非常少的環境下正常運行。它對于嵌入式環境來說,是一種非常合適的數據庫系統,而且MySQL有專門針對于嵌入式環境的版本。
MySQL如何學習
作為一個初學者,我們應該掌握一些基本的MySQL語法知識,對于數據的操作我們只需要增刪改查,那么就需要我們較為熟悉的掌握基本的語法。同時我們還要知道如何建表,如何刪除表的數據,如何更新表的數據,最后我們還要對于數據查詢進行較多的學習。
1.多上機練習,要想熟練地掌握數據庫,必須經常上機練習,只有在上機實踐中才能深刻體會數據庫的使用,通常情況下,數據庫管理員工作的時間越長,其工作經驗就越豐富,很多復雜的問題,可以根據數據庫管理員的經驗來更好的解決,上機實踐中可以將學到的數據庫理論知識理解的更加透徹、
2.學會編寫SQL語句,SQL語句是數據庫的靈魂,數據庫中的很多操作都是通過SQL語句來實現的,只有經常用SQL語句來操作數據庫中的數據,讀者才可以更加深刻地理解數據庫。
3.數據庫理論知識不能丟,數據庫理論知識是學好數據庫的基礎,雖然理論知識會有點枯燥,但這是學好數據庫的前提,例如,數據庫理論中會間接涉及E-R圖,數據庫設計原則等知識,如果不了解這些知識,就很難獨立設計一個很好的數據庫及表,讀者可以將數據庫理論知識與上機實踐結合到一起來學習,這樣效率會提高
在選擇數據庫時,要根據運行的操作系統和管理系統的情況來選擇數據庫,在學安裝MySQL數據庫時,首先要確認操作系統的版本,然后再選擇是安裝源碼包還是安裝二進制軟件。
MySQL對于后續有什么幫助?
MySQL學好之后,在對于Hadoop里面的hive語句是十分有幫助的,可以說就是如出一轍,書寫其實沒有什么兩樣,最后你要去學習spark的時候,需要用到MySQL,一般處理數據我們都需要用到MySQL的語句,所以MySQL是比較的重要的,需要自己求學于根基不斷走向SQL語句的高峰,這樣才可以提升自己的專業水平能力。
每文一語
既然選擇了,就努力奔跑,現在的努力都是為了未來的實力
MySQL 數據庫
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。