MySQL實現了四種通信協議
- TCP/IP協議,通常我們通過來連接MySQL,各種主要編程語言都是根據這個協議實現了連接模塊
- Unix Socket協議,這個通常我們登入MySQL服務器中使用這個協議,因為要使用這個協議連接MySQL需要一個物理文件,文件的存放位置在配置文件中有定義,值得一提的是,這是所有協議中最高效的一個。
- Share Memory協議,這個協議一般人不知道,肯定也沒用過,因為這個只有windows可以使用,使用這個協議需要在配置文件中在啟動的時候使用 –shared-memory參數,注意的是,使用此協議,一個host上只能有一個server,所以這個東西一般沒啥用的,除非你懷疑其他協議不能正 常工作,實際上微軟的SQL Sever也支持這個協議
- Named Pipes協議,這個協議也是只有windows才可以用,同shared memory一樣,使用此協議,一個host上依然只能有一個server,即使是使用不同的端口也不行,Named Pipes 是為局域網而開發的協議。內存的一部分被某個進程用來向另一個進程傳遞信息,因此一個進程的輸出就是另一個進程的輸入。第二個進程可以是本地的(與第一個 進程位於同一台計算機上),也可以是遠程的(位於聯網的計算機上)。正因為如此,假如你的環境中沒有或者禁用TCP/IP環境,而且是windows服務 器,那么好歹你的數據庫還能工作。使用這個協議需要在啟動的時候添加–enable-named-pipe選項