【MySQL】002.MySQL數據庫基礎

在這里插入圖片描述

文章目錄

  • 數據庫基礎
    • 1.1 什么是數據庫
    • 1.2 基本使用
      • 創建數據庫
      • 創建數據表
      • 表中插入數據
      • 查詢表中的數據
    • 1.3 主流數據庫
    • 1.4 服務器,數據庫,表關系
    • 1.5 MySQL架構
    • 1.6 SQL分類
    • 1.7 存儲引擎
      • 1.7.1 存儲引擎
      • 1.7.2 查看存儲引擎
      • 1.7.3 存儲引擎對比

前言:

root@hcss-ecs-eaf1:~/MySQL# mysql -h 127.0.0.1 -P 3306 -u root -p

mysql在連接時要指明連接的主機-h,mysql實際上是一個網絡服務,網絡服務就需要知道它的ip地址是多少,因為我們是單機訪問,所以是127.0.0.1-P表示的是要訪問的mysql特定主機上的特定端口號,我們這里是3306,-u表示user的意思,表明想要以誰的身份登陸。-p表示我們的密碼。
如果登陸中出現ERROR1698(28000)請看上篇文章【MySQL】001.MySQL安裝
上面的連接如果不帶-h連接的就是我們mysql本地搭建的服務,去掉-P選項表示使用我們默認配置的端口號
在這里插入圖片描述

數據庫基礎

1.1 什么是數據庫

存儲數據用文件就可以了,為什么還要弄個數據庫?
文件保存數據有以下幾個缺點:

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

數據庫存儲介質:

  • 磁盤
  • 內存

數據庫一般指的是在磁盤或者內存中存儲的,特定結構組織的數據 – 將來在磁盤上存儲的一套數據庫方案
數據庫服務:mysqld

為了解決上述問題,專家們設計出更加利于管理數據的東西——數據庫,它能更有效的管理數據。數據
庫的水平是衡量一個程序員水平的重要指標。

mysql是數據庫的客戶端,mysqld是數據庫的服務端
在這里插入圖片描述

  • mysql:它是數據庫服務的客戶端
  • mysqld:它是數據庫服務的服務器端
  • mysql本質:基于C(mysql)S(mysqld)模式的一種網絡服務

mysql是一套給我們提供數據存取服務的網絡程序
在這里插入圖片描述

1.2 基本使用

見一見數據庫
樣例:
查看當前服務器上的數據庫

show databases;


我們mysql中的配置文件中的datadir就是我們的mysql服務對應的數據的存放路徑
在這里插入圖片描述
這就是當前我這個數據庫數據存放目錄當中的數據內容
在這里插入圖片描述

創建數據庫

create database helloworld;//客戶端向服務端下達創建的請求

在這里插入圖片描述
結論:

  • 建立數據庫本質就是Linux下的一個目錄

選擇數據庫

use helloworld;

創建數據表

create table student(name varchar(32),age int,gender varchar(2));

我們會發現在/var/lib/mysql/helloworld目錄下多了個文件
在這里插入圖片描述

結論:

  • 在數據庫中建立表,本質就是在Linux下創建對應的文件

表中插入數據

insert into student (name, age, gender) values ('張三', 20, '男');
insert into student (name, age, gender) values ('李四', 19, '男');
insert into student (name, age, gender) values ('王五', 22, '男');

查詢表中的數據

select * from student;

在這里插入圖片描述

上面這寫工作都是mysqld幫我們做的

數據庫的本質其實也是文件,只不過這些操作不由我們程序員直接操作,而是由我們的數據庫服務來幫我們操作的

1.3 主流數據庫

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

1.4 服務器,數據庫,表關系

  • 所謂安裝數據庫服務器,只是在機器上安裝了一個數據庫管理系統程序,這個管理程序可以管理多個數據庫(在linux中相當于多張表),一般開發人員會針對每一個應用創建一個數據庫。
  • 為保存應用中實體的數據,一般會在數據庫中創建多個表,以保存程序中實體的數據。
  • 數據庫服務器、數據庫和表的關系如下:
    在這里插入圖片描述

1.5 MySQL架構

MySQL 是一個可移植的數據庫,幾乎能在當前所有的操作系統上運行,如Unix/Linux、Windows、Mac 和 Solaris。各種系統在底層實現方面各有不同,但是 MySQL 基本上能保證在各個平臺上的物理體系結構的一致性。
在這里插入圖片描述

1.6 SQL分類

  • DDL【data definition language】 數據定義語言,用來維護存儲數據的結構代表指令: create, drop, alter
  • DML【data manipulation language】 數據操縱語言,用來對數據進行操作代表指令:insert,delete,update
    DML中又單獨分了一個DQL,數據查詢語言,代表指令: select
  • DCL【Data Control Language】 數據控制語言,主要負責權限管理和事務代表指令: grant,revoke,commit

1.7 存儲引擎

1.7.1 存儲引擎

存儲引擎是:數據庫管理系統如何存儲數據、如何為存儲的數據建立索引和如何更新、查詢數據等技術的實現方法。
MySQL的核心就是插件式存儲引擎,支持多種存儲引擎。

1.7.2 查看存儲引擎

show engines;

在這里插入圖片描述

1.7.3 存儲引擎對比

在這里插入圖片描述


👍 如果對你有幫助,歡迎:

  • 點贊 ??
  • 收藏 📌
  • 關注 🔔

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/77543.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/77543.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/77543.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

滑動窗口(3)—無重復字符的最長子串

文章目錄 題目解析方法一:滑動窗口解法二(暴?求解)(不會超時,可以通過):附Java代碼 力扣題目:無重復字符的最長子串 題目解析 方法一:滑動窗口 思路和算法 我們先用一…

C++字符串操作詳解

引言 字符串處理是編程中最常見的任務之一,而在C中,我們有多種處理字符串的方式。本文將詳細介紹C中的字符串操作,包括C風格字符串和C的string類。無論你是C新手還是想鞏固基礎的老手,這篇文章都能幫你梳理字符串處理的關鍵知識點…

Vulhub-DC-4靶場通關攻略

下載地址:https://www.vulnhub.com/entry/dc-4,313/ 掃描IP地址 arp-sacn -l掃描端口,開啟了80和22端口 nmap -p- 192.168.112.140訪問80端口 掃描目錄,并沒有發現敏感目錄 嘗試爆破 爆破成功,用戶名admin 密碼happy 登錄成功 …

OfficePlus去掉PDF文件右鍵菜單里的PDF轉換

今天在吾愛破解論壇看到一個求助帖,說是OfficePlus,安裝后,PDF文件的右鍵菜單里多了PDF轉換,想去掉,不知道怎么弄。底下的回復基本都是百度復制或者AI搜索出的答案,大致就是找注冊表里CLASSID下的菜單欄相關…

大模型本地部署系列(3) Ollama部署QwQ[阿里云通義千問]

大家好,我是AI研究者, 今天教大家部署 一個阿里云通義千問大模型。 QwQ大模型簡介 QwQ是由阿里云通義千問(Qwen)團隊推出的開源推理大模型,專注于提升AI在數學、編程和復雜邏輯推理方面的能力。其核心特點包括&#x…

微信小程序學習實錄12:掌握大數據量軌跡展示的MySQL結構設計

獲取經緯度信息后,mysql建立數據表po_trajectory,字段包含tra_id、longitude、latitude、tra_time和openid。 為微信小程序創建的 po_trajectory 數據表,字段包含 tra_id、longitude、latitude、tra_time 和 openid,從結構設計上…

計算機系統---性能指標(3)續航與散熱

計算機電池續航的性能指標 一、電池基礎物理指標 電池容量(核心指標) 單位: 毫安時(mAh):常見于手機/平板,反映電池存儲電荷量,需結合電壓計算實際能量(如3.7V電池&…

貪心算法之最小生成樹問題

1. 貪心算法的基本思想 貪心算法在每一步都選擇局部最優的邊,希望最終得到整體最優的生成樹。常見的兩種 MST 算法為 Kruskal 算法 和 Prim 算法。這兩者均滿足貪心選擇性質和最優子結構性質,即: 貪心選擇性質:局部最優選擇&…

LeetCode hot 100—編輯距離

題目 給你兩個單詞 word1 和 word2, 請返回將 word1 轉換成 word2 所使用的最少操作數 。 你可以對一個單詞進行如下三種操作: 插入一個字符刪除一個字符替換一個字符 示例 示例 1: 輸入:word1 "horse", word2 &q…

2.3 Spark運行架構與流程

Spark運行架構與流程包括幾個核心概念:Driver負責提交應用并初始化作業,Executor在工作節點上執行任務,作業是一系列計算任務,任務是作業的基本執行單元,階段是一組并行任務。Spark支持多種運行模式,包括單…

NO.82十六屆藍橋杯備戰|動態規劃-從記憶化搜索到動態規劃|下樓梯|數字三角形(C++)

記憶化搜索 在搜索的過程中,如果搜索樹中有很多重復的結點,此時可以通過?個"備忘錄",記錄第?次搜索到的結果。當下?次搜索到這個結點時,直接在"備忘錄"??找結果。其中,搜索樹中的?個?個結點…

使用 VBA 宏創建一個選擇全部word圖片快捷指令,進行圖片格式編輯

使用 VBA 宏批量選擇圖片 ? 第一步:創建 .dotm 加載項文件 1、使用環境 office word 365,文件格式為.docx 圖片格式為.PNG 2、創建 .dotm 加載項文件 打開 Word,新建一個空白文檔。 按下 Alt F11 打開 VBA 編輯器。 點擊菜單欄&#xff…

深度學習的下一個突破:從圖像識別到情境理解

引言 過去十年,深度學習在圖像識別領域取得了驚人的突破。從2012年ImageNet大賽上的AlexNet,到后來的ResNet、EfficientNet,再到近年來Transformer架構的崛起,AI已經能在許多任務上超越人類,比如人臉識別、目標檢測、醫…

使用dyn4j做碰撞檢測

文章目錄 前言一、環境準備添加依賴基本概念 二、實現步驟1.創建世界2.添加物體3.設置碰撞監聽器4.更新世界 三、完整代碼示例四、優化補充總結 前言 dyn4j 提供了高效的碰撞檢測和物理模擬功能,適用于游戲開發、動畫制作以及其他需要物理交互的場景。通過簡單的 A…

VS Code settings.json 文件中常用的預定義變量?及其用途說明

VS Code settings.json 常用預定義變量 以下是 Visual Studio Code 配置文件中常用的預定義變量列表: 1. 工作區相關變量 變量描述示例值${workspaceFolder}當前工作區根目錄的絕對路徑C:/projects/my-project${workspaceFolderBasename}工作區文件夾名稱&#x…

elasticSearch-搜索引擎

搜索引擎的優勢 有了數據庫分頁查詢,為什么還需要搜索引擎? 搜索引擎速度上很快數據庫分頁查詢,隨著數據庫數據量增大,頁數靠后,會導致搜索速度變慢,但是搜索引擎不會搜索引擎支持分詞查詢,地…

安裝OpenJDK1.8 17 (macos M芯片)

安裝OpenJDK 1.8 下載完后,解壓,打開 環境變量的配置文件即可 vim ~/.zshrc #export JAVA_HOME/Users/xxxxx/jdk-21.jdk/Contents/Home #export JAVA_HOME/Users/xxxxx/jdk-17.jdk/Contents/Home #export JAVA_HOME/Users/xxxxx/jdk-11.jdk/Contents…

斷言與反射——以golang為例

斷言 x.(T) 檢查x的動態類型是否是T,其中x必須是接口值。 簡單使用 func main() {var x interface{}x 100value1, ok : x.(int)if ok {fmt.Println(value1)}value2, ok : x.(string)if ok {//未打印fmt.Println(value2)} }需要注意如果不接受第二個參數就是OK,這…

Java設計模式:系統性解析與核心模式

一、設計模式三大分類總覽 創建型模式(5種) 核心目標:對象創建的優化與解耦 單例模式(Singleton) 工廠模式(Factory) 抽象工廠模式(Abstract Factory) 建造者模式&#…

Elasticsearch 向量數據庫,原生支持 Google Cloud Vertex AI 平臺

作者:來自 Elastic Valerio Arvizzigno Elasticsearch 將作為第一個第三方原生語義對齊引擎,支持 Google Cloud 的 Vertex AI 平臺和 Google 的 Gemini 模型。這使得聯合用戶能夠基于企業數據構建完全可定制的生成式 AI 體驗,并借助 Elastics…