欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL學(xué)習(xí)第一天 第一次接觸MySQL

 更新時(shí)間:2016年05月29日 14:22:37   作者:丿木呈廣予口貝  
這篇文章是學(xué)習(xí)MySQL的第一篇文章,開(kāi)啟了探究MySQL的奇妙旅程,內(nèi)容主要是對(duì)MySQL的基礎(chǔ)知識(shí)進(jìn)行學(xué)習(xí),了解,感興趣的小伙伴們可以參考一下

一、什么是數(shù)據(jù)庫(kù)?      

數(shù)據(jù)庫(kù)(Database)是按照數(shù)據(jù)結(jié)構(gòu)來(lái)組織、存儲(chǔ)和管理數(shù)據(jù)的倉(cāng)庫(kù),每個(gè)數(shù)據(jù)庫(kù)都有一個(gè)或多個(gè)不同的API用于創(chuàng)建,訪(fǎng)問(wèn),管理,搜索和復(fù)制所保存的數(shù)據(jù)。
我們也可以將數(shù)據(jù)存儲(chǔ)在文件中,但是在文件中讀寫(xiě)數(shù)據(jù)速度相對(duì)較慢。所以,現(xiàn)在我們使用關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)來(lái)存儲(chǔ)和管理的大數(shù)據(jù)量。所謂的關(guān)系型數(shù)據(jù)庫(kù),是建立在關(guān)系模型基礎(chǔ)上的數(shù)據(jù)庫(kù),借助于集合代數(shù)等數(shù)學(xué)概念和方法來(lái)處理數(shù)據(jù)庫(kù)中的數(shù)據(jù)。
RDBMS即關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(Relational Database Management System)的特點(diǎn)
       1)數(shù)據(jù)以表格的形式出現(xiàn)
       2)每行為各種記錄名稱(chēng)
       3)每列為記錄名稱(chēng)所對(duì)應(yīng)的數(shù)據(jù)域
       4)許多的行和列組成一張表單
       5)若干的表單組成database

二、關(guān)系型數(shù)據(jù)庫(kù)(RDBMS)術(shù)語(yǔ)

針對(duì)關(guān)系型數(shù)據(jù)庫(kù)作如下解釋?zhuān)?br /> 1)關(guān)系型數(shù)據(jù)庫(kù)可以簡(jiǎn)單的理解為二維數(shù)據(jù)庫(kù),表格式類(lèi)似于excel表格,我們平時(shí)我接觸的數(shù)據(jù)據(jù),一般都是關(guān)系型數(shù)據(jù)庫(kù)。
 2)關(guān)系型數(shù)據(jù)庫(kù)不是唯一的高級(jí)數(shù)據(jù)庫(kù)模型,也不是最優(yōu)的一種,但是,關(guān)系型數(shù)據(jù)庫(kù)是現(xiàn)今使用最廣泛、最易于理解和使用的數(shù)據(jù)庫(kù)模型。
3)在我們開(kāi)始學(xué)習(xí)MySQL數(shù)據(jù)庫(kù)前,讓我們先了解下RDBMS的一些術(shù)語(yǔ):
          1數(shù)據(jù)庫(kù): 數(shù)據(jù)庫(kù)是一些關(guān)聯(lián)表的集合。
          2數(shù)據(jù)表: 表是數(shù)據(jù)的矩陣。在一個(gè)數(shù)據(jù)庫(kù)中的表看起來(lái)像一個(gè)簡(jiǎn)單的電子表格。
          3關(guān)系:可以理解成一張二維表,每個(gè)關(guān)系都有一個(gè)關(guān)系名,即表名。
          4關(guān)系模式:對(duì)關(guān)系的描述,在數(shù)據(jù)庫(kù)中通常稱(chēng)之為表結(jié)構(gòu)。
          5元組:可以理解成二維表中的一行,在數(shù)據(jù)庫(kù)中常被稱(chēng)作記錄。一行(=元組,或記錄)是一組相關(guān)的數(shù)據(jù),例如一條用戶(hù)訂閱的數(shù)據(jù)。
          6屬性:可以理解成二維表中的一列,在數(shù)據(jù)庫(kù)中常被成為字段。一列(數(shù)據(jù)元素) 包含了相同的數(shù)據(jù), 例如郵政編碼的數(shù)據(jù)。
          7域:屬性的取值范圍,也是數(shù)據(jù)庫(kù)中某一列的取值限制。
          8關(guān)鍵字:一組可以唯一標(biāo)識(shí)元組的屬性。數(shù)據(jù)庫(kù)中常稱(chēng)為主鍵有一個(gè)或多個(gè)列組成。 
          9冗余:存儲(chǔ)兩倍數(shù)據(jù),冗余可以使系統(tǒng)速度更快。
          10主鍵:主鍵是唯一的。一個(gè)數(shù)據(jù)表中只能包含一個(gè)主鍵。你可以使用主鍵來(lái)查詢(xún)數(shù)據(jù)。
          11外鍵:外鍵用于關(guān)聯(lián)兩個(gè)表。
          12復(fù)合鍵:復(fù)合鍵(組合鍵)將多個(gè)列作為一個(gè)索引鍵,一般用于復(fù)合索引。
          13索引:使用索引可快速訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)表中的特定信息。索引是對(duì)數(shù)據(jù)庫(kù)表中一列或多列的值進(jìn)行排序的一種結(jié)構(gòu)。類(lèi)似于書(shū)籍的目錄。
          14參照完整性: 參照的完整性要求關(guān)系中不允許引用不存在的實(shí)體。與實(shí)體完整性是關(guān)系模型必須滿(mǎn)足的完整性約束條件,目的是保證數(shù)據(jù)的一致性。
4)關(guān)系型數(shù)據(jù)庫(kù)特點(diǎn):
       1容易理解:二維表結(jié)構(gòu)是非常貼近邏輯世界的一個(gè)概念,相對(duì)與網(wǎng)狀、層次以及其它模型更容易理解。
       2使用方便:通過(guò)SQL語(yǔ)言程序員和數(shù)據(jù)管理員可以很方便的在邏輯層面操作數(shù)據(jù)庫(kù)而不必理解其底層實(shí)現(xiàn)。
       3易于維護(hù):豐富的完整性(實(shí)體完整性、參照完整性、用戶(hù)自定義完整性)降低數(shù)據(jù)冗余和數(shù)據(jù)不一致的概率。       
5)關(guān)系操作:
       1數(shù)據(jù)查詢(xún):選擇、投影、連接、并、交、差、除
       2數(shù)據(jù)操作:增加、刪除、修改、查詢(xún)
6)SQL(Structured Query Language):結(jié)構(gòu)化查詢(xún)語(yǔ)言,一種特殊目的的編程語(yǔ)言,數(shù)據(jù)庫(kù)查詢(xún)和程序設(shè)計(jì)語(yǔ)言,用于存儲(chǔ)數(shù)據(jù)以及查詢(xún)、更新和管理關(guān)系型數(shù)據(jù)庫(kù)。

SQL查詢(xún)語(yǔ)言組成部分:
       1DDL(Data Definition Languages)語(yǔ)句:數(shù)據(jù)定義語(yǔ)句,用于定義不同的數(shù)據(jù)段、數(shù)據(jù)庫(kù)、表、列、索引等數(shù)據(jù)庫(kù)的對(duì)象定義。常用關(guān)鍵字主要包括create、drop、alter等。
       2DML(Data Manipulation Language)語(yǔ)句:數(shù)據(jù)操縱語(yǔ)句,用于添加、刪除、更新和查詢(xún)數(shù)據(jù)庫(kù)記錄,并檢查數(shù)
據(jù)完整性。常用關(guān)鍵字包括insert、delete、update和select等。
       3DCL(Data Control Language)語(yǔ)句:數(shù)據(jù)控制語(yǔ)句,用于控制不同數(shù)據(jù)段直接的許可和訪(fǎng)問(wèn)級(jí)別的語(yǔ)句,用于
定義數(shù)據(jù)庫(kù)、表、字段、用戶(hù)的訪(fǎng)問(wèn)權(quán)限和安全級(jí)別。常用關(guān)鍵字有g(shù)rant、revoke等。  

三、MySQL數(shù)據(jù)庫(kù)
MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典MySQL AB公司開(kāi)發(fā),目前屬于Oracle公司。MySQL最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在Web應(yīng)用方面MySQL是最好的RDBMS(Relational Database Management System,關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng))應(yīng)用軟件之一。
MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫(kù)管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性。
MySQL所使用的SQL語(yǔ)言是用于訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的最常用標(biāo)準(zhǔn)化語(yǔ)言。MySQL軟件采用了雙授權(quán)政策,它分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開(kāi)放源碼這一特點(diǎn),一般中小型網(wǎng)站的開(kāi)發(fā)都選擇MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)。由于其社區(qū)版的性能卓越,搭配PHP和Apache可組成良好的開(kāi)發(fā)環(huán)境。

四、MySQL的特點(diǎn)
       1)Mysql是開(kāi)源的,所以你不需要支付額外的費(fèi)用。
       2)Mysql支持大型的數(shù)據(jù)庫(kù)。可以處理?yè)碛猩锨f(wàn)條記錄的大型數(shù)據(jù)庫(kù)。
       3)MySQL使用標(biāo)準(zhǔn)的SQL數(shù)據(jù)語(yǔ)言形式。
       4)Mysql可以允許于多個(gè)系統(tǒng)上,并且支持多種語(yǔ)言。這些編程語(yǔ)言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
       5)Mysql對(duì)PHP有很好的支持,PHP是目前最流行的Web開(kāi)發(fā)語(yǔ)言。
       6)MySQL支持大型數(shù)據(jù)庫(kù),支持5000萬(wàn)條記錄的數(shù)據(jù)倉(cāng)庫(kù),32位系統(tǒng)表文件最大可支持4GB,64位系統(tǒng)支持最大的表文件為8TB。
       7)Mysql是可以定制的,采用了GPL協(xié)議,你可以修改源碼來(lái)開(kāi)發(fā)自己的Mysql系統(tǒng)。

五、MySQL系統(tǒng)特性
       1)使用C和C++編寫(xiě),并使用了多種編譯器進(jìn)行測(cè)試,保證了源代碼的可移植性。
       2)支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng)。
       3)為多種編程語(yǔ)言提供了API。這些編程語(yǔ)言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby、.NET和Tcl 等。
       4)支持多線(xiàn)程,充分利用 CPU 資源。
       5)優(yōu)化的 SQL查詢(xún)算法,有效地提高查詢(xún)速度。
       6)既能夠作為一個(gè)單獨(dú)的應(yīng)用程序應(yīng)用在客戶(hù)端服務(wù)器網(wǎng)絡(luò)環(huán)境中,也能夠作為一個(gè)庫(kù)而嵌入到其他的軟件中。
       7)提供多語(yǔ)言支持,常見(jiàn)的編碼如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名。
       8)提供 TCP/IP、ODBC 和 JDBC等多種數(shù)據(jù)庫(kù)連接途徑。
       9)提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫(kù)操作的管理工具。
       10)支持大型的數(shù)據(jù)庫(kù)??梢蕴幚?yè)碛猩锨f(wàn)條記錄的大型數(shù)據(jù)庫(kù)。
       11)支持多種存儲(chǔ)引擎。
       12)在線(xiàn) DDL/更改功能,數(shù)據(jù)架構(gòu)支持動(dòng)態(tài)應(yīng)用程序和開(kāi)發(fā)人員靈活性(5.6新增)。
       13)復(fù)制全局事務(wù)標(biāo)識(shí),可支持自我修復(fù)式集群(5.6新增)。
       14)復(fù)制無(wú)崩潰從機(jī),可提高可用性(5.6新增)。
       15)復(fù)制多線(xiàn)程從機(jī),可提高性能(5.6新增)。

 六、MySQL數(shù)據(jù)庫(kù)實(shí)現(xiàn)模型

  

MySQL的核心組件(參照上圖)
       1)連接池:用于完成用戶(hù)認(rèn)證、線(xiàn)程重用、并發(fā)連接數(shù)限制、內(nèi)存檢測(cè)以及連接緩存。
       2)SQL接口:使用SQL結(jié)構(gòu)查詢(xún)語(yǔ)言對(duì)數(shù)據(jù)庫(kù)就行操作的接口(DDL DML等)
       3)Parser:分析器,用來(lái)進(jìn)行查詢(xún)轉(zhuǎn)換、權(quán)限分析獲取的操作。
       4)Optimizer:優(yōu)化器,生成并選擇最佳的訪(fǎng)問(wèn)路徑。
       5)Cache & Buffers:與存儲(chǔ)引擎相關(guān)的I/O性能提升工具。
       6)存儲(chǔ)引擎(真正執(zhí)行數(shù)據(jù)查詢(xún)操作的工具M(jìn)yISAM、InnoDB、NDB、Archive、Federated、Memory、Merge、Partner、Community、Custom等等)。

有了這篇文章做基礎(chǔ),相信大家對(duì)MySQL已經(jīng)不再陌生了吧,接下來(lái)小編就和大家深入的學(xué)習(xí)MySQL,享受MySQL帶來(lái)樂(lè)趣。

相關(guān)文章

  • 對(duì)MySql經(jīng)常使用語(yǔ)句的全面總結(jié)(必看篇)

    對(duì)MySql經(jīng)常使用語(yǔ)句的全面總結(jié)(必看篇)

    下面小編就為大家?guī)?lái)一篇對(duì)MySql經(jīng)常使用語(yǔ)句的全面總結(jié)(必看篇)。小編覺(jué)的挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-03-03
  • Mysql高效分頁(yè)詳解

    Mysql高效分頁(yè)詳解

    這篇文章主要為大家詳細(xì)介紹了Mysql高效分頁(yè)的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • MySQL庫(kù)表名大小寫(xiě)的選擇

    MySQL庫(kù)表名大小寫(xiě)的選擇

    一般在數(shù)據(jù)庫(kù)使用規(guī)范中,我們都會(huì)看到這么一條:庫(kù)名及表名一律使用小寫(xiě)英文。你有沒(méi)有思考過(guò),為什么推薦使用小寫(xiě)呢?庫(kù)表名是否應(yīng)該區(qū)分大小寫(xiě)呢?帶著這些疑問(wèn),我們一起來(lái)看下本篇文章。
    2021-06-06
  • mysql配置模板(my-*.cnf)參數(shù)詳細(xì)說(shuō)明

    mysql配置模板(my-*.cnf)參數(shù)詳細(xì)說(shuō)明

    這篇文章主要介紹了mysql配置模板就是mysql的配置文件參數(shù)說(shuō)明,需要的朋友可以參考下
    2015-01-01
  • MySQL幾點(diǎn)重要的性能指標(biāo)計(jì)算和優(yōu)化方法總結(jié)

    MySQL幾點(diǎn)重要的性能指標(biāo)計(jì)算和優(yōu)化方法總結(jié)

    下面小編就為大家?guī)?lái)一篇MySQL幾點(diǎn)重要的性能指標(biāo)計(jì)算和優(yōu)化方法總結(jié)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-03-03
  • 101個(gè)MySQL優(yōu)化技巧和提示

    101個(gè)MySQL優(yōu)化技巧和提示

    人們一直在推動(dòng)MySQL發(fā)展到它的極限。這里是101條調(diào)節(jié)和優(yōu)化MySQL安裝的技巧。一些技巧是針對(duì)特定的安裝環(huán)境的,但這些思路是通用的。我已經(jīng)把他們分成幾類(lèi),來(lái)幫助你掌握更多MySQL的調(diào)節(jié)和優(yōu)化技巧。
    2014-02-02
  • SQL數(shù)據(jù)分表Mybatis?Plus動(dòng)態(tài)表名優(yōu)方案

    SQL數(shù)據(jù)分表Mybatis?Plus動(dòng)態(tài)表名優(yōu)方案

    這篇文章主要介紹了SQL數(shù)據(jù)分表Mybatis?Plus動(dòng)態(tài)表名優(yōu)方案,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • MySQL?中如何歸檔數(shù)據(jù)的實(shí)現(xiàn)方法

    MySQL?中如何歸檔數(shù)據(jù)的實(shí)現(xiàn)方法

    本文主要介紹了MySQL?中如何歸檔數(shù)據(jù)的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • MySQL給新建用戶(hù)并賦予權(quán)限最簡(jiǎn)單的方法

    MySQL給新建用戶(hù)并賦予權(quán)限最簡(jiǎn)單的方法

    在本篇文章里小編給大家整理的是一篇關(guān)于MySQL給新建用戶(hù)并賦予權(quán)限最簡(jiǎn)單的方法,需要的朋友們參考下。
    2019-11-11
  • Mac上安裝MySQL過(guò)程分享

    Mac上安裝MySQL過(guò)程分享

    這篇文章主要介紹了Mac上安裝MySQL過(guò)程分享,本文共分4步完成,簡(jiǎn)單易懂,需要的朋友可以參考下
    2014-11-11

最新評(píng)論