前提・実現したいこと
初心者で初投稿になります。
ずれた発言や足らない情報等ありましたらすいません。
AWSのEC2インスタンスを使って本番環境においてRailsの起動が行いたいのですが、
「$ bundle exec unicorn_rails -c config/unicorn.rb -E production -D」
のコマンドを打つとブラウザ上で下のように表示されています。
「The page you were looking for doesn't exist.」
ローカルではYay! You’re on Rails!と表示できます。
発生している問題・エラーメッセージ
$ less log/unicorn.stderr.logでエラーメッセージを確認すると、下のように出てきます。
terminal
1E, [2020-05-04T07:10:10.701899 #15720] ERROR -- : Can’t connect to local MySQL server through 2socket ‘/tmp/mysql.sock’ (2) (Mysql2::Error::ConnectionError)
また、ログの中には下のような記載もありました。
terminal
1ArgumentError: Already running on PID:18437 (or pid=/var/www/FesLive-app/tmp/pids/unicorn.pid 2is stale)
該当のソースコード
databaseyml
1production: 2 <<: *default 3 database: FesLive-app_production 4 username: root 5 password: <%= ENV['DATABASE_PASSWORD'] %> 6 socket: /var/lib/mysql/mysql.sock
試したこと
・mysqlの起動と接続は問題なく行えます。
・下のコマンドを打つと、「/var/lib/mysql/mysql.sock」と返ってきてconfig/database.ymlの記載内容と
一致しています。
$ mysql_config --socket
・/var/lib/mysql内にmysql.sockがあることは確認済みです。
・EC2サーバ側のSECRET_KEY_BASEは設定済みです。
・EC2インスタンスの再起動を行いましたが、変化なしでした。
・ローカルで最新のコードをコミット、プッシュし、サーバー側にプルも問題なく行えます。
追記(5/5 AM10:00)
新たに$ mysql --help | grep my.cnfコマンドにより、
my.cnfファイルの場所を確認すると
order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf
と返ってきました。
その中の一つの/etc/my.cnfファイルの中身を書いてみると
[MySQL]の記述はありましたが、[client]の記述はありませんでした。
こちらがなにか関係しているのでしょうか。。
初歩的な質問にはあるとは思いますが、何卒よろしくお願いしますm(_ _;)m
補足情報(FW/ツールのバージョンなど)
Railsバージョン:5.0.7.2
Rubyバージョン:2.5.1p57
Bundlerバージョン:2.0.2
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/05 10:43
2020/05/05 13:18
2020/05/08 02:48