anlek / mongify

Mongify allows you to map your data from a sql database and into a mongodb document database.
http://github.com/anlek/mongify
MIT License
317 stars 82 forks source link

String not valid UTF-8 #159

Open jacksonlima91 opened 6 years ago

jacksonlima91 commented 6 years ago

Even if add encoding "utf8" still facing same problem: Here is my database.config file sql_connection do adapter "mysql2" host "localhost" username "" password "*" database "**" encoding "utf8" end

mongodb_connection do host "localhost" database "*****" encondig utf8 end

root@Database-server:~# mongify process database.config database_translation.rb Copying actor (1/1): (200/200) 100% |ooooo| Time: 00:00:00 Copying actor_info (1/1): (200/200) 100% |ooooo| Time: 00:00:00 /var/lib/gems/2.3.0/gems/bson-1.12.5/lib/bson/bson_c.rb:20:in serialize': String not valid UTF-8 (BSON::InvalidStringEncoding) from /var/lib/gems/2.3.0/gems/bson-1.12.5/lib/bson/bson_c.rb:20:inserialize' from /var/lib/gems/2.3.0/gems/mongo-1.12.5/lib/mongo/collection_writer.rb:65:in block in batch_write_incremental' from /var/lib/gems/2.3.0/gems/mongo-1.12.5/lib/mongo/collection_writer.rb:57:incatch' from /var/lib/gems/2.3.0/gems/mongo-1.12.5/lib/mongo/collection_writer.rb:57:in batch_write_incremental' from /var/lib/gems/2.3.0/gems/mongo-1.12.5/lib/mongo/collection.rb:1184:inbatch_write' from /var/lib/gems/2.3.0/gems/mongo-1.12.5/lib/mongo/collection.rb:411:in insert' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/database/no_sql_connection.rb:101:ininsert_into' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/translation/process.rb:36:in block (2 levels) in copy_data' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/database/sql_connection.rb:86:inblock in select_rows' from /var/lib/gems/2.3.0/gems/activesupport-4.2.10/lib/active_support/core_ext/range/each.rb:7:in each' from /var/lib/gems/2.3.0/gems/activesupport-4.2.10/lib/active_support/core_ext/range/each.rb:7:ineach_with_time_with_zone' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/database/sql_connection.rb:84:in select_rows' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/translation/process.rb:29:inblock in copy_data' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/translation/process.rb:28:in each' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/translation/process.rb:28:incopy_data' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/translation/process.rb:14:in process' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/cli/command/worker.rb:72:inexecute' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/lib/mongify/cli/application.rb:28:in execute!' from /var/lib/gems/2.3.0/gems/mongify-1.3.2/bin/mongify:17:in<top (required)>' from /usr/local/bin/mongify:23:in load' from /usr/local/bin/mongify:23:in

'

robertangeles commented 6 years ago

Hi. Is your mongoDB connection encoding a typo?

jacksonlima91 commented 6 years ago

Could you explain me? I don't understanding about enconding typo?You want me to give you some specific data?

anlek commented 6 years ago

I believe it's supposed to be utf-8 instead of utf8. (Missing the dash)

jacksonlima91 commented 6 years ago

Here is my database.config file sql_connection do adapter "mysql2" host "localhost" username "" password "" database "*****" encoding "utf-8" end

mongodb_connection do host "localhost" database "*****" encondig utf-8 end

Hi, it's not supported with "utf-8".

mongify check database.config /var/lib/gems/2.3.0/gems/mysql2-0.4.10/lib/mysql2/client.rb:47:in charset_name=': Unsupported charset: '"utf-8"' (Mysql2::Error) from /var/lib/gems/2.3.0/gems/mysql2-0.4.10/lib/mysql2/client.rb:47:ininitialize'

I change adpater for mysql and mysql2 and both are compatible only with utf8.

anlek commented 6 years ago

My bad.

jacksonlima91 commented 6 years ago

Any help?

dat39905 commented 4 years ago

Addtional in sql_connection encoding "utf8"