MySQL 連線傳輸協議
諸如“mysql”和“mysqldump”之類的程式使用 MySQL 客戶端庫,藉助許多傳輸協議(如 TCP/IP、Unix 套接字檔案、命名管道、共享記憶體等)支援 MySQL 連線到伺服器。讓我們瞭解一下 MySQL 使用的連線傳輸協議。
下表顯示了允許用於 --protocol 的值,並說明了每個值適用的平臺。需要注意的是,這些值不區分大小寫。
--protocol 值 | 使用的傳輸協議 | 適用平臺 |
---|---|---|
TCP | TCP/IP | 所有平臺 |
SOCKET | Unix 套接字檔案 | 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 使用者可以獲得使用命名管道連線的許可權。
共享記憶體連線預設情況下是安全的。
廣告