MySql 前言有點用 1

2022-07-29 12:36:08 字數 2283 閱讀 7464

伺服器 && 客戶端

不會真有人不會安裝吧???

安裝的時候會直接(客戶端)和(伺服器端)都安裝了

伺服器端:一句話,就是開啟服務;開啟胸膛,你來存或者取;

以我的小mac為例子:在/usr/local/mysql/bin目錄下,有如下的執行檔案,其中我框起來的是可以啟動mysql伺服器的命令

window下:應該在安裝目錄下;

還有乙個啟動方式:./mysql.server start

mac上由於沒有配置檔案my.cnf,所以只能通過這個指令啟動,哭咯;害,應該需要自己建立乙個。

mysql -h localhost -u root -p密碼

本質:兩個執行緒之間的通訊過程

ip位址 + 埠號

伺服器啟動的時候指定埠號:mysqld -p3307,預設是3306

客戶端啟動:mysql -h 伺服器ip -u root -p 埠號 -p密碼

啟動伺服器是:mysqld --enable-named-pipe

啟動客戶端是:mysql ... --pipe或者--protocol=pipe

要求伺服器程序和客戶端程序在同一臺機器上

啟動伺服器:mysqld --shared-memory

啟動客戶端:mysql ... --protocol=memory

需要在同一台類unix的機器上啟動伺服器和客戶端

在unix機器上,假如客戶端啟動的時候連線的(-h localhost) 或者(--protocol=socket),則客戶端和伺服器端預設的通訊是通過unix套接字,並且套接字檔案預設為 /tmp/mysql.sock

啟動伺服器:mysqld --socket=/temp/a.txt      沒有使用預設的套接字檔案

啟動客戶端:mysql ... --socket=/temp/a.txt

客戶端程序向伺服器程序傳送一段文字(mysql語句),伺服器程序處理後再向客戶端傳送一段文字

連線管理

每當乙個客戶端程序連線到伺服器程序時,伺服器程序都會建立乙個執行緒來專門處理與這個客戶端互動,採用的方式就是上面的4種。

處理完,並不會銷毀,留給下乙個客戶端,有點像執行緒池的感覺哈。

解析和優化

查詢快取

假如,兩條語句有一毛錢的,比如空格不一樣,那麼就無法命中快取了。

同時,監控所有表,一旦乙個表被insert、update...修改了,那麼有關這個表的快取全部失效

mysql8.0已經沒有了快取的概念

語法分析

就是將sql語句進行編譯的過程

查詢優化

你寫的sql語句太垃圾,mysql說我幫你優化下唄

儲存引擎

儲存引擎

描述archive

用於資料存檔

blackhole

丟棄寫操作

csv在儲存資料時,以逗號分割各個資料項

federated

用來訪問遠端表

innodb

具備外來鍵支援功能的事務儲存引擎

memory

置於記憶體的表

merge

用來管理多個myisam表構成的表集合

myisam

主要的非事務處理儲存引擎

ndbmysql集群專用儲存引擎

用的最多的:innodb、myisam、memory;其中innodb是預設的

儲存引擎負責:對錶中的資料進行提取和寫入工作,我們可以為不同的表設定不同的儲存引擎,也就是說不同表可以有不同的物理儲存結構,不同的提取和寫入方式

建立表是指定引擎 &&修改表引擎

前言 Mysql簡介

1 支援json,是一種可以替代xml的儲存資訊格式,從5.7.8版本開始支援 2 改進innodb的可擴充套件性和臨時表的效能,從而實現更快的網路和大資料載入等操作 4 增加了許多新的監控功能,以減少空間和過載,使用新的sys模式顯著提高易用性 5 以安全第一為宗旨,提供了很多新的功能,從而保證資...

設計模式 1 前言

轉眼間大三也快結束了,準備步入到大四了,自己也在廣州找到了乙份實習,算是開始離開鳥巢,出來接觸社會了吧。不過,由於不是在廣州讀大學,所以在廣州的實習算是困難頗多的,也真正感受到,要在廣州這個城市生活下來,是多麼的不容易。需要多少的能力與堅持。廢話少說,我先在這裡簡單說一下,為什麼要開始這一類的文章吧...

CsvHelper文件 1前言

翻譯於2018 1 5,原本可能會隨時更新 每一段 都是經過我實際測試的,對應csvhelper庫的版本是6.0.0.0 斜體是翻譯我新增上去的,本體沒有 csvhelper是乙個能夠讀寫csv檔案的庫,快,靈活,容易使用。支援讀寫自定義類物件。csvhelper實現了rfc4180 csv標準 預...