无法将本地 Wordpress 连接到 SQL Workbench

Posted

技术标签:

【中文标题】无法将本地 Wordpress 连接到 SQL Workbench【英文标题】:failing to connect local Wordpress to SQL Workbench 【发布时间】:2021-07-15 14:18:44 【问题描述】:

晕,我正在按照本指南创建本地 Wordpress 设置: https://davidyeiser.com/tutorials/docker-wordpress-theme-setup 效果很好,但现在我正在尝试连接 mysqlWorkbench,但它永远无法正常工作。

yml 文件:

version: '3'

services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: somewordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress

  wordpress:
    depends_on:
      - db
    image: wordpress:5.1.1-php7.3-apache
    ports:
      - "9210:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
    working_dir: /var/www/html
    volumes:
      - ./wp-content:/var/www/html/wp-content
      - ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
volumes:
  db_data:

码头工人ps:

我的连接尝试如下,

    启动 MySQLWorkbench CTRL + U(“连接到数据库”) 用“wordpress”填充所有字段

然后它总是说:

我尝试了不同的密码或端口组合,例如 33060,但无法连接。

知道我缺少什么吗?

【问题讨论】:

【参考方案1】:

你需要暴露db容器实例的3306端口。

version: '3'

services:
  db:
    image: mysql:5.7
    ports:
      - "3306:3306" <-- this is the important part here!
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: somewordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
...

【讨论】:

非常感谢,它现在可以工作了,仍然有点困惑为什么这个写得很好的指南,添加了一个端口无法连接的服务。 您指向的指南不包括直接从主机连接到 MySQL 服务器。仍然完全可以从其他容器连接到它(例如,在您的情况下,wordpress 容器连接到端口 3306 上的主机 db,如您的 docker-compose.yml 中所述)。

以上是关于无法将本地 Wordpress 连接到 SQL Workbench的主要内容,如果未能解决你的问题,请参考以下文章

无法将 Wordpress 连接到 MySQL 数据库

从今天起无法通过 XAMPP 连接到本地 MY SQL 数据库 (mysqli_real_connect(): (HY000/2002))

将 Coda 连接到由 Mamp Pro 托管的本地 Wordpress 安装

无法将 JDBC 连接到 SQL 服务器?

无法从Virtualbox连接到SQL Server

SQL Compact Edition,无法连接到本地 sdf 文件