Это мой полный скрипт.Mysql2 :: Ошибка: Использованная команда не допускается с этой версией MySQL: LOAD DATA LOCAL INFILE
Я пытаюсь сделать задачу рейка, которая собирает данные из файлов в каталоге и загружает их в mysql.
Я установил local-infile = 1, ничего не работает. Она просто дает мне ошибку
namespace :db do
namespace :load do
desc "Load Properties into DB"
task :properties => :environment do
Mysql2::Client.default_query_options[:connect_flags] |= Mysql2::Client::LOCAL_FILES
@files = Dir.entries("db/property_website_scripts/")
connection = ActiveRecord::Base.connection()
for file in @files
next if file == "." || file == ".."
sql = "LOAD DATA LOCAL INFILE '#{Rails.root}/db/property_website_scripts/#{file}'
INTO TABLE properties
FIELDS TERMINATED BY '|'
LINES TERMINATED BY '\r\n'
(property_type,property_for,city,state,country......);"
connection.execute(sql)
end
#updating created at and updated at
Property.update_all({:created_at => Time.now, :updated_at => Time.now}, "created_at IS NULL")
end
end
end
возможной DUP из http://stackoverflow.com/questions/10762239/enable-load-data -local-infile – pduersteler
Я уже прошел этот пост до –
В этом сообщении напрямую обращается к mysql, это rakefile. Там нет проблем, когда я использую mysql, проблема возникает, когда я использую его в rakefile. –