做中英文網(wǎng)站的合肥網(wǎng)站seo整站優(yōu)化
目錄
1.為什要有數(shù)據(jù)庫(kù)
2.什么是數(shù)據(jù)庫(kù)
3.LINUX下創(chuàng)建數(shù)據(jù)庫(kù)的操作
4.LINUX創(chuàng)建表的操作
5.SQL語(yǔ)句的分類
?6.Mysql的架構(gòu)
1.為什要有數(shù)據(jù)庫(kù)
直接用文件直接存儲(chǔ)數(shù)據(jù)難道不行嗎?非得搞個(gè)數(shù)據(jù)庫(kù)呢?
首先用文件存儲(chǔ)數(shù)據(jù)是沒錯(cuò),但是文件不方便管理,如果一個(gè)文件有10000行數(shù)據(jù),我想取其中的一行,還需要程序員自己打開文件,自己從頭遍歷文件,找到那一行,而且這段代碼還要程序員自己維護(hù)。
之所以有數(shù)據(jù)庫(kù)就是因?yàn)?/p>
1.文件不利于數(shù)據(jù)的查詢和管理。
2.文件不利于海量數(shù)據(jù)的存儲(chǔ)。
3.文件在程序中控制不方便
2.什么是數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)其實(shí)是一個(gè)網(wǎng)絡(luò)服務(wù),我下載好一個(gè)mysql 是分為兩部分的,mysql客戶端和mysqld服務(wù)端,只不過我們學(xué)習(xí)的時(shí)候,客戶端和服務(wù)端是在同一臺(tái)機(jī)器上的。
使用netstat -nltp命令查看mysqld的網(wǎng)絡(luò)端口號(hào)。
通過mysql客戶端 連接服務(wù)器上的mysqld,就可以修改服務(wù)器 內(nèi)存中或磁盤中的數(shù)據(jù)。
我在口語(yǔ)中說的數(shù)據(jù)庫(kù)一般是指,存儲(chǔ)在內(nèi)存和磁盤中的特定結(jié)構(gòu)的數(shù)據(jù)。
3.LINUX下創(chuàng)建數(shù)據(jù)庫(kù)的操作
1.查看mysql的配置文件,看看數(shù)據(jù)庫(kù)是被存儲(chǔ)在哪里。
配置文件通常在/etc/mysql目錄中。
數(shù)據(jù)庫(kù)是存在 var/lib/mysql中。
2.查看var/lib/mysql
3.創(chuàng)建一個(gè)helloworld數(shù)據(jù)庫(kù)后再查看var/lib/mysql
我們發(fā)現(xiàn)var/lib/mysql中多了一個(gè) helloworld目錄
創(chuàng)建一個(gè)數(shù)據(jù)的本質(zhì)就是創(chuàng)建一個(gè)目錄
4.LINUX創(chuàng)建表的操作
1.在helloworld數(shù)據(jù)中隨便創(chuàng)建一個(gè)表
使用helloworld這數(shù)據(jù)庫(kù)
?2.查看helloworld這個(gè)目錄
?創(chuàng)建表的操作就是在LINUX下創(chuàng)建一個(gè)文件。
5.SQL語(yǔ)句的分類
?6.Mysql的架構(gòu)
mysql的架構(gòu)可以分為三層。
第一層連接池:因?yàn)閙ysql是一個(gè)網(wǎng)絡(luò)服務(wù),一定會(huì)有很多的機(jī)器去連接MySQL,mysql需要對(duì)這些連接進(jìn)行管理,進(jìn)行身份權(quán)限的驗(yàn)證。
第二層語(yǔ)法語(yǔ)義分析:mysql是有自己的sql語(yǔ)句,這一層是分析sql語(yǔ)句是否有誤,還會(huì)對(duì)sql語(yǔ)句進(jìn)行優(yōu)化,講sql語(yǔ)句解釋給存儲(chǔ)引擎
第三層存儲(chǔ)引擎:存儲(chǔ)引擎,就是查詢語(yǔ)句,存儲(chǔ)數(shù)據(jù)等等的具體實(shí)現(xiàn)方法。