MySQL數(shù)據(jù)庫基礎(chǔ)概念和簡單使用
數(shù)據(jù)庫基礎(chǔ)
什么是數(shù)據(jù)庫
存儲(chǔ)數(shù)據(jù)用文件就可以了,為什么還要弄個(gè)數(shù)據(jù)庫? 文件保存數(shù)據(jù)有以下幾個(gè)缺點(diǎn):
- 文件的安全性問題
- 文件不利于數(shù)據(jù)查詢和管理
- 文件不利于存儲(chǔ)海量數(shù)據(jù)
- 文件在程序中控制不方便 數(shù)據(jù)庫存儲(chǔ)介質(zhì):
- 磁盤
- 內(nèi)存
為了解決上述問題,專家們?cè)O(shè)計(jì)出更加利于管理數(shù)據(jù)的東西——數(shù)據(jù)庫,它能更有效的管理數(shù)據(jù)。數(shù)據(jù)庫的水平是衡量一個(gè)程序員水平的重要指標(biāo)。
主流數(shù)據(jù)庫
SQL Sever: 微軟的產(chǎn)品,.Net程序員的最愛,中大型項(xiàng)目。 Oracle: 甲骨文產(chǎn)品,適合大型項(xiàng)目,復(fù)雜的業(yè)務(wù)邏輯,并發(fā)一般來說不如MySQL。 MySQL:世界上最受歡迎的數(shù)據(jù)庫,屬于甲骨文,并發(fā)性好,不適合做復(fù)雜的業(yè)務(wù)。主要用在電 商,SNS,論壇。對(duì)簡單的SQL處理效果好。 PostgreSQL :加州大學(xué)伯克利分校計(jì)算機(jī)系開發(fā)的關(guān)系型數(shù)據(jù)庫,不管是私用,商用,還是學(xué)術(shù)研 究使用,可以免費(fèi)使用,修改和分發(fā)。 SQLite: 是一款輕型的數(shù)據(jù)庫,是遵守ACID的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它包含在一個(gè)相對(duì)小的C庫 中。它的設(shè)計(jì)目標(biāo)是嵌入式的,而且目前已經(jīng)在很多嵌入式產(chǎn)品中使用了它,它占用資源非常的 低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。 H2: 是一個(gè)用Java開發(fā)的嵌入式數(shù)據(jù)庫,它本身只是一個(gè)類庫,可以直接嵌入到應(yīng)用項(xiàng)目中。
基本使用
MySQL安裝
mysql -h 127.0.0.1 -P 3306 -u root -p
wenksen@wenksen-VMware-Virtual-Platform:~/mudou-concurrent-server/code/source/http$ mysql -h 127.0.0.1 -P 3306 -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8 Server version: 8.0.42-0ubuntu0.24.10.1 (Ubuntu) Copyright (c) 2000, 2025, Oracle and/or its affiliates. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
注意: 如果沒有寫-h 127.0.0.1 默認(rèn)是連接本地 如果沒有寫-P 3306 默認(rèn)是連接3306端口號(hào)
服務(wù)器管理
- 執(zhí)行
win+r輸入services.msc打開服務(wù)管理器 - 通過下圖左側(cè)停止,暫停,重啟動(dòng)按鈕進(jìn)行服務(wù)管理

服務(wù)器,數(shù)據(jù)庫,表關(guān)系
- 所謂安裝數(shù)據(jù)庫服務(wù)器,只是在機(jī)器上安裝了一個(gè)數(shù)據(jù)庫管理系統(tǒng)程序,這個(gè)管理程序可以管理個(gè)數(shù)據(jù)庫,一般開發(fā)人員會(huì)針對(duì)每一個(gè)應(yīng)用創(chuàng)建一個(gè)數(shù)據(jù)庫。
- 為保存應(yīng)用中實(shí)體的數(shù)據(jù),一般會(huì)在數(shù)據(jù)庫中創(chuàng)建多個(gè)表,以保存程序中實(shí)體的數(shù)據(jù)。
- 數(shù)據(jù)庫服務(wù)器、數(shù)據(jù)庫和表的關(guān)系如下

使用案例
- 創(chuàng)建數(shù)據(jù)庫
create database helloworld;
- 使用數(shù)據(jù)庫
use helloworld;
- 創(chuàng)建數(shù)據(jù)庫表
create table student( id int, name varchar(32), gender varchar(2) );
- 表中插入數(shù)據(jù)
insert into student (id, name, gender) values (1, '張三', '男'); insert into student (id, name, gender) values (2, '李四', '女'); insert into student (id, name, gender) values (3, '王五', '男');
- select * from student;
數(shù)據(jù)邏輯存儲(chǔ)

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

SQL分類
DDL【data definition language】數(shù)據(jù)定義語言,用來維護(hù)存儲(chǔ)數(shù)據(jù)的結(jié)構(gòu)代表指令: create, drop, alterDML【data manipulation language】數(shù)據(jù)操縱語言,用來對(duì)數(shù)據(jù)進(jìn)行操作代表指令:insert,delete,updateDML中又單獨(dú)分了一個(gè)DQL,數(shù)據(jù)查詢語言,代表指令:selectDCL【Data Control Language】數(shù)據(jù)控制語言,主要負(fù)責(zé)權(quán)限管理和事務(wù)代表指令:grant,revoke,commit
存儲(chǔ)引擎
存儲(chǔ)引擎是:數(shù)據(jù)庫管理系統(tǒng)如何存儲(chǔ)數(shù)據(jù)、如何為存儲(chǔ)的數(shù)據(jù)建立索引和如何更新、查詢數(shù)據(jù)等技術(shù) 的實(shí)現(xiàn)方法。
MySQL的核心就是插件式存儲(chǔ)引擎,支持多種存儲(chǔ)引擎。
查看存儲(chǔ)引擎
show engines;


存儲(chǔ)引擎對(duì)比

總結(jié)
到此這篇關(guān)于MySQL數(shù)據(jù)庫基礎(chǔ)概念和簡單使用的文章就介紹到這了,更多相關(guān)MySQL數(shù)據(jù)庫基礎(chǔ)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL慢查詢優(yōu)化之慢查詢?nèi)罩痉治龅膶?shí)例教程
這篇文章主要介紹了MySQL慢查詢?nèi)罩痉治龅膶?shí)例教程,通過設(shè)置參數(shù)從慢查詢?nèi)罩鹃_始分析性能問題的原因,需要的朋友可以參考下2015-11-11
MySQL數(shù)據(jù)庫運(yùn)維之?dāng)?shù)據(jù)恢復(fù)的方法
本篇文章主要介紹了MySQL數(shù)據(jù)庫運(yùn)維之?dāng)?shù)據(jù)恢復(fù)的方法,此處總結(jié)一下恢復(fù)方案,并結(jié)合數(shù)據(jù)庫的二進(jìn)制日志做下數(shù)據(jù)恢復(fù)的示范。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-06-06
Can''t connect to MySQL server的解決辦法
ERROR 2003 (HY000): Can't connect to MySQL server on '*.*.*.*' (113)的解決辦法2010-06-06
查看MySQL是否處于運(yùn)行狀態(tài)的常見方法
在管理 MySQL 數(shù)據(jù)庫的過程中,了解并掌握如何查看 MySQL 的運(yùn)行狀態(tài)至關(guān)重要,這不僅可以幫助我們及時(shí)發(fā)現(xiàn)潛在的問題,還能確保數(shù)據(jù)庫系統(tǒng)的穩(wěn)定性和性能,本文將詳細(xì)介紹通過不同的方法來查看 MySQL 是否處于運(yùn)行狀態(tài)的常見方法2025-02-02

