前提・実現したいこと
mysql + nginx + pumaでRailsアプリをデプロイしました。
トップページは無事表示されるのですが、その他のログインページなどに行くと、「We're sorry, but something went wrong」のエラーが出てしまいます。
どうすれば直るでしょうか??
発生している問題・エラーメッセージ
ログを確認してみると、mysql側でのエラー文が見つかりました。
cat log/production.log
ActiveRecord::StatementInvalid (Mysql2::Error: View 'information_schema.COLUMNS' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them):
試したこと
mysqlでrootユーザーのパスワードを確認し、アプリ内のdatabase.ymlでそのパスワードが設定されていることは確認しました。
production: <<: *default database: {アプリ名} username: root password: {自分のパスワード}
その後、行ったことです。
mysql_upgradeをする、という記事も見つける
↓
MySQLのバージョンを8.0.12からはmysql_upgradeがdeprecatedされた、という記事を見つける
↓
この記事に従って、以下のコマンドを打つ
mysql.server start --upgrade=FORCE
↓
-bash: mysql.server: コマンドが見つかりません
とエラーが出る
↓
この記事を参考に違う方法でupgrade=FORCEを起動させようとする。
/usr/sbin/mysqld --basedir=/usr --upgrade=FORC
↓
このコマンドを打つと、以下のような文が出る
[Warning] [MY-010091] [Server] Can't create test file /var/lib/mysql/mysqld_tmp_file_case_insensitive_test.lower-test [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.23) starting as process 23057 [Warning] [MY-010091] [Server] Can't create test file /var/lib/mysql/mysqld_tmp_file_case_insensitive_test.lower-test [Warning] [MY-010159] [Server] Setting lower_case_table_names=2 because file system for /var/lib/mysql/ is case insensitive [ERROR] [MY-010187] [Server] Could not open file '/var/log/mysqld.log' for error logging: Permission denied [ERROR] [MY-010119] [Server] Aborting [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.23) MySQL Community Server - GPL.
補足情報(FW/ツールのバージョンなど)
ruby:3.0.0p0 (2020-12-25 revision 95aff21468) [aarch64-linux]
Rails:6.1.1
mysql:Ver 8.0.23 for Linux on aarch64 (MySQL Community Server - GPL)
あなたの回答
tips
プレビュー