mysql本地登入無法使用埠號登入的解決方法
阿新 • • 發佈:2020-01-09
最近在使用linux上進行本地登入時,發現既然無法正常登入,報如下錯誤資訊:
[root@xxxx ~]# mysql -h localhost -u root -p -P 3306
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
分析:使用mysql --verbose --help進行分析,才發現原來port和socket對應的值都為0或者為空,也就是預設引數都沒有。
[root@UHDEV013 ~]# mysql --verbose --help |grep socket --protocol=name The protocol to use for connection (tcp,socket,pipe,-S,--socket=name The socket file to use for connection. The buffer size for TCP/IP and socket communication. socket [root@xxxxx ~]# mysql --verbose --help |grep port -P,--port=# Port number to use for connection or 0 for default to,in port 0
而mysql登入時,是需要從配置檔案中查詢相關的引數,然後才能取到預設引數的,引數檔案的位置如下:
對於直接使用在命令列使用-P 追加的引數 ,為何管不用,目前 我也不知道什麼原因。
[root@UHDEV013 ~]# mysql --verbose --help |grep my.cnf order of preference,my.cnf,$MYSQL_TCP_PORT,/etc/my.cnf /etc/mysql/my.cnf /usr/haier/mysql/etc/my.cnf /usr/haier/mysql/my.cnf ~/.my.cnf
解決方法:
在/etc/my.cnf檔案中,在[client]中新增socket引數即可,只新增port引數不管用。原因目前不清楚。
總結
以上所述是小編給大家介紹的mysql本地登入無法使用埠號登入的解決方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們網站的支援!