Rails rails 应用使用已有数据库报错

rookie · 2023年05月10日 · 最后由 lobb 回复于 2023年05月17日 · 597 次阅读

新建了一个 rails 应用 用的是已有的数据库 开发环境没问题 生产环境报错

请问这是什么原因。。

可能是 mysql gem 包版本不匹配,换个版本试试

具体进入 ar 报错的代码行的地方看看. 然后谷歌一下.. 用现有数据库挺蛋疼的, 之前也遇到过别的类似的问题,因为 mysql 的一个表里的配置改了导致 ar 炸了.. 看 ar 的代码然后搜了好久。

好像是 ubuntu 的问题 我用的 22 换了个版本就好了

rookie 回复

可不可以不换 ubuntu 版本来解决这个问题呢?

oyaxira 回复

怎么看呢?能推荐下吗

lobb 回复

不清楚有没有其它解决方案 我换了 ruby 版本 mysql2 版本都没有 换了系统重新部署就好了

@lobb 安装 Ruby 时,使用自己编译的 openssl 试试。

wget https://codeload.github.com/openssl/openssl/zip/refs/heads/OpenSSL_1_1_1-stable -O openssl-1.1.1.zip
unzip openssl-1.1.1.zip
cd openssl-OpenSSL_1_1_1-stable
sudo ./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib
make -j8
sudo make install
rvm reinstall 3.0.0 -C --with-openssl-dir=/usr/local/ssl
lifuzho 回复

是的,按照你的流程来已经解决了这个问题,是这个 openssl 证书的问题吗?

openssl version -a 查看证书是 OpenSSL 3.0.2 15 对比执行流程之前 openssl 没变,这是为什么呢?但是迁移问题解决了

需要 登录 后方可回复, 如果你还没有账号请 注册新账号