日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Mysql数据库

發(fā)布時間:2023/12/20 数据库 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mysql数据库 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目錄

引言

一、數(shù)據(jù)庫簡介

1. 使用數(shù)據(jù)庫的必要性

2. 數(shù)據(jù)庫的基本概念

2.1 數(shù)據(jù)

2.2 數(shù)據(jù)庫和數(shù)據(jù)庫表

2.3 數(shù)據(jù)庫管理系統(tǒng)

2.4 數(shù)據(jù)庫系統(tǒng)

2.5 DBMS的工作模式

二、數(shù)據(jù)庫的發(fā)展史

1. 初級階段(第一代數(shù)據(jù)庫)

2. 中級階段(第二代數(shù)據(jù)庫)

3. 高級階段(第三代數(shù)據(jù)庫)

三、當今主流數(shù)據(jù)庫介紹

1. 關系數(shù)據(jù)庫

2. 非關系數(shù)據(jù)庫

3. 關系數(shù)據(jù)庫概述

3.1 基本結構

3.2 主鍵

3.3 外鍵

3.4 關系數(shù)據(jù)庫應用

4. 關系型數(shù)據(jù)庫和非關系型數(shù)據(jù)庫的區(qū)別

4.1 關系型數(shù)據(jù)庫

4.2 非關系型數(shù)據(jù)庫

5. 數(shù)據(jù)完整性規(guī)則

四、MySQL數(shù)據(jù)庫介紹

1、MySQL商業(yè)版與社區(qū)版

2、MySQL產(chǎn)品陣營

五、Mysql安裝

MySQL 組成

5.1 法一:編譯安裝

5.2 法二:yum安裝5.7版

六、總結


引言

21世紀,人類邁入了“信息爆炸時代”,大量的數(shù)據(jù)、信息在不斷產(chǎn)生,伴隨而來的就是如何安全、有效的存儲、檢索和管理它們。對數(shù)據(jù)的有效存儲、高效訪問、方便共享和安全控制已成為信息時代亟待解決的問題。

一、數(shù)據(jù)庫簡介

1. 使用數(shù)據(jù)庫的必要性

(1)使用數(shù)據(jù)庫可以高效且條理分明地存儲數(shù)據(jù),使人們能夠更加迅速、方便地管理數(shù)據(jù)。

(2)數(shù)據(jù)庫技術是計算機科學的核心技術之一,具有完備的理論基礎。對數(shù)據(jù)庫基本概念的掌握,將有助于對數(shù)據(jù)庫的理解。

(3)數(shù)據(jù)庫具有以下特點:
?? ①可以結構化存儲大量的數(shù)據(jù)信息,方便用戶進行有效的檢索和訪問。
?? ②可以有效地保持數(shù)據(jù)信息的一致性、完整性,降低數(shù)據(jù)冗余。
?? ③可以滿足應用的共享和安全方面的要求。

2. 數(shù)據(jù)庫的基本概念

2.1 數(shù)據(jù)

(1)描述事物的符號記錄稱為數(shù)據(jù)(Data)
(2)數(shù)據(jù)不僅僅包括數(shù)字,文字、圖形、圖像、聲音、檔案記錄等都是數(shù)據(jù)
(3)在數(shù)據(jù)庫中,數(shù)據(jù)是以“記錄”的形式按統(tǒng)一的格式進行存儲的,而不是雜亂無章的。相同格式喝類型的數(shù)據(jù)統(tǒng)一存放在一起,而不會把“人”和“書”混在一起存儲,這樣的話數(shù)據(jù)的存儲就能井然有序了
(4)如下表中存儲的一行數(shù)據(jù),在數(shù)據(jù)庫中稱為一條“記錄”(Record),每條記錄中的每一個輸出稱為“列”,圖中的編號、姓名、性別、年齡、民族、專業(yè)都是列名

編號姓名性別年齡民族專業(yè)
1張三22漢族信息技術
2李四23回族音樂
3黑娃20漢族自動化
4狗蛋21漢族會計

2.2 數(shù)據(jù)庫和數(shù)據(jù)庫表

(1)不同的記錄組織在一起,就形成了數(shù)據(jù)庫(Database,DB)的“表”(Table)
(2)也可以說,表是用來存儲具體數(shù)據(jù)的
(3)數(shù)據(jù)庫就是表的集合,它是以一定的組織方式存儲的相互有關的數(shù)據(jù)集合。例如,關系數(shù)據(jù)庫的表由記錄組成,記錄由字段組成,字段由字符或數(shù)字組成。它可以供各種用戶共享,具有最小冗余度和較高的數(shù)據(jù)獨立性。它是統(tǒng)一管理的相關數(shù)據(jù)的集合。
(4)通常,數(shù)據(jù)庫并不是簡單地存儲這些數(shù)據(jù)的,還要表示它們之間的關系。比如說,書和人是存在聯(lián)系的,書的作者可能就是某個人,因此需要建立書與人的“關系”。這種關系也需要用數(shù)據(jù)庫來表示,因此關系的描述也是數(shù)據(jù)庫的一部分。

2.3 數(shù)據(jù)庫管理系統(tǒng)

數(shù)據(jù)庫管理系統(tǒng)(DBMS)是實現(xiàn)對數(shù)據(jù)庫資源有效組織、管理和存取的系統(tǒng)軟件。它在操作系統(tǒng)的支持下,支持用戶對數(shù)據(jù)庫的各項操作。
DBMS主要包括以下功能:

(1)數(shù)據(jù)庫的建立和維護功能:
包括建立數(shù)據(jù)庫的結構和數(shù)據(jù)的錄入與轉換、數(shù)據(jù)庫的轉儲與恢復、數(shù)據(jù)庫的重組與性能監(jiān)視等功能。

(2)數(shù)據(jù)定義功能:
包括定義全局數(shù)據(jù)結構、局部邏輯數(shù)據(jù)結構、存儲結構、保密模式及信息格式等功能。保證存儲在數(shù)據(jù)庫中的數(shù)據(jù)正確、有效和相容,以防止不合語義的錯誤數(shù)據(jù)被輸入或輸出。

(3)數(shù)據(jù)操縱功能:
包括數(shù)據(jù)查詢統(tǒng)計和數(shù)據(jù)更新兩個方面。

(4)數(shù)據(jù)庫的運行管理功能:
這是數(shù)據(jù)庫管理系統(tǒng)的核心部分,包括并發(fā)控制、存取控制、數(shù)據(jù)庫內部維護等功能。

(5)通信功能:
DBMS 其他軟件系統(tǒng)之間的通信,如Access能與其他Office組件進行數(shù)據(jù)交換。

2.4 數(shù)據(jù)庫系統(tǒng)

(1)數(shù)據(jù)庫系統(tǒng) (DBS) 是一個人一機系統(tǒng),一般由硬件、操作系統(tǒng)、數(shù)據(jù)庫、DBMS、應用軟件和數(shù)據(jù)庫用戶(包括數(shù)據(jù)庫管理員)組成。用戶可以通過DBMS 操作數(shù)據(jù)庫,也可以通過應用程序操作數(shù)據(jù)庫。

(2)應用程序是利用 DBMS,為解決某個具體的管理或數(shù)據(jù)處理的任務而編制的一系列命令的有序集合。如果應用程序比較完善,能夠提供友好的人機界面,并編譯成可執(zhí)行文件發(fā)行,使得普通用戶不需要具備計算機的專業(yè)知識,在較短時間內就學會使用,那么就稱為數(shù)據(jù)庫應用軟件。

(3)常用的數(shù)據(jù)庫應用軟件有人事管理、財務管理、圖書管理等信息管理軟件及各類信息咨詢系統(tǒng)等。

(4)數(shù)據(jù)庫管理員(DBA)負責數(shù)據(jù)庫的更新和備份、數(shù)據(jù)庫系統(tǒng)的維護、用戶管理等工作,保證數(shù)據(jù)庫系統(tǒng)的正常運行。

通過下圖,可以看出用戶獲取數(shù)據(jù)的過程:

客戶端軟件發(fā)送數(shù)據(jù)請求給 DBMS,由DBMS調用相關的底層指令,從數(shù)據(jù)庫中的數(shù)據(jù)文件中調取相關的數(shù)據(jù),
然后將查詢到的數(shù)據(jù)結果返回給 DBMS,經(jīng)由DBMS處理后返回給客戶端程序。

2.5 DBMS的工作模式

  • 接受應用程序的數(shù)據(jù)請求和處理請求
  • 將用戶的數(shù)據(jù)請求(高級指令)轉換為復雜機器代碼(底層指令)
  • 實現(xiàn)對數(shù)據(jù)庫的操作
  • 從數(shù)據(jù)庫的操作中接受查詢結果
  • 對查詢結果進行處理(格式轉換)
  • 將處理結果返回給用戶
  • 二、數(shù)據(jù)庫的發(fā)展史

    數(shù)據(jù)庫技術的發(fā)展已經(jīng)成為先進信息技術的重要組成部分,是現(xiàn)代計算機信息系統(tǒng)和計算機應用系統(tǒng)的基礎和核心。
    數(shù)據(jù)庫技術最初產(chǎn)生于20世紀60年代中期,根據(jù)數(shù)據(jù)模型的發(fā)展,可以劃分為三個階段:

    1. 初級階段(第一代數(shù)據(jù)庫)

    (1)自20世紀60年代起,第一代數(shù)據(jù)庫系統(tǒng)問世
    (2)它們是層次模型與網(wǎng)狀模型的數(shù)據(jù)庫系統(tǒng),為統(tǒng)一管理和共享數(shù)據(jù)提供了有力的支撐
    (3)在這個階段中,數(shù)據(jù)庫的代表是 1969 年 IBM 公司研制的層次模型的數(shù)據(jù)庫管理系統(tǒng)——IMS (InformationManagement System,信息管理系統(tǒng))和 20 世紀 70 年代美國數(shù)據(jù)系統(tǒng)語言協(xié)會(CODASYL)下述數(shù)據(jù)庫任務組(DBTG)提議的網(wǎng)狀模型

    2. 中級階段(第二代數(shù)據(jù)庫)

    (1)20 世紀 70 年代初,第二代數(shù)據(jù)庫—關系數(shù)據(jù)庫開始出現(xiàn)
    (2)自1970 年 IBM 研究員闡述了關系模型的概念后,IBM 大力投入關系數(shù)據(jù)庫的研究
    (3)關系數(shù)據(jù)庫的底層實現(xiàn)起來比較容易,所以很快被采用,并進入了眾多商業(yè)數(shù)據(jù)庫的研發(fā)計劃,Oracle 就是當時順應關系數(shù)據(jù)模型的出現(xiàn)而成立的一家專做(關系)數(shù)據(jù)庫的公司
    (4)20 世紀 80 年代初,IBM 公司的關系數(shù)據(jù)庫系統(tǒng) DB2 問世,而 Oracle 公司也將 Orale 移植到桌面計算機上,這時,作為第二代數(shù)據(jù)庫系統(tǒng)的關系數(shù)據(jù)庫,開始逐步取代層次與網(wǎng)狀模型的數(shù)據(jù)庫,成為行業(yè)主流,到目前為止,關系數(shù)據(jù)庫系統(tǒng)仍占領數(shù)據(jù)庫應用的主要地位
    (5)關系數(shù)據(jù)庫系統(tǒng)將結構化查詢語言(Structured Query Language,SQL)作為數(shù)據(jù)定義語言(DDL)和數(shù)據(jù)操作語言(DML),它一誕生就成為關系數(shù)據(jù)庫的標準語言
    (6)SQL 使得關系數(shù)據(jù)庫中數(shù)據(jù)庫表的查詢可以通過簡單的、聲明性的方式進行,大大簡化了程序員的工作。

    3. 高級階段(第三代數(shù)據(jù)庫)

    (1)自20世紀80年代開始,適應不同領域的新型數(shù)據(jù)庫系統(tǒng)不斷涌現(xiàn)
    (2)面向對象的數(shù)據(jù)庫系統(tǒng),實用性強、適應面廣
    (3)20世紀90年代后期,形成了多種數(shù)據(jù)庫系統(tǒng)共同支撐應用的局面
    (4)一些新的元素被添加進主流數(shù)據(jù)庫系統(tǒng)中,例如,Oracle支持的“關系—對象”數(shù)據(jù)庫模型

    三、當今主流數(shù)據(jù)庫介紹

    在數(shù)據(jù)庫技術日益發(fā)展的今天,主流數(shù)據(jù)庫代表著成熟的數(shù)據(jù)技術,了解常用的數(shù)據(jù)庫,就可以知道數(shù)據(jù)庫技術發(fā)展的程度,以及對未來的大體方向。

    1. 關系數(shù)據(jù)庫

    (1)SQL Server(微軟公司產(chǎn)品):面向 Windows 系統(tǒng),簡單、易用,更容易上手

    (2)Oracle(甲骨文公司產(chǎn)品):Oracle 數(shù)據(jù)庫是世界上使用廣泛的數(shù)據(jù)庫之一,面向所有主流平臺,安全完善,操作復雜

    (3)DB2(IBM 公司產(chǎn)品):面向所有主流平臺,大型、安全、完善

    (4)MySQL(被甲骨文公司收購):體積小、速度快、開源

    2. 非關系數(shù)據(jù)庫

    非關系數(shù)據(jù)庫也被稱為 NoSQL(Not Only SQL),存儲數(shù)據(jù)不以關系模型為依據(jù),不需要固定的表格式
    非關系型數(shù)據(jù)庫作為關系型數(shù)據(jù)庫的一個補充,在日益快速發(fā)展的網(wǎng)站時代,發(fā)揮著高效率與高性能

    (1)非關系型數(shù)據(jù)庫的優(yōu)點:
    ①滿足數(shù)據(jù)庫高并發(fā)讀寫的需求
    ②對海量數(shù)據(jù)高效率存儲與訪問
    ③數(shù)據(jù)庫高擴展性與高可用性的需求

    (2)常用的非關系數(shù)據(jù)庫如: Memcached、Redis、MongoDB、HBase

    3. 關系數(shù)據(jù)庫概述

    關系數(shù)據(jù)庫系統(tǒng)是基于關系模型的數(shù)據(jù)庫系統(tǒng),是關系模型應用到數(shù)據(jù)庫領域的實例化,它的基本概念來自于關系模型。

    3.1 基本結構

    (1)關系數(shù)據(jù)庫使用的存儲結構是多個二維表格,即反映事物及其聯(lián)系的數(shù)據(jù)描述是以平面表格形式體現(xiàn)的
    (2)在每個二維表中,每一行稱為一條記錄,用來描述一個對象的信息;每一列稱為一個字段,用來描述對象的一個屬性。數(shù)據(jù)表與數(shù)據(jù)庫之間存在相應的關聯(lián),這些關聯(lián)用來查詢相關的數(shù)據(jù)。下圖所示就是一個數(shù)據(jù)表。
    (3)關系數(shù)據(jù)庫是由數(shù)據(jù)表之間的關聯(lián)組成的。其中:
    ① 數(shù)據(jù)表通常是一個由行和列組成的二維表,每一個數(shù)據(jù)表分別說明數(shù)據(jù)庫中某一特定的方面或部分的對象及其屬性。
    ② 數(shù)據(jù)表中的行通常叫做記錄或者元組,它代表眾多具有相同屬性的對象中的一個。
    ③ 數(shù)據(jù)表中的列通常叫做字段或者屬性,它代表相應數(shù)據(jù)庫中存儲對象的共有的屬性。

    實體

    也稱為實例,對應現(xiàn)實世界中可區(qū)別于其他對象的“事件”或“事物”,如銀行客戶、銀行賬戶等

    屬性:

    實體所具有的某一特性,一個實體可以有多個屬性;如銀行客戶實體集中的每個實體均具有姓名、住址、電話等屬性

    聯(lián)系:

    實體集之間的對應關系稱為聯(lián)系,也稱為關系;如銀行客戶和銀行賬戶之間存在”儲蓄“的關系

    所有實體及實體之間聯(lián)系的集合構成一個關系數(shù)據(jù)庫

    3.2 主鍵

    數(shù)據(jù)表中的每行記錄都必須是唯一的,而不允許出現(xiàn)完全相同的記錄,通過定義主鍵(主關鍵字,Promary Key)可以保證記錄(實體)的唯一性。

    (1)主鍵唯一標識表中的行數(shù)據(jù),一個主鍵值對應一行數(shù)據(jù),主鍵由一個或多個字段組成,其值具有唯一性,不允許取空值(NULL)
    (2)一個表只能有一個主鍵

    3.3 外鍵

    (1)一個關系數(shù)據(jù)庫通常包含多個表,通過外鍵(Foreign Key)可以使這些表關聯(lián)起來
    (2)外鍵用于建立和加強兩個表數(shù)據(jù)之間的鏈接的一列或多列
    (3)通過表中主鍵值得一列或多列添加到另一個表中,可創(chuàng)建兩個表之間的鏈接,這個列就被稱為第二個表的外鍵。

    3.4 關系數(shù)據(jù)庫應用

    關系型數(shù)據(jù)庫應用舉例
    Oracle, MySQL12306用戶信息系統(tǒng)
    SQLServer、Sybase淘寶賬號系統(tǒng)
    lnformix、access聯(lián)通手機號信息系統(tǒng)
    DB2、FoxPRO銀行用戶賬號系統(tǒng)
    PostgreSQL網(wǎng)站用戶信息系統(tǒng)

    4. 關系型數(shù)據(jù)庫和非關系型數(shù)據(jù)庫的區(qū)別

    4.1 關系型數(shù)據(jù)庫

    (1)關系數(shù)據(jù)庫結構是二維數(shù)據(jù)庫表,二維表當中每個字段(列)用來描述對象的一個屬性,每個記錄(行)用來描述一個對象的信息(完整信息),關系數(shù)據(jù)庫寫到哪里也就是存儲在硬盤當中,讀寫系統(tǒng)就會受到的IO限制或者瓶頸

    (2)關系型數(shù)據(jù)庫最典型的數(shù)據(jù)結構是表,由二維表及其之間的聯(lián)系所組成的一個數(shù)據(jù)組織

    (3)優(yōu)點:
    ??? ①易于維護:都是使用表結構,格式一致;
    ??? ②使用方便:SQL語言通用,可用于復雜查詢;
    ??? ③復雜操作:支持SQL,可用于一個表以及多個表之間非常復雜的查詢。

    (4)缺點:
    ??? ①讀寫性能比較差,尤其是海量數(shù)據(jù)的高效率讀寫;
    ??? ②固定的表結構,靈活度稍欠;
    ??? ③高并發(fā)讀寫需求,傳統(tǒng)關系型數(shù)據(jù)庫來說,硬盤I/O是一個很大的瓶頸。

    4.2 非關系型數(shù)據(jù)庫

    (1)MongoDB 、 Redis(內存數(shù)據(jù)庫/緩存數(shù)據(jù)庫)K-V鍵值對、與之類似的Memcache,K-V鍵值對redis-memecache對比:
    ??? 相同點:存儲高熱數(shù)據(jù)(在內存中高速運行)
    ??? 不同點:redis可以做持久化保存,可以存儲對象

    (2)非關系型數(shù)據(jù)庫嚴格上不是一種數(shù)據(jù)庫,應該是一種數(shù)據(jù)結構化存儲方法的集合,可以是文檔或者鍵值對等

    (3)優(yōu)點:
    ??? ①格式靈活:存儲數(shù)據(jù)的格式可以是key,value形式、文檔形式、圖片形式等等,文檔形式、圖片形式等等,使用靈活,應用場景廣泛,而關系型數(shù)據(jù)庫則只支持基礎類型。
    ??? ②速度快:nosql可以使用硬盤或者隨機存儲器作為載體,而關系型數(shù)據(jù)庫只能使用硬盤;
    ??? ③高擴展性;
    ??? ④成本低:nosql數(shù)據(jù)庫部署簡單,基本都是開源軟件。

    (4)缺點:
    ??? ①不提供sql支持,學習和使用成本較高;
    ??? ②無事務處理;
    ??? ③數(shù)據(jù)結構相對復雜,復雜查詢方面稍欠。

    5. 數(shù)據(jù)完整性規(guī)則

    為了維護數(shù)據(jù)庫中的數(shù)據(jù)與現(xiàn)實世界的一致性,關系數(shù)據(jù)庫的數(shù)據(jù)與更新操作必須遵循下列四類完整性規(guī)則:

    (1)實體完整性規(guī)則:
    ??? 實體完整性規(guī)則要求關系中的元組在主鍵的屬性上不能有空值,如果出現(xiàn)空值,那么主鍵值就起不到唯一標識元組的作用

    (2)域完整性規(guī)則:
    ??? 域完整性也稱列完整性,指定一個數(shù)據(jù)集對某一個列是否有效或確定是否允許空值

    (3)引用完整性規(guī)則:
    ??? 如果兩個表之間相互關聯(lián),那么引用完整性規(guī)則要求不允許引用不存在的元組

    (4)用戶定義的完整性規(guī)則:
    ??? 用戶定義的完整性規(guī)則是針對某一具體數(shù)據(jù)的約束條件,由應用環(huán)境決定;
    ??? 它反應了某一具體應用所涉及的數(shù)據(jù)必須滿足的語義要求;
    ??? 系統(tǒng)提供定義和檢驗這類完整性的機制,以便用統(tǒng)一的系統(tǒng)方法進行處理,不再由應用程序來承擔這項工作。

    四、MySQL數(shù)據(jù)庫介紹

  • 一款深受歡迎的開源關系型數(shù)據(jù)庫
  • Oracle旗下的產(chǎn)品
  • 遵守GPL協(xié)議,可以免費使用與修改
  • 特點

  • 性能卓越、服務穩(wěn)定
  • 開源、無版權限制、成本低
  • 多線程、多用戶
  • 基于C/S(客戶端/服務器)架構
  • 安全可靠
    安全可靠的原因是mysql日志文件能備份,恢復,不怕數(shù)據(jù)丟失,是mysql最核心部分
  • 1、MySQL商業(yè)版與社區(qū)版

    (1)MySQL商業(yè)版是由MySQL AB公司負責開發(fā)與維護,需要付費才能使用
    (2)MySQL社區(qū)版是由分散在世界各地的MySQL開發(fā)者.愛好者一起開發(fā)與維護,可以免費使用

    兩者區(qū)別

    (1)商業(yè)版組織管理與測試環(huán)節(jié)更加嚴格,會比社區(qū)版
    (2)更穩(wěn)定商業(yè)版不遵守GPL,社區(qū)版遵從GPL可以免費使用
    (3)商業(yè)版可獲得7*24小時的服務,社區(qū)版則沒有

    2、MySQL產(chǎn)品陣營

    (1)第一陣營:5.0-5.1陣營,可說是早期產(chǎn)品的延續(xù)
    (2)第二陣營:5.4-5.7陣營,整合了MySQL AB公司、社區(qū)和第三方公司開發(fā)的存儲引擎,從而提高性能
    (3)第三陣營: 6.0-7.1陣營,就是MySQL Cluster版本,為適應新時代對數(shù)據(jù)庫的集群需求而開發(fā)

    下載網(wǎng)址:http://www.dev.mysql.com/downloads

    五、Mysql安裝

    MySQL 組成

    客戶端程序

    ??? mysql: 交互式的CLI工具

    ??? mysqladmin:基于mysql協(xié)議管理mysqld

    ??? mysqlimport:數(shù)據(jù)導入工具

    ??? MyISAM存儲引擎的管理工具:

    ??? myisamchk:檢查MyISAM庫

    ??? myisampack:打包MyISAM表,只讀

    服務器端程序

    ??? mysqld_safe

    ??? mysqld

    ??? mysqld_multi 多實例 ,示例:mysqld_multi

    [root@localhost ~]#yum info mariadb
    可安裝的軟件包
    已加載插件:fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    可安裝的軟件包
    名稱??? :mariadb
    架構??? :x86_64
    時期?????? :1
    版本??? :5.5.56
    發(fā)布??? :2.el7
    大小??? :8.7 M
    源??? :yum
    簡介??? : A community developed branch of MySQL
    網(wǎng)址??? :http://mariadb.org
    協(xié)議??? : GPLv2 with exceptions and LGPLv2 and BSD
    描述??? : MariaDB is a community developed branch of
    ???????? : MySQL. MariaDB is a multi-user,
    ???????? : multi-threaded SQL database server. It is a
    ???????? : client/server implementation consisting of
    ???????? : a server daemon (mysqld) and many different
    ???????? : client programs and libraries. The base
    ???????? : package contains the standard MariaDB/MySQL
    ???????? : client programs and generic MySQL files.
    ?
    MySQL被Sun收購后,搞了個過渡的6.0版本,沒多久就下線了,后來被Oracle收購后,終于迎來了像樣的5.6
    版本,之后就是5.7、8.0版本。由于6.0版本號已被用過,7.x系列版本專用于NDB Cluster,因而新版本
    號從8.0開始。

    5.1 法一:編譯安裝

    1. #安裝依賴包并解壓下載的mysql
    yum install -y ncurses-devel autoconf cmake
    tar zxf mysql-5.6.26.tar.gz
    ?
    2. #編譯安裝
    cd mysql-5.6.26/
    ?
    ###編譯###
    cmake? \
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
    -DDEFAULT_CHARSET=utf8 \
    -DDEFAULT_COLLATION=utf8_general_ci \
    -DEXTRA_CHARSETS=all \
    -DSYSCONFIDIR=/etc \
    -DMYSQL_DATADIR=/home/mysql/ \
    -DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock
    ?
    ###安裝###
    make && make install -j4
    ?
    3. #拷貝文件,并授權
    cp support-files/my-default.cnf /etc/my.cnf
    cp support-files/mysql.server /etc/init.d/mysqld
    chmod 755 /etc/init.d/mysqld
    chkconfig --add /etc/init.d/mysqld
    chkconfig? mysqld --level 35 on
    ?
    4. #設置環(huán)境變量,申明/宣告mysql命令便于系統(tǒng)識別
    echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
    source /etc/profile
    echo $PATH
    ?
    5. #創(chuàng)建普通用戶管理mysql
    useradd -s /sbin/nologin mysql
    chown -R mysql:mysql /usr/local/mysql/
    chown mysql:mysql /etc/my.cnf
    ?
    ?
    6. #初始化初始化數(shù)據(jù)庫
    /usr/local/mysql/scripts/mysql_install_db \
    --user=mysql \
    --ldata=/var/lib/mysql \
    --basedir=/usr/local/mysql \
    --datadir=/home/mysql
    ?
    7. #修改配置文件
    vim /etc/init.d/mysqld
    ?
    ##修改46,47行
    basedir=/usr/local/mysql
    datadir=/home/mysql
    ?
    8. #啟動mysql
    service mysqld start
    ss -ntap|grep "3306"
    ?
    9. #登錄及登出mysql
    ##給root賬號設置密碼
    mysqladmin -u root -p password "123123"
    ##登錄mysql
    mysql -u root -p
    ##登出mysql
    mysql> exit
    Bye

    5.2 法二:yum安裝5.7版

    1. #創(chuàng)建mysql源
    cd /etc/yum.repos.d/
    vim mysql.repo
    [mysql]
    name=mysql5.7
    baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/
    gpgcheck=0
    ?
    2. #安裝服務mysql-community-server
    yum -y install mysql-community-server
    ?
    3. #啟動服務
    systemctl start mysqld
    ss -ntap |grep 3306
    ?
    4. #登入數(shù)據(jù)庫,但是密碼是默認的,需要查看
    mysql -u root -p
    grep password /var/log/mysqld.log
    mysql -u root -p'+8saq%5+ljzG'
    #特殊符號用單引號引起來
    ?
    5. #登入數(shù)據(jù)庫后必須修改密碼
    status
    alter user root@'localhost' identified by 'Za19@2022';
    ?
    #可以使用mysql> \h查看幫助

    六、總結

    本文主要講述了數(shù)據(jù)庫的基本概念、數(shù)據(jù)庫系統(tǒng)發(fā)展史,當今主流的數(shù)據(jù)庫、關系數(shù)據(jù)庫和非關系數(shù)據(jù)庫的區(qū)別以及MySQL數(shù)據(jù)庫。

    總結

    以上是生活随笔為你收集整理的Mysql数据库的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。