MySQL 連線傳輸協議


諸如“mysql”和“mysqldump”之類的程式使用 MySQL 客戶端庫,藉助許多傳輸協議(如 TCP/IP、Unix 套接字檔案、命名管道、共享記憶體等)支援 MySQL 連線到伺服器。讓我們瞭解一下 MySQL 使用的連線傳輸協議。

下表顯示了允許用於 --protocol 的值,並說明了每個值適用的平臺。需要注意的是,這些值不區分大小寫。

--protocol 值使用的傳輸協議適用平臺
TCPTCP/IP所有平臺
SOCKETUnix 套接字檔案Unix 和類 Unix 系統
PIPE命名管道Windows
MEMORY共享記憶體Windows

TCP/IP

TCP/IP 傳輸也支援連線到本地或遠端 MySQL 伺服器。

命名管道傳輸

命名管道傳輸允許遠端連線,但截至目前,MySQL 中尚未實現此功能。僅支援連線到本地 MySQL 伺服器。它不需要 TLS/SSL 加密。

套接字檔案

套接字檔案傳輸僅支援連線到本地 MySQL 伺服器。它可以進行 TLS/SSL 加密。

共享記憶體

它傳輸僅支援連線到本地 MySQL 伺服器。它不需要 TLS/SSL 加密。

如何使連線安全?

如果連線透過預設情況下安全的傳輸協議建立,則預設情況下連線是安全的。否則,對於 TLS/SSL 加密的協議,可以使用加密來建立安全連線。

  • TCP/IP 連線預設情況下不安全,但可以加密以使其安全。

  • 套接字檔案連線預設情況下是安全的。它們可以加密,但這不會使其更安全,只會增加 CPU 負載。

  • 命名管道連線預設情況下不安全,並且不需要加密即可使其安全。但是,提供了 named_pipe_full_access_group 系統變數,有助於控制哪些 MySQL 使用者可以獲得使用命名管道連線的許可權。

  • 共享記憶體連線預設情況下是安全的。

更新時間: 2021-03-09

247 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告