#発生している問題
vagrantを使っているので以下のようにrailsのサーバーを立ち上げて
Console
$rails s -b 0.0.0.0
ブラウザにて http://localhost:3000にアクセスすると以下のエラーが表示されます。
Your version of SQLite (3.7.17) is too old. Active Record supports SQLite >= 3.8.
#環境
Vagrant CentOS7にてRailsの環境を構築しました。
Console
$ruby -v ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux] $rails -v Rails 6.0.2.1 $sqlite3 -version 3.29.0 2019-07-10 17:32:03 fc82b73eaac8b36950e527f12c4b5dc1e147e6f4ad2217ae43ad82882a88bfa6
なお、sqlite3はyumにてバージョン3.7.17までのサポートでしたので以下の手順で最新のsqlite3をインストールしました。
Console
$ wget https://www.sqlite.org/2019/sqlite-autoconf-3290000.tar.gz $ tar xzvf sqlite-autoconf-3290000.tar.gz $ cd sqlite-autoconf-3290000 $ ./configure --prefix=/opt/sqlite/sqlite3 $ make $ sudo make install
~/.bash_profileに
export PATH="/opt/sqlite/sqlite3/bin:$PATH"
を追記しました。
#知りたいこと
私の環境では sqlite3はバージョン3.29.0のはずですが、エラー文を見てみる限りSQLiteが3.7.17だと認識されているようです。
railsはどこを通してsqliteのバージョンを認識しているのでしょうか?このエラーの解決方法をご存知の方がいらっしゃいましたら回答をよろしくお願いします。
まだ回答がついていません
会員登録して回答してみよう