【问题标题】:Is there a way to reset all configuration in MySQL?有没有办法重置 MySQL 中的所有配置?
【发布时间】:2026-02-20 15:15:02
【问题描述】:

我又需要你的帮助了。

有没有办法重置 MySQL 中的所有配置?

这就是发生的事情。我之前安装了一个项目,这次我要设置一个新项目。

在这个新项目中,我想用我的新数据库、我创建的新用户名和密码来设置它。但是,当我到达必须执行 php artisan migrate 的地步时,它一直向我抛出一个错误,说 PDOException::("SQLSTATE[HY000] [2002] No such file or directory")

如果不是那个错误,它会抛出 connection refused

注意:我正在使用 laradock。

现在,我宁愿重置整个 MySQL,因为我认为它与我之前项目的配置冲突。

当我在网上搜索时,我尝试了以下方法: 1.重启服务器 2. 将 db_host 从 127.0.0.1 更改为 localhost,反之亦然 3. 将项目目录添加到开发环境设置中 4. docker-compose down and up again 5. 甚至自己卸载重装了docker

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=newdbname
DB_USERNAME=newusername
DB_PASSWORD=newpassword!

我想要的只是能够使用我设置的新凭据执行php artisan migrate

【问题讨论】:

    标签: mysql laravel docker


    【解决方案1】:

    如果你真的不需要数据库中的任何旧数据,你可以删除它们并重新设置一个容器:

    # stop mysql service
    docker-compose stop mysql
    
    # delete old mysql database
    rm -rf ~/.laradock/data/mysql
    
    # resetup mysql container
    docker-compose up -d nginx mysql
    

    可以根据docker-compose.yml&env-example获取mysql数据库位置:

    docker-compose.yml:

    volumes:
        - ${DATA_PATH_HOST}/mysql:/var/lib/mysql
    

    环境示例:

    DATA_PATH_HOST=~/.laradock/data
    

    【讨论】:

    • 我似乎在我的项目中找不到 docker-compose.yml。此外,在 env-example 文件中,没有 DATA_PATH_HOST 行
    • 对不起,我实际上找到了 docker-compose.yml 文件。 ``` - ${DATA_PATH_HOST}/mysql:/var/lib/mysql - ${MYSQL_ENTRYPOINT_INITDB}:/docker-entrypoint-initdb.d ```
    • 是的,只要删除~/.laradock/data/mysql 然后重启mysql服务来重置你的数据库。另一卷仅用于入口点脚本,与数据库无关。
    • 谢谢@atline,我现在可以重置我的数据库了。
    最近更新 更多