问题描述:
AMH面板下,尝试让docker项目连接宿主机mysql,登录mysql报错ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)?
情况描述:
现在将某个本地DOCKER网站进行了反代,并尝试让这个项目去连接amh面板的mysql的某个表(mysql-generic-5.7 )
因为无法直接通过127.0.0.1或者localhost来连接,所以我想通过docker的内网ip 172.17.0.1来连接,于是百度了很久后,发现这样一个方法:
# 宿主机mysql设置允许用户showx通过172.17.0.2访问showx数据库的任意表
$ mysql -uroot -p
mysql>GRANT ALL PRIVILEGES ON showx.* TO 'showx'@'172.17.0.2' IDENTIFIED BY 'password' WITH GRANT OPTION;
mysql>flush privileges;
于是我用mysql -uroot -p去登录mysql,报错ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)……
用自建的某个mysql用户mysql -uaaa -p 也是一样……
又一番百度,以为是内存不够,想了想又用某台9999装了amh的机器试了下,依然是这个错误……
所以不得已又来打扰大佬了……是为了保障AMH面板安全的安全性所以不能连接,还是因为我没设置对?
如果不这样设置,还有什么办法能直接在amh面板上设置,让docker项目连接到面板的mysql?
amh上是有多个mysql版本可以共存,存在多个sock文件的情况,
ssh登录mysql的话,需要指定sock文件登录,
如:
mysql -uroot -p -S /tmp/mysql-版本.sock
https://amh.sh/bbs/post-4160-...