level 3
我呸呸z
楼主
启动后的mysql的链接地址是什么?是主机的ip+映射端口吗?我看很多教程都是直接通过
mysql -u -p的方式直连,意思是寻址地址是localhost?
可是我的情况却是这样的。
在我的机子上运行mysql :
docker run --name XX-e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_DATABASE=XX mysql
无法通过直接mysql -u -p 的方式直接连接mysql,会报错误
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
虽然我后面找到了解决方案:
export MYSQL_IP_ADDRESS=$(sudo docker inspect --format="{{ .NetworkSettings.IPAddress }}" mysql_name)
通过此指令得到mysql的寻址地址,再通过
mysql -h $MYSQL_IP_ADDRESS -u root -p
来访问就可以
但是我不明白其中的原理是什么,为什么是这样的?
2018年10月19日 09点10分
1
mysql -u -p的方式直连,意思是寻址地址是localhost?
可是我的情况却是这样的。
在我的机子上运行mysql :
docker run --name XX-e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_DATABASE=XX mysql
无法通过直接mysql -u -p 的方式直接连接mysql,会报错误
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
虽然我后面找到了解决方案:
export MYSQL_IP_ADDRESS=$(sudo docker inspect --format="{{ .NetworkSettings.IPAddress }}" mysql_name)
通过此指令得到mysql的寻址地址,再通过
mysql -h $MYSQL_IP_ADDRESS -u root -p
来访问就可以
但是我不明白其中的原理是什么,为什么是这样的?