Github操作:使用mysql服务会引发对用户'root'@'localhost'的访问被拒绝

问题描述 投票:2回答:1

错误,拒绝用户'root'@'localhost'的访问(使用密码:是)我正在尝试在Github Actions中使用mysql服务,但是没有运气。我收到以下错误

拒绝对用户'root'@'localhost'的访问(使用密码:是)

我的工作是以下:

test:
  name: Test
  needs: install
  services:
    mysql:
      image: mysql:8.0
      ports:
        - '8888:3306'
      env:
        MYSQL_ROOT_PASSWORD: rootpass
        MYSQL_DATABASE: test
  runs-on: ubuntu-latest
  steps:
    - uses: actions/checkout@master
    - uses: actions/setup-node@master
      with:
        node-version: '10.x'
    - run: mysql --port 8888 -u root -prootpass -e 'CREATE DATABASE IF NOT EXISTS test;'

我似乎无法使其正常工作。任何帮助表示赞赏。可以在以下位置找到针对我的测试设置的存储库的拉取请求:https://github.com/morsby/medmcq/pull/399

github github-actions
1个回答
2
投票

我花了一些时间尝试不同的方法来使其正常工作。我找到了一个解决方案,但老实说,我不确定为什么是否有效。我只是将-h 127.0.0.1添加到mysql命令。

我还向options添加了运行状况检查标志,以确保服务能够接受请求。

这是一个工作流程:

name: CI
on: push
jobs:
  build:
    runs-on: ubuntu-latest
    services:
      mysql:
        image: mysql:8.0
        env:
          MYSQL_ROOT_PASSWORD: password
          MYSQL_DATABASE: test
        ports:
            - '8888:3306'
        options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
    steps:
      - uses: actions/checkout@v1
      - run: mysql -h 127.0.0.1 --port 8888 -u root -ppassword -e 'CREATE DATABASE IF NOT EXISTS test;'
© www.soinside.com 2019 - 2024. All rights reserved.