在mysql中,2022錯誤指的是編譯的時候沒有指定socket,所以mysql命令連接的時候還是使用的默認值,因為socket位置變了,而mysql命令不知道,所以就出現(xiàn)了這樣的錯誤,可以修改“/etc/my.cnf”文件來解決該錯誤。
千萬級數(shù)據(jù)并發(fā)如何處理?進入學習
本教程操作環(huán)境:windows10系統(tǒng)、mysql8.0.22版本、Dell G3電腦。
mysql的2002錯誤是什么
首先重現(xiàn)問題現(xiàn)象,報錯提示如下:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
報錯分析,官網(wǎng)大致意思是說編譯的時候沒有指定socket,所以mysql 命令連接的時候還是使用的默認值(/tmp/mysql.sock),因為socket位置變了,而mysql 命令不知道,所以就出現(xiàn)了這樣的錯誤
解決辦法,告訴mysql 命令,我們的socket文件在什么地方。修改/etc/my.cnf 文件添加如下內(nèi)容:
[mysqld] socket=/data/mysql5.7.24/db_test/mysql.sock [client] socket=/data/mysql5.7.24/db_test/mysql.sock
保存后測試是否能正常登陸
mysql -uroot -p
另一種解決辦法就是在登陸的時候指定socket。
第一種寫法
mysql -uroot -p --socket=/data/mysql5.7.24/db_test/mysql.sock
第二種寫法
mysql -uroot -p -S /data/mysql5.7.24/db_test/mysql.sock
推薦學習:mysql視頻教程