
系列文章目錄
文章目錄
- 系列文章目錄
- 前言
- 一、什么是資料庫
- 二、主流資料庫
- 三、安裝MySQL環境
- 1.查看當前環境是否安裝了mariadb
- 2.安裝mariadb:
- 3.啟動mariadb:
- 4.mysql5.7是付費版本
- 5.mysql5.7和mariadb用來管理若干資料庫的軟體
- 6.例外場景:
- 四、連接MySQL服務端
- 五、資料庫的操作
- 1.連接資料庫服務器的命令
- 2.查看資料庫
- 3.進入到具體的資料庫
- 4.查看資料庫下都有哪些資料表
- 5.創建資料庫
- 6.洗掉資料庫(慎用)
- 六、資料庫表的操作
- 1.創建資料庫表
- 2.查看表結構命令
- 3.查看創建表的命令
- 4.洗掉資料庫表命令(慎用)
- 5.全列插入
- 6.多行插入
- 7.全列查詢
- 總結
前言
一、什么是資料庫
- 存盤資料用檔案就可以了,為什么還要弄個資料庫?檔案保存資料有以下幾個缺點:
- 檔案的安全性問題,
- 檔案不利于資料查詢和管理,
- 檔案不利于存盤海量資料,
- 檔案在程式中控制不方便,
- 資料庫存盤介質:
- 磁盤,
- 記憶體,
為了解決上述問題,專家們設計出更加利于管理資料的東西——資料庫,它能更有效的管理資料,資料庫的水平是衡量一個程式員水平的重要指標,
二、主流資料庫
- SQL Sever: 微軟的產品,.Net程式員的最愛,中大型專案,
- Oracle: 甲骨文產品,適合大型專案,復雜的業務邏輯,并發一般來說不如MySQL,
- MySQL:世界上最受歡迎的資料庫,屬于甲骨文,并發性好,不適合做復雜的業務,主要用在電商,SNS,論壇,對簡單的SQL處理效果好,
- PostgreSQL :加州大學伯克利分校計算機系開發的關系型資料庫,不管是私用,商用,還是學術研究使用,可以免費使用,修改和分發,
- SQLite: 是一款輕型的資料庫,是遵守ACID的關系型資料庫管理系統,它包含在一個相對小的C庫中,它的設計目標是嵌入式的,而且目前已經在很多嵌入式產品中使用了它,它占用資源非常的低,在嵌入式設備中,可能只需要幾百K的記憶體就夠了,
- H2: 是一個用Java開發的嵌入式資料庫,它本身只是一個類別庫,可以直接嵌入到應用專案中,
三、安裝MySQL環境
1.查看當前環境是否安裝了mariadb

mariadb是mysql的一個分支版本(free)免費版本,
在root用戶下通過 rpm -qa | grep mariadb 命令查看:
2.安裝mariadb:
yum install -y mariadb
yum install -y mariadb-server
yum install -y mariadb-devel
3.啟動mariadb:
service mariadb start 啟動
service mariadb restart 重啟
service mariadb stop 停止
4.mysql5.7是付費版本

5.mysql5.7和mariadb用來管理若干資料庫的軟體


- mariadb啟動之后的服務器行程名叫做mysqld
- 啟動mysql的時候,是啟動mysqld_safe這個守護行程,由該守護行程將mysqld服務端啟動起來的
- mysqld_safe:mysql服務端的守護行程
- mysqld:mysql服務端程式
- 當mysql程式例外崩潰(終止)之后,是由mysqld_safe行程快速重新啟mysqld服務端行程
6.例外場景:
啟動報錯:一般情況下,都是/var/lib下的mysql檔案夾的內容和啟動的服務端程式不匹配
?
解決方案:將mysql檔案夾重命名,再重啟
四、連接MySQL服務端

(1)navicat(可視化的資料庫連接軟體)
(2)mysql(客戶端)
?① 客戶端mysql和服務端mysqld的關系如下圖所示:

② 服務端mysqld連接層
Ⅰ. 建立連接
- 客戶端和服務端在同一臺機器,本地域套接字(AF_UNIX),一臺機器當中的兩個行程間通信
- 客戶端和服務端不在一臺機器,TCP協議
Ⅱ. 校驗用戶名和密碼(強校驗)
Ⅲ. 校驗客戶端的IP地址
- 一個mysqld服務端可以管理多個資料庫
- 資料庫在Linux作業系統當中是一個獨立的檔案夾,檔案夾下的內容是和資料表強相關的內容
③ 常見的mysql服務端分層關系



五、資料庫的操作

1.連接資料庫服務器的命令

mysql -u [用戶名] -p [密碼];
2.查看資料庫
show databases;
3.進入到具體的資料庫
use [資料庫名];
4.查看資料庫下都有哪些資料表
show tables;
5.創建資料庫
create database [資料庫名];
6.洗掉資料庫(慎用)
drop database [資料庫名];
六、資料庫表的操作
1.創建資料庫表


create table [表名稱](表欄位1名稱 表欄位1型別,表欄位2名稱 表欄位2型別,…);
- CHARACTER SET: 指定資料庫采用的字符集
- COLLATE: 指定資料庫字符集的校驗規則(只會影響是否對大小寫敏感)
修改字符集:create database [資料庫名] charset=utf8;
collate:只會影響是否對大小寫敏感
校驗規則:
??_ci:對大小寫不敏感 eg:create database test1 collate utf8_general_ci;
?? _bin:對大小寫敏感eg:create database test2 collate utf8_bin;
2.查看表結構命令

desc [表名稱] —>查看表結構(表妹一列的具體資訊 eg:欄位名稱,欄位型別,屬性等)
3.查看創建表的命令

show create table [表名稱];
或
show create table [表名稱]\G;
字符集:決定資料庫保存資料的時候采用什么字符集(決定資料庫能夠存盤什么樣的資料 eg:英文、中文…)---->一般選擇utf8,latin1 采用一個位元組表示字符
存盤引擎:決定了資料如何進行存盤(一般在公司中存盤引擎選InnoDB,因為支持事務)
InnoDB存盤引擎:
myISAM存盤引擎:
???①users.frm:表結構
???②users.MYD:表資料
???③users.MYI:表索引
資料庫中的資料是在ibdata1當中進行存盤的
4.洗掉資料庫表命令(慎用)

drop table[資料庫表名稱]
5.全列插入

insert into [表名] valuse(col1caluse,col2valuse,…);
6.多行插入
insert into [表名稱] values(1,‘’),(2,‘’);
7.全列查詢

select * from table
總結
以上就是今天要講的內容,本文詳細介紹了在云服務器上mariadb的使用和后續資料庫表、資料庫的操作,資料庫提供了大量的方法供我們使用,非常的便捷,我們務必掌握,希望大家多多支持!另外如果上述有任何問題,請懂哥指教,不過沒關系,主要是自己能堅持,更希望有一起學習的同學可以幫我指正,但是如果可以請溫柔一點跟我講,愛與和平是永遠的主題,愛各位了,加油啊!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/297104.html
標籤:其他

























