简体   繁体   English

Docker 错误:MySQLdb._exceptions.OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)")

[英]Docker error : MySQLdb._exceptions.OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)")

I'm trying to start the server through docker-compose up我正在尝试通过 docker-compose 启动服务器

I'm get an error:我收到一个错误:

MySQLdb._exceptions.OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)")

But I'm able to connect to mysql with the below command但是我可以使用以下命令连接到 mysql

 docker exec -it containername  mysql -uroot -p

docker-compose.yml docker-compose.yml

version: '3.1'
services: 
db:
  image: mysql
  command: --default-authentication-plugin=mysql_native_password
  volumes:
   - ./db:/docker-entrypoint-initdb.d/:ro    
restart: always
environment:
  MYSQL_ROOT_PASSWORD: ****
  MYSQL_DATABASE: emp
  MYSQL_PASSWORD: ****
ports:
 - "33061:3306" 
emp:
  build: .
  restart: always
  ports:
  - 5005:5000    
volumes:
   my-db:

dockerfile dockerfile

FROM python:3.6-buster
LABEL image for a very management application
# We copy just the requirements.txt first to leverage Docker cache
COPY ./requirements.txt /app/requirements.txt
WORKDIR /app
RUN apt-get install -y default-libmysqlclient-dev
RUN pip3 install -r requirements.txt
RUN touch /var/log/cron.log

COPY crontab /etc/cron.d/cjob
RUN chmod 0644 /etc/cron.d/cjob
ENV PYTHONUNBUFFERED 1
CMD cron -f
EXPOSE 5000
COPY . .
CMD [ "python3", "app.py" ]

DE Config:德配置:

from flask_mysqldb import MySQL,MySQLdb

app = Flask(__name__)        
app.config['MYSQL_HOST'] = 'localhost'
app.config['MYSQL_USER'] = '*****'
app.config['MYSQL_PASSWORD'] = '****'
app.config['MYSQL_DB'] = 'emp'
app.config['MYSQL_CURSORCLASS'] = 'DictCursor'
mysql = MySQL(app) 

Can anyone please help me how to solve this problem.谁能帮我解决这个问题。 Thank you all谢谢你们

app.config['MYSQL_HOST'] = 'db'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)") - OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)") (2002,“无法通过套接字'/var/run/mysqld/mysqld.sock'连接到本地MySQL服务器(2)”) - (2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)") Dockerize Django + mySql app: (2002, "Can't connect to local MySQL server through socket '/run/mysqld/mysqld.sock' (2)") 错误 - Dockerize Django + mySql app: (2002, "Can't connect to local MySQL server through socket '/run/mysqld/mysqld.sock' (2)") error “无法通过套接字'/var/run/mysqld/mysqld.sock'(2)连接到本地MySQL服务器”) - “Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)”) django无法通过套接字'/var/run/mysqld/mysqld.sock连接到本地MySQL服务器 - django Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock 无法通过Google App Engine上的套接字'/var/run/mysqld/mysqld.sock'连接到本地MySQL服务器 - Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' on Google App Engine FLASK python web:MySQLdb._exceptions.OperationalError: (2002, “Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)”) - FLASK python web:MySQLdb._exceptions.OperationalError: (2002, “Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)”) 缺少 mysql.sock; 产生操作错误:(2002,“无法通过套接字连接到本地 MySQL 服务器‘/tmp/mysql.sock’(2)”) - Missing mysql.sock; yielding OperationalError: (2002, "Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)") (2002,“无法通过socket连接到本地MySQL服务器'/var/lib/mysql/mysql.sock'(2)”) - (2002, “Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)”) (2002,“无法通过套接字'/tmp/mysql.sock'(2)连接到本地MySQL服务器”) - (2002, “Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)”)
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM