簡體   English   中英

無法使用gitlab-ci.yml連接到MySql

[英]Unable to connect to MySql using gitlab-ci.yml

我正在嘗試為我的Rails項目創建gitlab-ci文件。 我的.gitlab-ci.yml的一部分:

image: ruby:2.3.4

variables:
  RAILS_ENV: test

services:
  - mysql:5.7


before_script:
  - apt-get update -qq && apt-get install -yqq nodejs libmysqlclient-dev
  - ruby -v
  - which ruby
  - gem install bundler --no-ri --no-rdoc
  - bundle install --jobs $(nproc) "${FLAGS[@]}"
  - cp config/database.gitlab_ci.yml config/database.yml
  - bundle exec rake db:create db:schema:load
  - bundle exec rake db:migrate --quiet

我無法連接到我的MySql數據庫。 無論我怎么做。

這是我的database.gitlab_ci.ym的一部分:

test: &test
    adapter: mysql2
    database: my_db
    encoding: utf8
    username: my_user
    password: 1234
    host: localhost

我總是得到這個錯誤:

  #<Mysql2::Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)>
  Couldn't create database for {"adapter"=>"mysql2", "database"=>"my_db", "encoding"=>"utf8", "username"=>"my_db", "password"=>1234, "host"=>"localhost"}, {:charset=>"utf8"}
  (If you set the charset manually, make sure you have a matching collation)
  rake aborted!
  Mysql2::Error: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

怎么解決?

您的問題似乎與類似。 提到的解決方法是你需要通過TCP連接,而不是socket。

另外我建議你檢查gitlab與MySQL服務相關的文檔

您的mysql服務將無法在localhost
您必須使用服務名稱mysql作為主機名。
文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM