一、軟件安裝及服務器設置
1.mysql安裝包及教程地址:
http://www.runoob.com/mysql/mysql-install.html
2.安裝過程可能遇到的問題:
https://blog.csdn.net/qq_40942329/article/details/79125366
https://cloud.tencent.com/developer/article/1010608
二问裕、數(shù)據(jù)庫基礎知識
1.數(shù)據(jù)庫定義:數(shù)據(jù)庫逮壁,簡而言之可視為電子化的文件柜——存儲電子文件的處所,用戶可以對文件中的數(shù)據(jù)運行新增粮宛、截取窥淆、更新、刪除等操作巍杈。所謂“數(shù)據(jù)庫”系以一定方式儲存在一起忧饭、能予多個用戶共享、具有盡可能小的冗余度筷畦、與應用程序彼此獨立的數(shù)據(jù)集合词裤。一個數(shù)據(jù)庫由多個表空間(Tablespace)構成。
2.關系型數(shù)據(jù)庫:所謂關系模型就是“一對一鳖宾、一對多吼砂、多對多”等關系模型,關系模型就是指二維表格模型,因而一個關系型數(shù)據(jù)庫就是由二維表及其之間的聯(lián)系組成的一個數(shù)據(jù)組織鼎文。
關系型數(shù)據(jù)可以很好地存儲一些關系模型的數(shù)據(jù)渔肩,比如一個老師對應多個學生的數(shù)據(jù)(“多對多”),一本書對應多個作者(“一對多”)漂问,一本書對應一個出版日期(“一對一”)
關系模型是我們生活中能經常遇見的模型赖瞒,存儲這類數(shù)據(jù)一般用關系型數(shù)據(jù)庫女揭。
關系模型包括數(shù)據(jù)結構(數(shù)據(jù)存儲的問題,二維表)栏饮、操作指令集合(SQL語句)吧兔、完整性約束(表內數(shù)據(jù)約束、表與表之間的約束)袍嬉。
3.二維表:在關系模型中境蔼,數(shù)據(jù)結構表示為一個二維表,一個關系就是一個二維表(但不是任意一個二維表都能表示一個關系伺通,例如兩個元組的候選鍵相同即表中的任意兩行相同箍土,就不能表示一個關系。)二維表名就是關系名罐监。表中的第一行通常稱為屬性名吴藻,表中的每一個元組和屬性都是不可再分的,且元組的次序是無關緊要的弓柱。
4.行:一行是一組相關的數(shù)據(jù)沟堡,例如一條網(wǎng)張的信息數(shù)據(jù)。
5.列:一列包含了相同的數(shù)據(jù), 例如郵政編碼的數(shù)據(jù)矢空。列是表中豎直排列的實體航罗,它包含了表中與某一特定字段相關的所有信息。
6.主鍵:主關鍵字(primary key)是表中的一個或多個字段屁药,它的值用于唯一地標識表中的某一條記錄粥血。在兩個表的關系中,主關鍵字用來在一個表中引用來自于另一個表中的特定記錄酿箭。主關鍵字是一種唯一關鍵字复亏,表定義的一部分。一個表的主鍵可以由多個關鍵字共同組成缭嫡,并且主關鍵字的列不能包含空值蜓耻。主關鍵字是可選的,并且可在 CREATE TABLE 或 ALTER TABLE 語句中定義械巡。
7.外鍵:如果公共關鍵字在一個關系中是主關鍵字,那么這個公共關鍵字被稱為另一個關系的外鍵饶氏。由此可見讥耗,外鍵表示了兩個關系之間的相關聯(lián)系。以另一個關系的外鍵作主關鍵字的表被稱為主表疹启,具有此外鍵的表被稱為主表的從表古程。外鍵又稱作外關鍵字。
三喊崖、MySQL數(shù)據(jù)庫管理系統(tǒng)
1.數(shù)據(jù)庫
- MySQL 是一個關系型數(shù)據(jù)庫管理系統(tǒng)挣磨,由瑞典 MySQL AB 公司開發(fā)雇逞,目前屬于 Oracle 公司。MySQL 是一種關聯(lián)數(shù)據(jù)庫管理系統(tǒng)茁裙,關聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中塘砸,而不是將所有數(shù)據(jù)放在一個大倉庫內,這樣就增加了速度并提高了靈活性晤锥。
- MySQL 是開源的掉蔬,所以你不需要支付額外的費用。
- MySQL 支持大型的數(shù)據(jù)庫矾瘾∨危可以處理擁有上千萬條記錄的大型數(shù)據(jù)庫。
- MySQL 使用標準的 SQL 數(shù)據(jù)語言形式壕翩。
- MySQL 可以運行于多個系統(tǒng)上蛉迹,并且支持多種語言。這些編程語言包括 C放妈、C++北救、Python、Java大猛、Perl扭倾、PHP、Eiffel挽绩、Ruby 和 Tcl 等膛壹。
- MySQL 對PHP有很好的支持,PHP 是目前最流行的 Web 開發(fā)語言唉堪。
- MySQL 支持大型數(shù)據(jù)庫模聋,支持 5000 萬條記錄的數(shù)據(jù)倉庫,32 位系統(tǒng)表文件最大可支持 4GB唠亚,64 位系統(tǒng)支持最大的表文件為8TB链方。
- MySQL 是可以定制的,采用了 GPL 協(xié)議灶搜,你可以修改源碼來開發(fā)自己的 MySQL 系統(tǒng)祟蚀。
2.數(shù)據(jù)表:
- 在關系數(shù)據(jù)庫中,數(shù)據(jù)庫表是一系列二維數(shù)組的集合割卖,用來代表和儲存數(shù)據(jù)對象之間的關系前酿。
- 表是構成表空間的基本結構,由區(qū)間構成鹏溯。數(shù)據(jù)表由行(row)和列(column)組成罢维,是一個二維的網(wǎng)格結構,每個列都是一個字段丙挽,字段由字段名稱和字段的數(shù)據(jù)類型以及一些約束條件組成肺孵,表中至少要有一列匀借,可以有多行或0行,表名要唯一 平窘。
3.視圖:
- 數(shù)據(jù)庫視圖是一個數(shù)據(jù)庫子集吓肋,基于對一個或多個數(shù)據(jù)庫表運行的查詢。數(shù)據(jù)庫視圖作為命名的查詢保存在數(shù)據(jù)庫中初婆,可用于保存頻繁使用的復雜查詢蓬坡。
- 視圖包含行和列,就像一個真實的表磅叛。視圖中的字段就是來自一個或多個數(shù)據(jù)庫中的真實的表中的字段屑咳。我們可以向視圖添加 SQL 函數(shù)、WHERE 以及 JOIN 語句弊琴,我們也可以提交數(shù)據(jù)兆龙,就像這些來自于某個單一的表。
4.存儲過程:
存儲過程(Stored Procedure)是在大型數(shù)據(jù)庫系統(tǒng)中敲董,一組為了完成特定功能的SQL 語句集紫皇,存儲在數(shù)據(jù)庫中,經過第一次編譯后調用不需要再次編譯腋寨,用戶通過指定存儲過程的名字并給出參數(shù)(如果該存儲過程帶有參數(shù))來執(zhí)行它。存儲過程是數(shù)據(jù)庫中的一個重要對象萄窜。