中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

濰坊網(wǎng)站建設價格深圳百度推廣客服

濰坊網(wǎng)站建設價格,深圳百度推廣客服,西安外貿(mào)建站,網(wǎng)站開發(fā) 實習報告目錄 1. 什么是數(shù)據(jù)庫1.1 數(shù)據(jù)庫的定義1.2 mysql 和 mysqld1.3 文件和數(shù)據(jù)庫 2. 數(shù)據(jù)庫的分類3. 連接數(shù)據(jù)庫3.1 數(shù)據(jù)庫的安裝3.2 連接服務器(數(shù)據(jù)庫)3.3 服務器 數(shù)據(jù)庫 表 三者的關系 4. 數(shù)據(jù)庫-表 和目錄-文件 的關系5. MySQL 框架6. SQL 分類7. 儲存引…

目錄

  • 1. 什么是數(shù)據(jù)庫
    • 1.1 數(shù)據(jù)庫的定義
    • 1.2 mysql 和 mysqld
    • 1.3 文件和數(shù)據(jù)庫
  • 2. 數(shù)據(jù)庫的分類
  • 3. 連接數(shù)據(jù)庫
    • 3.1 數(shù)據(jù)庫的安裝
    • 3.2 連接服務器(數(shù)據(jù)庫)
    • 3.3 服務器 數(shù)據(jù)庫 表 三者的關系
  • 4. 數(shù)據(jù)庫-表 和目錄-文件 的關系
  • 5. MySQL 框架
  • 6. SQL 分類
  • 7. 儲存引擎

1. 什么是數(shù)據(jù)庫

1.1 數(shù)據(jù)庫的定義

數(shù)據(jù)庫(Database)是一種按照數(shù)據(jù)結構來組織、存儲和管理數(shù)據(jù)的倉庫。通過數(shù)據(jù)庫管理系統(tǒng)(Database Management System, DBMS),用戶可以方便地對數(shù)據(jù)進行創(chuàng)建、查詢、更新和刪除等操作。數(shù)據(jù)庫的主要目的是有效地存儲和管理數(shù)據(jù),以便于多個用戶或應用程序能夠高效、安全地訪問和共享數(shù)據(jù)。
簡單的說就是一套給我們提供數(shù)據(jù)存儲的服務的網(wǎng)絡程序。

口頭上的數(shù)據(jù)庫一般指:在磁盤或者內(nèi)存中存儲特定結構的數(shù)據(jù) — 在磁盤上存儲的一套數(shù)據(jù)方案

數(shù)據(jù)庫的主要特征

  1. 數(shù)據(jù)結構化:
    數(shù)據(jù)庫中的數(shù)據(jù)是以特定的結構組織的,例如表格形式(關系型數(shù)據(jù)庫)、文檔形式(NoSQL 數(shù)據(jù)庫)等。這種結構化的方式使得數(shù)據(jù)更容易管理和查詢。
  2. 數(shù)據(jù)獨立性:
    數(shù)據(jù)獨立性是指數(shù)據(jù)的物理存儲與邏輯結構之間的分離。這意味著用戶可以不必關心數(shù)據(jù)是如何存儲的,只需關注如何使用數(shù)據(jù)。數(shù)據(jù)獨立性分為物理數(shù)據(jù)獨立性和邏輯數(shù)據(jù)獨立性。
  3. 數(shù)據(jù)共享:
    多個用戶或應用程序可以同時訪問同一個數(shù)據(jù)庫中的數(shù)據(jù),從而實現(xiàn)數(shù)據(jù)的共享和協(xié)作。
  4. 數(shù)據(jù)控制:
    數(shù)據(jù)庫管理系統(tǒng)提供了多種機制來控制數(shù)據(jù)的訪問和操作,包括用戶權限管理、事務管理、備份和恢復等,確保數(shù)據(jù)的安全性和一致性。
  5. 數(shù)據(jù)冗余減少:
    通過數(shù)據(jù)的集中管理和規(guī)范化設計,數(shù)據(jù)庫可以減少數(shù)據(jù)冗余,提高數(shù)據(jù)的一致性和完整性。
  6. 數(shù)據(jù)持久性:
    數(shù)據(jù)庫中的數(shù)據(jù)是持久化的,即使系統(tǒng)關閉或重啟,數(shù)據(jù)也不會丟失。

1.2 mysql 和 mysqld

  • 客戶端 (mysql)
    定義:mysql 是一個命令行工具,用于連接到 MySQL 服務器并執(zhí)行 SQL 命令。它是用戶與 MySQL 服務器進行交互的主要方式。
    用途:用戶通過 mysql 客戶端發(fā)送 SQL 查詢、查看查詢結果、管理數(shù)據(jù)庫等。
    使用場景:當你需要手動執(zhí)行 SQL 語句、查看數(shù)據(jù)庫狀態(tài)、創(chuàng)建和刪除數(shù)據(jù)庫、表等操作時,通常會使用 mysql 客戶端。

  • 服務器端 (mysqld)
    定義:mysqld 是 MySQL 的數(shù)據(jù)庫服務器進程。它是后臺運行的守護進程,負責處理來自客戶端的所有請求。
    用途:mysqld 負責管理數(shù)據(jù)文件、處理查詢、執(zhí)行事務、維護數(shù)據(jù)的一致性和完整性等。
    使用場景:通常情況下,mysqld 會在系統(tǒng)啟動時自動運行,并在后臺持續(xù)運行,等待客戶端的連接請求。

那MySQL數(shù)據(jù)庫是 mysql 還是 mysqld 呢?
我們使用的抖音也有客戶端和服務端,好比回答 抖音是客戶端還是服務端呢?抖音的客戶端和服務端一起工作保證正常使用抖音。

mysql本質(zhì):基于C(mysql) S(mysqld)模式的一種網(wǎng)絡服務

既然是一種網(wǎng)絡服務,那么會綁定端口號(啟動服務器需要使用端口號)

查詢端口號:netstat -lntp

1.3 文件和數(shù)據(jù)庫

存儲數(shù)據(jù)用文件就可以了,為什么還要弄個數(shù)據(jù)庫?

文件保存數(shù)據(jù)有以下幾個缺點:

  • 文件的安全性問題
  • 文件不利于數(shù)據(jù)查詢和管理
  • 文件不利于存儲海量數(shù)據(jù)
  • 文件在程序中控制不方便

一般的文件確實提供了數(shù)據(jù)的存儲功能,但文件沒有提供非常好的數(shù)據(jù)管理能力(用戶角度)

什么是數(shù)據(jù)管理能力?

比如,給你一個文件,里面包含一萬條手機號碼,請你找出180開頭的所有手機號。普通的文件能快出的找出嗎?程序員自己找嗎?

數(shù)據(jù)庫作用?

對數(shù)據(jù)內(nèi)容存儲的一套解決方案,給數(shù)據(jù)庫服務端要求(找出所有180開有的手機號),數(shù)據(jù)庫服務端直接給出結果,不用程序員自己去找。

在這里插入圖片描述
為了解決上述問題,專家們設計出更加利于管理數(shù)據(jù)的東西——數(shù)據(jù)庫,它能更有效的管理數(shù)據(jù)。數(shù)據(jù)庫的水平是衡量一個程序員水平的重要指標。

2. 數(shù)據(jù)庫的分類

主流數(shù)據(jù)庫:

  • SQL Sever: 微軟的產(chǎn)品,.Net程序員的最愛,中大型項目。
  • Oracle: 甲骨文產(chǎn)品,適合大型項目,復雜的業(yè)務邏輯,并發(fā)一般來說不如MySQL。
  • MySQL:世界上最受歡迎的數(shù)據(jù)庫,屬于甲骨文,并發(fā)性好,不適合做復雜的業(yè)務。主要用在電
    商,SNS,論壇。對簡單的SQL處理效果好。
  • PostgreSQL :加州大學伯克利分校計算機系開發(fā)的關系型數(shù)據(jù)庫,不管是私用,商用,還是學術研
    究使用,可以免費使用,修改和分發(fā)。
  • SQLite: 是一款輕型的數(shù)據(jù)庫,是遵守ACID的關系型數(shù)據(jù)庫管理系統(tǒng),它包含在一個相對小的C庫
    中。它的設計目標是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的
    低,在嵌入式設備中,可能只需要幾百K的內(nèi)存就夠了。
  • H2: 是一個用Java開發(fā)的嵌入式數(shù)據(jù)庫,它本身只是一個類庫,可以直接嵌入到應用項目中。

數(shù)據(jù)庫的類型

  • 關系型數(shù)據(jù)庫(Relational Database):
    關系型數(shù)據(jù)庫是最常見的數(shù)據(jù)庫類型,數(shù)據(jù)以表格的形式存儲,每個表由行和列組成。常用的 SQL 語言用于查詢和管理數(shù)據(jù)。典型的例子包括 MySQL、Oracle、Microsoft SQL Server 和 PostgreSQL。
  • 非關系型數(shù)據(jù)庫(NoSQL Database):
    非關系型數(shù)據(jù)庫用于處理大規(guī)模、非結構化或半結構化數(shù)據(jù)。它們通常具有靈活的 schema 設計和水平擴展能力。常見的 NoSQL 數(shù)據(jù)庫包括 MongoDB、Cassandra、Redis 和 DynamoDB。
  • 對象關系型數(shù)據(jù)庫(Object-Relational Database):
    對象關系型數(shù)據(jù)庫結合了關系型數(shù)據(jù)庫和面向?qū)ο髷?shù)據(jù)庫的特點,支持對象的封裝、繼承和多態(tài)等特性。例如,PostgreSQL 就支持對象關系型特性。
  • 層次型數(shù)據(jù)庫(Hierarchical Database):
  • 層次型數(shù)據(jù)庫以樹狀結構組織數(shù)據(jù),每個記錄有一個父記錄和多個子記錄。典型的例子包括 IBM 的 IMS 系統(tǒng)。
  • 網(wǎng)絡型數(shù)據(jù)庫(Network Database):
    網(wǎng)絡型數(shù)據(jù)庫允許每個記錄有多個父記錄和多個子記錄,形成更為復雜的網(wǎng)狀結構。典型的例子包括 IDMS(Integrated Data Management System)。

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

數(shù)據(jù)庫管理系統(tǒng)(Database Management System, DBMS)是用于創(chuàng)建、管理、維護和操作數(shù)據(jù)庫的軟件。DBMS 提供了用戶與數(shù)據(jù)庫交互的接口,支持數(shù)據(jù)的定義、查詢、更新和管理。常見的 DBMS 包括:

  • 關系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS):如 MySQL、Oracle、SQL Server、PostgreSQL。
  • 非關系型數(shù)據(jù)庫管理系統(tǒng)(NoSQL DBMS):如 MongoDB、Cassandra、Redis。
  • 對象關系型數(shù)據(jù)庫管理系統(tǒng)(ORDBMS):如 PostgreSQL。
  • 層次型數(shù)據(jù)庫管理系統(tǒng):如 IBM IMS。
  • 網(wǎng)絡型數(shù)據(jù)庫管理系統(tǒng):如 IDMS。

數(shù)據(jù)庫的應用

數(shù)據(jù)庫廣泛應用于各種領域,包括但不限于:

  • 企業(yè)信息系統(tǒng):管理客戶關系、供應鏈、庫存等。
  • 電子商務:處理訂單、支付、物流等。
  • 金融系統(tǒng):管理賬戶、交易、風險管理等。
  • 醫(yī)療保健:存儲患者記錄、醫(yī)療影像等。
  • 社交媒體:管理用戶信息、動態(tài)、消息等。
  • 物聯(lián)網(wǎng):收集和分析傳感器數(shù)據(jù)。

3. 連接數(shù)據(jù)庫

3.1 數(shù)據(jù)庫的安裝

保姆級安裝教程

3.2 連接服務器(數(shù)據(jù)庫)

  1. 命令:mysql -h 8.148.27.113 -P 3306 -u root -p

    說明:

    -h:登錄mysql的主機的地址

    -P:mysql在該主機的端口號

    -u:登錄mysql的用戶名稱

    -p:密碼(我的mysql沒有設置密碼,不需要輸入)

  2. 如果沒有寫 -h 127.0.0.1 默認是連接本地,如果沒有寫 -P 3306 默認是連接3306端口號,
    在本地主機中有配置文件,可以直接去掉-h和-P

    命令:mysql -u root -P

  3. 在mysql服務中退出mysql

    命令:quit

3.3 服務器 數(shù)據(jù)庫 表 三者的關系

  • 所謂安裝數(shù)據(jù)庫服務器,只是在機器上安裝了一個數(shù)據(jù)庫管理系統(tǒng)程序,這個管理程序可以管理多
    個數(shù)據(jù)庫,一般開發(fā)人員會針對每一個應用創(chuàng)建一個數(shù)據(jù)庫。
  • 為保存應用中實體的數(shù)據(jù),一般會在數(shù)據(jù)庫中創(chuàng)建多個表,以保存程序中實體的數(shù)據(jù)。

數(shù)據(jù)庫服務器、數(shù)據(jù)庫和表的關系如下:
在這里插入圖片描述
表是數(shù)據(jù)邏輯存儲結構:行列式結構(二維)
在這里插入圖片描述

4. 數(shù)據(jù)庫-表 和目錄-文件 的關系

使用mysql建立一個數(shù)據(jù)庫,在數(shù)據(jù)庫中建立一張表結構,插入一些數(shù)據(jù) ------ 對比一下mysql在linux中是如何表現(xiàn)的

  1. 先查詢數(shù)據(jù)庫存儲在哪個目錄

    命令:vim /etc/my.cnf
    在這里插入圖片描述
    我的數(shù)據(jù)的數(shù)據(jù)庫存儲在/var/lib/mysql 目錄中

  2. 進入到該目錄
    命令:cd /var/lib/mysql
    查看數(shù)據(jù)庫文件,命令:ls
    在這里插入圖片描述
    標記的就是當前的數(shù)據(jù)庫

  3. 進入mysql客戶端,在mysql中查詢數(shù)據(jù)庫

    命令:show databases;
    在這里插入圖片描述

  4. 觀察
    同學們可以觀察到 Linux 中標記的目錄就是當前 mysql 的數(shù)據(jù)庫的名稱

  5. 此時我在創(chuàng)建一個study_1 數(shù)據(jù)庫,然后再進入到 /var/lib/mysql 目錄并打開,可以看看發(fā)生了什么
    在這里插入圖片描述
    在這里插入圖片描述
    所以,我們在mysql中新建的數(shù)據(jù)庫其實就是在linux中新建一個目錄。

  6. 我們打開這個數(shù)據(jù)庫的目錄
    在這里插入圖片描述

  7. 在mysql的study_1數(shù)據(jù)庫中創(chuàng)建一個表后再次打開數(shù)據(jù)庫目錄
    在mysql的study_1數(shù)據(jù)庫中創(chuàng)建一個表test(不用管命令是什么意思,我們證明的是數(shù)據(jù)庫中的數(shù)據(jù)是文件)

    (1)創(chuàng)建一個表格
    在這里插入圖片描述
    (2)再打開目錄后發(fā)現(xiàn)有新文件產(chǎn)生
    在這里插入圖片描述

  8. 我們還可以查看文件的大小

    命令:ls -l study_1

    記住此時文件的大小(標記處是文件的大小)
    在這里插入圖片描述

  9. 在表中插入數(shù)據(jù)
    在這里插入圖片描述

  10. 再次查看文件的大小

    命令:ls -l study_1
    在這里插入圖片描述

我們發(fā)現(xiàn),文件的大小沒有改變;但并不是沒有數(shù)據(jù),而是mysql內(nèi)部的優(yōu)化造成的。其實,已經(jīng)把數(shù)據(jù)存入文件中了。

總結:

  1. 建立數(shù)據(jù)庫,本質(zhì)是在linux中創(chuàng)建一個目錄

  2. 在數(shù)據(jù)庫中創(chuàng)建表,本質(zhì)是在linux中創(chuàng)建對應的文件。

這個工作時誰做的呢?

答:mysqld 做的。/var/lib/mysql 中的文件不需要我們來操作,mysqld 自己去操作。

5. MySQL 框架

MySQL 是一個可移植的數(shù)據(jù)庫,幾乎能在當前所有的操作系統(tǒng)上運行,如 Unix/Linux、Windows、
Mac 和 Solaris。各種系統(tǒng)在底層實現(xiàn)方面各有不同,但是 MySQL 基本上能保證在各個平臺上的物理體
系結構的一致性。

在這里插入圖片描述

  1. Client Connectors: 連接器層提供了多種語言的接口,例如 JDBC、ODBC、.NET、PHP、Python、Perl 和 C API,用于連接到 MySQL 服務器。應用程序可以通過這些接口發(fā)送查詢請求,并接收響應結果。

  2. MySQL Server: MySQL 服務器是整個系統(tǒng)的中心,負責處理來自客戶端的各種請求。它由多個模塊組成,如下所示:

    • Services & utilities: 提供備份恢復、安全、復制和分區(qū)等功能的服務和實用工具。
    • SQL Interface: 解析和執(zhí)行 SQL 查詢的接口。
    • Connection Pool: 連接池管理、認證和安全性相關的功能。
    • Parser: 分詞器、語法分析器和語義分析器,用于解析 SQL 查詢。
    • Optimizer: 查詢優(yōu)化器,用于確定最佳查詢執(zhí)行計劃。
    • Caches: 包括全局緩存和引擎特定緩存,提高性能。
  3. Pluggable Storage Engines: MySQL 支持可插拔式存儲引擎,每個引擎都有自己的特性。MyISAM 是一個非事務性引擎,適用于讀取密集型應用;InnoDB 則是一個事務性引擎,支持 ACID 事務和外鍵約束;Federated 引擎將多個 MySQL 實例鏈接在一起;Archive 引擎適合存儲大量數(shù)據(jù)而不需要頻繁更新的應用;Merge 引擎用于合并多個 MyISAM 表;Memory 引擎將數(shù)據(jù)存儲在內(nèi)存中,速度非???#xff1b;Cluster 引擎用于分布式環(huán)境;Example 引擎是一個示例引擎,用于演示目的。

    • File System: MySQL 使用底層文件系統(tǒng)(如 NTFS、ext4、SAN 或 NAS)來存儲數(shù)據(jù)和日志文件。
    • Logs and Files: MySQL 產(chǎn)生的各種日志文件,包括二進制日志(記錄所有更改)、錯誤日志、慢查詢?nèi)罩?、一般查詢?nèi)罩尽⒅刈鋈罩?、回滾日志以及數(shù)據(jù)和索引文件。

總這張圖清晰地展示了 MySQL 服務器如何處理客戶端請求,以及不同組件之間的交互關系。客戶端通過連接器發(fā)送 SQL 請求給 MySQL 服務器,服務器解析請求、優(yōu)化查詢、訪問存儲引擎并最終將結果返回給客戶端。同時,MySQL 也利用緩存、索引和日志機制來提升性能和可靠性。

6. SQL 分類

  1. DDL【data definition language】 數(shù)據(jù)定義語言,用來維護存儲數(shù)據(jù)的結構
    代表指令: create, drop, alter

  2. DML【data manipulation language】 數(shù)據(jù)操縱語言,用來對數(shù)據(jù)進行操作
    代表指令: insert,delete,update

  3. DML中又單獨分了一個DQL,數(shù)據(jù)查詢語言,代表指令: select

  4. DCL【Data Control Language】 數(shù)據(jù)控制語言,主要負責權限管理和事務
    代表指令: grant,revoke,commit

7. 儲存引擎

存儲引擎是:數(shù)據(jù)庫管理系統(tǒng)如何存儲數(shù)據(jù)、如何為存儲的數(shù)據(jù)建立索引和如何更新、查詢數(shù)據(jù)等技術
的實現(xiàn)方法。

MySQL的核心就是插件式存儲引擎,支持多種存儲引擎。

查看存儲引擎:
show engines

在這里插入圖片描述

在Linux中,設置默認存儲引擎
命令:vim /etc/my.cnf
在這里插入圖片描述
我設置的默認存儲引擎。

http://m.risenshineclean.com/news/63609.html

相關文章:

  • wordpress后臺管理面板的主題搜索引擎優(yōu)化論文
  • java 做直播網(wǎng)站有哪些軟件有哪些最新app推廣項目平臺
  • 廈門市網(wǎng)站建設寧波專業(yè)seo服務
  • wordpress頁面添加圖片優(yōu)化排名案例
  • 石家莊做網(wǎng)站多少錢百度注冊頁面
  • 深圳做棋牌網(wǎng)站建設哪家公司收費合理網(wǎng)絡營銷外包
  • 廣州網(wǎng)絡推廣有限公司滎陽seo推廣
  • 自己怎么做網(wǎng)站賣車bt種子bt天堂
  • 電子政務網(wǎng)站建設公司排行榜引擎搜索網(wǎng)站
  • 物理結構網(wǎng)站怎么看app的下載網(wǎng)址
  • 網(wǎng)站建設新聞資訊無錫seo網(wǎng)站排名
  • 電腦視頻制作軟件seo在線優(yōu)化
  • qq開放平臺網(wǎng)站開發(fā)申請不通過的原因制作網(wǎng)站推廣
  • 什么網(wǎng)站可以做美食寧波網(wǎng)絡營銷推廣咨詢報價
  • 深圳網(wǎng)站營銷推廣公司電話網(wǎng)絡推廣怎么找客戶資源
  • 保康縣城鄉(xiāng)建設路網(wǎng)站怎么有自己的網(wǎng)站
  • 網(wǎng)站建設的客戶在哪里山西seo關鍵詞優(yōu)化軟件搜索
  • 深圳網(wǎng)站建設(信科網(wǎng)絡)大數(shù)據(jù)營銷軟件
  • jizhicmsseo排名是什么意思
  • 在常熟市公司網(wǎng)站建設哪家好蘇州seo安嚴博客
  • 長沙網(wǎng)頁設計工資一般多少企業(yè)seo如何優(yōu)化
  • 請人做網(wǎng)站得多少錢雅詩蘭黛網(wǎng)絡營銷策劃書
  • 網(wǎng)站開發(fā)者取色工具ai智能搜索引擎
  • 地圖網(wǎng)站怎么做的廣告投放平臺
  • 洛陽做網(wǎng)站的百度上海分公司
  • 做短視頻網(wǎng)站需要審批搜索關鍵詞網(wǎng)站
  • php網(wǎng)站開發(fā)看什么書拼多多seo 優(yōu)化軟件
  • 關于電商運營的知識點百度關鍵詞seo排名軟件
  • 哪個網(wǎng)站可以做淘寶代碼百度號碼認證平臺官網(wǎng)
  • 南通公司做網(wǎng)站百度人工客服