本文轉(zhuǎn)載于公眾號(hào)TeachPlus---MYSQL數(shù)據(jù)庫(kù)緒論
? ??????????????????????????????????????????MYSQL數(shù)據(jù)庫(kù)緒論
數(shù)據(jù)庫(kù)的概述
數(shù)據(jù)庫(kù)(Database)是按照數(shù)據(jù)結(jié)構(gòu)來(lái)組織获搏、存儲(chǔ)和管理數(shù)據(jù)的倉(cāng)庫(kù)很洋,它產(chǎn)生于距今六十多年前,隨著信息技術(shù)和市場(chǎng)的發(fā)展岁诉,特別是二十世紀(jì)九十年代以后锚沸,數(shù)據(jù)管理不再僅僅是存儲(chǔ)和管理數(shù)據(jù),而轉(zhuǎn)變成用戶所需要的各種數(shù)據(jù)管理的方式涕癣。數(shù)據(jù)庫(kù)有很多種類型哗蜈,從最簡(jiǎn)單的存儲(chǔ)有各種數(shù)據(jù)的表格到能夠進(jìn)行海量數(shù)據(jù)存儲(chǔ)的大型數(shù)據(jù)庫(kù)系統(tǒng)都在各個(gè)方面得到了廣泛的應(yīng)用。
在信息化社會(huì)坠韩,充分有效地管理和利用各類信息資源恬叹,是進(jìn)行科學(xué)研究和決策管理的前提條件。數(shù)據(jù)庫(kù)技術(shù)是管理信息系統(tǒng)同眯、辦公自動(dòng)化系統(tǒng)绽昼、決策支持系統(tǒng)等各類信息系統(tǒng)的核心部分,是進(jìn)行科學(xué)研究和決策管理的重要技術(shù)手段须蜗。
數(shù)據(jù)庫(kù)的基本概念
數(shù)據(jù)
數(shù)據(jù)的基本定義
對(duì)客觀事物的符號(hào)表示硅确,如圖形符號(hào)、數(shù)字明肮、字母等菱农,數(shù)據(jù)是數(shù)據(jù)庫(kù)中存儲(chǔ)的基本對(duì)象。
在日常生活中柿估,人們直接用語(yǔ)言來(lái)描述事物循未;在計(jì)算機(jī)中,為了存儲(chǔ)和處理這些事物秫舌,
就要將事物的特征抽象出來(lái)組成一個(gè)記錄來(lái)描述的妖。
數(shù)據(jù)的種類:文字、圖形足陨、圖象嫂粟、聲音
數(shù)據(jù)的特點(diǎn):數(shù)據(jù)與其語(yǔ)義是不可分的
數(shù)據(jù)舉例
學(xué)生檔案中的學(xué)生記錄(李文華,男墨缘,1984星虹,上海零抬,計(jì)算機(jī)系,2003)
數(shù)據(jù)的形式不能完全表達(dá)其內(nèi)容
數(shù)據(jù)的解釋
語(yǔ)義:學(xué)生姓名宽涌、性別平夜、出生年月、籍貫卸亮、所在系別忽妒、入學(xué)時(shí)間
解釋:李文華是個(gè)大學(xué)生,1984年出生嫡良,上海人锰扶,2003年考入計(jì)算機(jī)系
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)(Database,簡(jiǎn)稱DB)的定義:? ?
?J.Martin給數(shù)據(jù)庫(kù)下了一個(gè)比較完整的定義:數(shù)據(jù)庫(kù)是存儲(chǔ)在一起的相關(guān)數(shù)據(jù)的集合献酗,這些數(shù)據(jù)是結(jié)構(gòu)化的寝受,
無(wú)有害的或不必要的冗余,并為多種應(yīng)用服務(wù)“按照數(shù)據(jù)結(jié)構(gòu)來(lái)組織罕偎、存儲(chǔ)和管理數(shù)據(jù)的倉(cāng)庫(kù)”
數(shù)據(jù)庫(kù)管理系統(tǒng)
數(shù)據(jù)管理系統(tǒng)(Database Management System)的定義:
數(shù)據(jù)庫(kù)管理系統(tǒng)(Database Management System)是一種操縱和管理數(shù)據(jù)庫(kù)的大型軟件很澄,
是用于建立、使用和維護(hù)數(shù)據(jù)庫(kù)颜及,簡(jiǎn)稱DBMS甩苛。
關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)稱為RDBMS,R指Relation
DBMS的作用
它對(duì)數(shù)據(jù)庫(kù)進(jìn)行統(tǒng)一的管理和控制俏站,以保證數(shù)據(jù)庫(kù)的安全性和完整性讯蒲。
DBMS的主要功能-For數(shù)據(jù)庫(kù)管理員
數(shù)據(jù)庫(kù)的運(yùn)行管理
????????保證數(shù)據(jù)的安全性、完整性肄扎、
????????多用戶對(duì)數(shù)據(jù)的并發(fā)使用
????????發(fā)生故障后的系統(tǒng)恢復(fù)
?數(shù)據(jù)庫(kù)的建立和維護(hù)功能(實(shí)用程序)
????????數(shù)據(jù)庫(kù)數(shù)據(jù)批量裝載
????????數(shù)據(jù)庫(kù)轉(zhuǎn)儲(chǔ)
? ????? 介質(zhì)故障恢復(fù)
? ? ? ? ?數(shù)據(jù)庫(kù)的重組織
? ? ? ? ?性能監(jiān)視等
時(shí)下流行的DBMS
Oracle:應(yīng)用廣泛墨林、功能強(qiáng)大,分布式數(shù)據(jù)庫(kù)系統(tǒng)犯祠,“關(guān)系-對(duì)象”型數(shù)據(jù)庫(kù)
MySQL:快捷旭等、可靠開(kāi)源、免費(fèi)衡载,與PHP組成經(jīng)典的LAMP組合
SQL Server針對(duì)不同用戶群體的五個(gè)特殊的版本搔耕,易用性好
DB2應(yīng)用于大型應(yīng)用系統(tǒng),具有較好的可伸縮性
數(shù)據(jù)庫(kù)系統(tǒng)
數(shù)據(jù)庫(kù)系統(tǒng)的定義:
數(shù)據(jù)庫(kù)系統(tǒng)(Database System痰娱,簡(jiǎn)稱DBS)是一個(gè)實(shí)際可運(yùn)行的存儲(chǔ)弃榨、維護(hù)和應(yīng)用系統(tǒng)提供數(shù)據(jù)的軟件系統(tǒng)
數(shù)據(jù)庫(kù)系統(tǒng)構(gòu)成:
DBMS,DB梨睁,應(yīng)用軟件惭墓,數(shù)據(jù)庫(kù)管理員,用戶
數(shù)據(jù)庫(kù)系統(tǒng)的使用
SQL語(yǔ)言
SQL的概述
什么是SQL而姐?
SQL是Structured Query Language(結(jié)構(gòu)化查詢語(yǔ)言)的縮寫(xiě)腊凶。
SQL是專為數(shù)據(jù)庫(kù)而建立的操作命令集,是一種功能齊全的數(shù)據(jù)庫(kù)語(yǔ)言。
在使用它時(shí)钧萍,只需要發(fā)出“做什么”的命令褐缠,“怎么做”是不用使用者考慮的。
SQL語(yǔ)法組成
DML( Data Manipulation Language數(shù)據(jù)操作語(yǔ)言)
——查詢风瘦、插入队魏、刪除和修改數(shù)據(jù)庫(kù)中的數(shù)據(jù);
——SELECT万搔、INSERT胡桨、 UPDATE 、DELETE等瞬雹;
DCL( Data Control Language數(shù)據(jù)控制語(yǔ)言)
——用來(lái)控制存取許可昧谊、存取權(quán)限等;
——GRANT酗捌、REVOKE 等呢诬;
DDL( Data Definition Language數(shù)據(jù)定義語(yǔ)言)
——用來(lái)建立數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)對(duì)象和定義其列
——CREATE TABLE 胖缤、DROP TABLE尚镰、ALTER TABLE 等
功能函數(shù)
——日期函數(shù)、數(shù)學(xué)函數(shù)哪廓、字符函數(shù)狗唉、系統(tǒng)函數(shù)等
MYSQL數(shù)據(jù)庫(kù)
MYSQL數(shù)據(jù)庫(kù)的定義
MySQL是一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),開(kāi)發(fā)者為瑞典MySQL AB公司涡真。目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中分俯。由于其體積小、速度快综膀、總體擁有成本低澳迫,尤其是開(kāi)放源碼這一特點(diǎn),許多中小型 網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫(kù)剧劝。
MYSQL數(shù)據(jù)庫(kù)的安裝
安裝mysql服務(wù)端:sudo apt-get install mysql-server
安裝圖形開(kāi)發(fā)界面:sudo apt-get install mysql-workbench
安裝mysql開(kāi)發(fā)包:sudo apt-get install libmysqlclient-dev
MYSQL登錄命令
mysql -h host_name -u user_name –ppassword
h:當(dāng)連接MySQL服務(wù)器不在同臺(tái)主機(jī)時(shí)橄登,填寫(xiě)主機(jī)名或IP地址
u:登錄MySQL的用戶名
p:登錄MySQL的密碼
注意:密碼如果寫(xiě)在命令行的時(shí)候一定不能有空格。如果使用的系統(tǒng)為linux并且登陸用戶名字與MySQL的用戶名相同即可不用輸入用戶名密碼讥此,linux默認(rèn)是以root登陸拢锹,windows默認(rèn)用戶是ODBC
MYSQL程序常用命令
顯示所有數(shù)據(jù)庫(kù):show databases;
選定默認(rèn)數(shù)據(jù)庫(kù):use dbname;
顯示默認(rèn)數(shù)據(jù)庫(kù)中所有表:show tables;
退出mysql程序:\q