之前有采用源碼進(jìn)行mysql的安裝卿闹,似乎并無(wú)此問(wèn)題
在后來(lái)的某次二進(jìn)制安裝后,發(fā)現(xiàn)my.cnf設(shè)置的socket路徑為/usr/local/mysql/mysql.sock
登陸mysql時(shí)會(huì)提示報(bào)錯(cuò)
[root@MainEnv ~]# mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
必須采用指定S路徑的方式方可登陸成功
[root@MainEnv ~]# mysql -S /usr/local/mysql/mysql.sock
這個(gè)原因是因?yàn)槎M(jìn)制安裝的my.cnf里面沒(méi)有[client]這個(gè)選項(xiàng)
如果想要默認(rèn)通過(guò)自己設(shè)定的socket路徑邑飒,而不采用-S的寫(xiě)法,必須要在my.cnf里面寫(xiě)上[client]的相關(guān)配置馒稍,并將socket路徑寫(xiě)在[client]下方的配置里礁哄,否則登陸時(shí),mysql只會(huì)去默認(rèn)的/tmp下尋找mysql.sock
而源碼安裝的mysql似乎是有client選項(xiàng)的(僅憑印象铜涉,未繼續(xù)考證)智玻,所以mysql源碼安裝時(shí)指定socket后,可以默認(rèn)登陸