如何将BIG SQL文件导入rails数据库?

时间:2011-03-18 08:36:00

标签: sql ruby-on-rails activerecord import

我有一个非常庞大的(> 8mo)sql文件,它基本上创建了2个表并用数据填充它们。这是Sequel Pro生成的转储。 我的第一个想法是逐行读取文件并运行“执行”命令,但我有一个错误,我的字符串太大了。

  

Mysql2 ::错误:收到的数据包大于'max_allowed_pa​​cket'字节

有没有办法直接运行SQL文件而不是读取它并尝试执行?
仅供参考我可以将这个文件分成2个部分分别用于2个表格,但是我之后会有另一个更大的文件,并且不能分割。
我正在使用Rails 3.0.3与ActiveRecord和MySQL数据库。

1 个答案:

答案 0 :(得分:5)

它是一个正确的SQL文件(其中包含SQL语句)吗?

如果是这样,您应该可以在命令行上执行此操作:

mysql target-db-name < sql-file-name.sql -uuser -p

点击返回,它会提示您输入密码,然后关闭

请记住用适当的值替换target-db-name,sql-file-name.sql和user

注意:应事先创建target-db-name:我认为它不会自动创建