您好,登錄后才能下訂單哦!
這篇文章主要講解了“mysql.sock的概念是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“mysql.sock的概念是什么”吧!
“mysql.sock”是mysql的套接字文件,是mysql的主機和客戶機在同一host上的時候,使用unix socket做為通訊協議的載體。在UNIX系列系統下本地連接MySQL可以采用TCP連接和UNIX域套接字兩種方式;其中UNIX域套接字方式需要一個套接字文件,可用“show variables like 'socket'\G;”命令來查看本地socket文件位置。
本教程操作環境:linux7.3系統、mysql8版本、Dell G3電腦。
“mysql.sock”是mysql的套接字文件。
在UNIX系統下本地連接MySQL可以采用UNIX域套接字方式,這種方式需要一個套接字文件
套接字文件可由參數socket控制,可使用以下命令查看文件的位置:
show variables like 'socket'\G;
mysql.sock是mysql的主機和客戶機在同一host上的時候,使用unix domain socket做為通訊協議的載體,它比tcp快。
MySQL有兩種主要的連接方式:
(1)TCP/IP
(2)socket
常用的還是TCP連接:
[root@mysql8 data]# mysql -h 192.168.103.67 -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 14 Server version: 8.0.15 MySQL Community Server - GPL Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
另外的一種方式就是這種unix socket的連接。在速度上比用tcp的方式更快,但只適用于mysql和應用同在一臺PC上,依靠本地的.sock文件。如果不在同一臺PC上,就沒有辦法連接了。
對mysql.sock來說,其作用是程序與MySQL Server處于同一臺機器,發起本地連接時可用。
例如你無須定義連接host的具體IP得,只要為空或localhost就可以。
在此種情況下,即使你改變MySQLl的外部port也是一樣可能正常連接。
因為你在my.ini中或my.cnf中改變端口后,mysql.sock是隨每一次 MySQL Server啟動生成的。已經根據你在更改完my.cnf后重啟mysql時重新生成了一次,信息已跟著變更。
那么對于外部連接,必須是要變更port才能連接的。
Linux下安裝MySQL連接的時候經常回提示說找不到mysql.sock文件,解決辦法很簡單:
如果是新安裝的MySQL,提示找不到文件,就搜索下,指定正確的位置。
如果mysql.sock文件誤刪的話,就需要重啟MySQL服務,如果重啟成功的話會在datadir目錄下面生成mysql.sock 到時候指定即可。
如果還不行就選擇用TCP連接方式連接就行了,其實windows下還支持管道連接方式。
感謝各位的閱讀,以上就是“mysql.sock的概念是什么”的內容了,經過本文的學習后,相信大家對mysql.sock的概念是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。