gpt4 book ai didi

mysql - 错误 2002 (HY000) : Can't connect to local MySQL server through socket

转载 作者:行者123 更新时间:2023-11-29 17:51:14 25 4
gpt4 key购买 nike

我在 debian 测试中遇到此错误 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or目录”) 同时尝试连接到数据库。

我在 Dockerfile 中做了以下设置:

FROM debian:testing

RUN apt update && apt full-upgrade -y \
&& apt install -y --no-install-recommends \
apache2 \
php \
libapache2-mod-php \
mariadb-server \
php-mysql \
openjdk-9-jdk \
git \
&& rm -rf /var/lib/apt/lists/*

RUN /etc/init.d/mysql start

# Copy the database schema to the /data directory
ADD ./mgsv.sql /tmp/

# Permit root login without password from outside container.
RUN mysql -e "GRANT ALL ON *.* TO root@'%' IDENTIFIED BY '' WITH GRANT OPTION"

# create the default database from the ADDed file.
RUN mysql < mgsv.sql

RUN git clone https://github.com/qunfengdong/mGSV.git

mgsv.sql 如下所示:

CREATE DATABASE mgsv;
CREATE USER 'mgsv_user'@'localhost' IDENTIFIED BY 'mgsvpass';
GRANT SELECT, INSERT, CREATE, DROP ON mgsv.* TO 'mgsvuser'@'localhost';
use mgsv;
CREATE TABLE IF NOT EXISTS `userinfo` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`email` text NOT NULL,
`hash` text NOT NULL,
`synfilename` text NOT NULL,
`annfilename` text NOT NULL,
`url` text NOT NULL,
`session_id` text NOT NULL,
`annImage` int(5) NOT NULL,
`create_on` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

我错过了什么?

提前谢谢

最佳答案

您误解了 docker 的工作原理。

您编写的 dockerfile 不是脚本。每个命令都是独立的,并且仅具有为其将生成的最终 docker 镜像创建一层的效果。这意味着当您运行 /etc/init.d/mysql start 时,在以下命令中您将无法连接到 mysql 服务。它根本没有运行。

所有数据导入操作都必须在容器运行时完成,而不是在构建时完成。

我的建议是使用预构建的 mysql 容器镜像,也许您可​​以在这里找到 https://hub.docker.com/_/mysql/ ,容器运行后您可以手动创建数据库。

如果您需要自动创建数据库,则需要创建一个自定义镜像,并在其中更新 docker 镜像的 entrypointcmd 以便执行数据库创建DBMS 启动后,但老实说,恕我直言,这不是一个很好的做法。

关于mysql - 错误 2002 (HY000) : Can't connect to local MySQL server through socket,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49317284/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com