伺服器 && 客戶端
不會真有人不會安裝吧???
安裝的時候會直接(客戶端)和(伺服器端)都安裝了
伺服器端:一句話,就是開啟服務;開啟胸膛,你來存或者取;
以我的小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標準 預...