使用MySQL v.4.1的Rails

时间:2014-04-11 20:04:16

标签: mysql ruby-on-rails mysql4

有没有机会让Rails应用程序连接到旧的MySQL v4.1.20服务器?

rails db 

命令工作正常,但我无法运行该应用程序。

当我使用

生成新应用时
rails new app_name -d mysql

我在database.yml文件中看到以下内容:

  

的MySQL。建议使用版本4.1和5.0。

这应该意味着我能够使用它。 但是Rails Active Record使用MySQL v.5.0.2 +功能(https://github.com/rails/rails/blob/4-0-stable/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb):

# Make MySQL reject illegal values rather than truncating or blanking them, see
# http://dev.mysql.com/doc/refman/5.0/en/server-sql-mode.html#sqlmode_strict_all_tables
# If the user has provided another value for sql_mode, don't replace it.

    if strict_mode? && !variables.has_key?(:sql_mode)
      variables[:sql_mode] = 'STRICT_ALL_TABLES'
    end

不幸的是,我与旧的MySQL服务器版本无关。我必须使用它。

1 个答案:

答案 0 :(得分:0)

添加

strict: false

到database.yml中的连接器设置解决了这个问题。