Orthogonal Thought | Random musings from the creator of Cooking For Engineers and Lead Architect of Fanpop





Mysql database migration and special characters

Posted 5 May, 2007 at 10:12pm by Michael Chu
(Filed under: Web 2.0)

So, I keep having all sorts of problems when moving my mysql database from one machine to another. The issue is that in text or varchar columns containing data that have special characters like smart quotes (those crazy curly quotes), accented letters, etc. result in scrambled data. For example the following phrase


results in


in the database and then renders incorrectly on the website as


This is supposed to be a popular problem when moving from mysql 4.0 to 4.1 or later, but I seem to have this problem moving data from one database to another on the same mysql installation. Moving from one maching with 4.1 to another with 4.1 also results in this crazy character problem.

Most of the solutions I found online end up with complicated find and replace functions to remove these problem characters. Unfortunately, that just not a solution that I'm okay with. After fiddling with it for most of the day (and giving up several times in the past), here's what I did that worked for me.

As I understand it, the problem arises from the fact that mysqldump uses utf8 for character encoding while, more often than not, mysql tables default to latin1 character encoding. (If you were smart enough to manually set the character encoding to utf8, then you'll have no problems - everyone running mysql 4.0 or early will be using latin1 since it didn't support any other encodings.) So lets say we have a database named example_db with tables that have varchar and text columns. If you have special characters that are really UTF-8 encoded characters stored in the db, it works just fine until you try to move the db to another server.

What happens when you execute the command:

mysqldump -u mysql_username -p example_db > example_db.mysql

is that mysqldump takes the latin1 encoded tables (containing utf8 characters) and translates them into utf8 encoding (so the utf8 characters are no longer what they are supposed to be) before writing it to disk. In theory, importing the data into mysql should work since it's in utf8 and mysql 4.1 and higher understands utf8, but unfortunately, the double encoding on these characters messes it up and you get funny text (as shown above). As far as I can tell when you execute:

mysql -u mysql_username -p new_db < example_db.mysql

mysql reads the data in (which is in utf8) and converts it to your character encoding. The special character that was misinterpreted by mysqldump and encoded is now decoded to the misinterpreted character and you have a funky series of symbols.

There's two ways of dealing with this that works (for me). The first is dealing with it on an individual table column level and the second works on the dump (database) level.

1. Fixing a single column
With this solution, you just perform a mysqldump as you normally would (see above) and then import as you normally would (see above). The special characters are messed up. They aren't really messed up - they just looked messed up. In actuality, your data is probably perfectly formatted in utf8 but is in a column that is latin1. So, we simply need to switch that column from latin1 to utf8 without altering the data. Unfortunately, you can't just run the ALTER TABLE command that changes the character encoding because then mysql will convert the data from latin1 to utf8 (including the special characters) and you'll end up with a different set of gibberish characters. We just need to change the type WITHOUT running a conversion. To do this change the varchar to binary and the text to blob. This change does not result in any conversion or re-encoding. Then switch it back to varchar or text with the correct encoding.
For a varchar(255) column named "column_name" in a table named "example_table":

ALTER TABLE example_table MODIFY column_name BINARY(255);
ALTER TABLE example_table MODIFY column_name VARCHAR(255) CHARACTER SET utf8;

For a text column named "text_column_name" in a table named "example_table":

ALTER TABLE example_table MODIFY text_column_name BLOB;
ALTER TABLE example_table MODIFY text_column_name TEXT CHARACTER SET utf8;

The data in that table should now be properly interpreted. If not, you've got a different problem than the one I experienced.

2. Fixing the problem on import
If you've got a lot of columns and would prefer to fix it while importing, a solution that works most of the time (repeat: most of the time) is to perform a mysqldump forcing the dump to write out data in latin1. Then on the import we "fool" mysql into thinking it's utf8 data.
For a database called example_db (one following is one line):

mysqldump -u mysql_username -p --default-character-set=latin1 example_db > example_db.mysql

Now open the dump file (example_db.mysql in this example) and edit it. There will be a line that reads like:

/*!40101 SET NAMES latin1 */;

Change latin1 to utf8:

/*!40101 SET NAMES utf8 */;

Now, import the file into mysql:

mysql -u mysql_username -p new_db < example_db.mysql

In most cases everything will import properly. In a few corner cases, the decoded data will resolve to the same text as another piece of decoded data and this could result in a conflict if this occurs on fields that must have unique entries. In this case, you'll need to re-encode manually using the first solution.

There is a popular solution online that claims you just perform a mysqldump with --default-character-set=latin1 and import with mysql --default-character-set=utf8 but it didn't work for me. It is possible that it might work if you deleted the SET NAMES latin1 line in the dump, but if you're in there you might as well just change it to utf8.

I hope this helps some people out.

Update 2007-05-21: Even after testing the conversion so many times, sometimes it just doesn't work as expected. The last time I did this, the conversion dropped all the text after a special character. So, please test this before using.

133 comments to Mysql database migration and special characters

markus.denhoff.com - Datenbank Migration, May 6th, 2007 at 11:09 pm:

  • […] Wer schon öfter MySQL-Datenbanken migriert hat, wird das ein oder andere Mal auf verrückte Kodierungsprobleme gestoßen sein, wo Sonderzeichen in verschiedenste Zeichen kodiert wurde. Auf orthogonalthought.com findet sich eine Beschreibung wie man Encodingprobleme bei der Migration von Datenbanken vermeiden kann. […]

Jamshid Afshar, May 6th, 2007 at 11:35 pm:

  • I don't know the MySQL particulars, but fyi that "curly quote" character is not part of the "ISO-8859-1" character encoding standard (aka, Latin-1).

    It is in the very common Microsoft "Windows-1252" character set, at position 146. The Windows-1252 (aka ANSI) character set is pretty much ISO-8859-1 plus a few characters (eg, Euro, curly apostrophe) at the "unused" ISO-8859-1 character values. http://en.wikipedia.org/wiki/Windows-1252

    Also, here's a really good article on character encodings / characters sets.

    The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)

» MySQL-Dumps ohne Kopfschmerzen | Kein Coder, May 6th, 2007 at 11:49 pm:

  • […] orthogonaltought.com zeigt dazu zwei Methoden , wie dieses Problem mit wenigen SQL-Befehlen repariert werden kann. […]

Jordan, May 7th, 2007 at 1:14 am:

  • Typo FYI ("Now option the dump file" should probably be "Now open the dump file"). Good article, and very useful.

Stephanie Booth, May 7th, 2007 at 1:18 am:

  • Thanks, I'll try this out next time I bump into one of my horrid MySQL encoding breakages!

Michael Chu, May 7th, 2007 at 1:19 am:

  • Thanks Jamshid,

    That's a really interesting article. Joel does a good job explaining the subject of character encoding and what to do. It's too bad there isn't a "list of things you need to know before you start fiddling with your own web application". Man, all the stuff I learned while implementing the CMS for Cooking For Engineers came in handy when we started developing Fanpop, but not a day goes by where I don't discover a better way of doing something or wish I had known about some piece of information or method six months ago. Sometimes you're ignorant and don't even know it, then three years later you try to migrate your database and then learn you need to fix your tables because mysql defaults to latin1 while php does it's own thing.

Michael Chu, May 7th, 2007 at 1:21 am:

  • Typo fixed. Thanks Jordan!

Luke, May 7th, 2007 at 1:41 am:

  • I had this task once - not fun, upgrading mysql 3.2 -> 4.1 with utf-8, quite big, many databases. I tried everything that was suggested on the mysql docs….nothing worked properly.

    Eventually I created an empty shell replica of each of the databases, setting all the tables up - empty - but instead of latin1 - I changed it to utf-8 (I think I also calculated the length of each table was going to grow with the char set change and made the tables long enough to cope).

    We were running coldfusion at the time, but this should work with any J2EE server, connected up mysql 3.2 to one connection, and mysql 4.1 to the other, and my boss wrote a bit of code to dump one DB into the other. Pretty soon we copied all the tables, and in turn each of the databases relatively quickly,

MySQL und die Zeichensätze :: Exanto, May 7th, 2007 at 3:39 am:

  • […] diesem Thema hat Orthogonal Thought eine kleine Hilfe veröffentlicht, die hoffentlich dem ein oder anderen Zeichensatz-geplagten Admin einige […]

Jolyon Ralph, May 7th, 2007 at 4:01 am:

  • I have hit this problem many times, and have used variants of the solutions listed at times. But I have found by far the easiest way to migrate a mysql database is simply to stop the database server on the source, archive up the entire database folder from the mysql data folder, copy that to the new server, unarchive, restart mysql and do a CHECK TABLES (and REPAIR TABLES if necessary). Sometimes indexes need to be rebuilt - but in general if things were shut down cleanly to begin with it won't result in any problems.

    I've only tried this with MyISAM tables - it's up to you to make sure this is safe with InnoDB, and obviously migrating to an older version of MySQL is probably not going to work for you using this route.


vanto, May 7th, 2007 at 4:18 am:

  • I solved it like this if i remember it right
    mysqldump –default-character-set=latin1 –compat=mysql40 db > dump.sql
    mysql –default-character-set=cp1250 newdb

vanto, May 7th, 2007 at 4:25 am:

  • Looks like this wordpress does not handle &lt very well, it cut off my previous post, there was &lt dump.sql at the end of 2nd line.

    That latin1 can be binary, it's there so mysql does not try to do any conversion of the data in db. cp1250 is the real charset of data you had in the db so mysql does not use the new default which is utf8 in my case.

Jürgen Hauser, May 7th, 2007 at 5:04 am:

  • Alternatively, you can use Navicat, which will handle all those issues for you ;)

Clayton Smith, May 7th, 2007 at 6:04 am:

  • One problem I experienced recently was that the kernel wasn't compiled with UTF8 support… so, if your MySQL tables/columns are UTF8 and you see question marks or your data is truncated by certain characters then check your kernel config.

MySQL Database Migration and Special Characters | position: absolute, May 7th, 2007 at 6:46 am:

  • […] heads in acknowledgment right now. Well then, it's your lucky day: Michael Chu has written an article explaining why that happens, what you can do to fix it, and how you can prevent it in the future. […]

AJS, May 7th, 2007 at 6:55 am:

  • Or, you could just modify your application to reject anything that isn't plain old 7-bit ASCII …..

    In my experience, you can copy the .MYD and .MYI files to another server even if it's running a different MySQL version. You probably can copy the .frm file too, but it didn't work when I tried it — I most probably got the directory structure or the permissions wrong. So we shall get MySQL to generate the directory and .frm file for us. First, do a mysqldump with -d to get just the table structure, no data. Then run that on the new host to create the database and table with no data in. Stop the mysql daemon (/etc/init.d/mysql stop) on the old machine (not required if you know for sure that the database won't be altered in the meantime) and copy the .MYD and .MYI files somewhere safe. Restart the mysql daemon (/etc/init.d/mysql start). Stop the mysql daemon on the new machine before copying over the .MYD and .MYI files. Then restart it, and let the automatic integrity check deal with everything.

    BTW, if you can't get a shell on a machine, do this. Create a file in your cgi-bin directory with the first few lines as follows:

    echo -e "Content-type: text/plain\n"

    shell commands
    more shell commands

    Make it executable and call it up in your browser. The first line says "The correct program to interpret this script is the unix shell". The second line sets the MIME type to be text/plain and throws a blank line to mark the end of the headers. Put any shell commands you like after that. env may be useful. Note that unless your hosting company has enabled suexec, chances are your scripts will be running as some unprivileged user e.g. www-data or apache and not you. Remove the script immediately it has served its purpose (or disable it by making it non-executable).

jDavid.net “@” gmail.com, May 7th, 2007 at 8:43 am:

  • […] complex operations that effect our throughput speed on processing iCals, and this was one of them. The special character bug which might have to do with MySQL acting as Google Calendar's backend, this article might offer a clue as to that problem and others that we might be able to […]

Alexandre Racine, May 7th, 2007 at 9:21 am:

Davide Salerno, May 7th, 2007 at 1:45 pm:

  • Migrazione di un database MySQL e caratteri speciali

    Chi si è cimentato qualche volta nella migrazione di un database MySQL da un macchina ad un'altra si sarà spesso imbattuto in qualche problema con i caratteri speciali. Il problema si manifesta quasi sistematicamente all'interno del testo…

Backups de mySQL y acentos | Jompeich d'er Bisente, May 7th, 2007 at 9:40 pm:

  • […] Slashdot hay una historia sobre migraciones de mySQL y cómo mantener los caracteres especiales como acentos, eñes, etc. A todos nos ha pasado alguna vez tener que restaurar una BD desde un […]

Saumendra Swain, May 7th, 2007 at 9:52 pm:

  • As Vento Said, I too had solved it with the following :

    mysqldump –default-character-set=latin1 –compat=mysql40 db > dump.sql
    mysql –default-character-set=cp1250 newdb

    Anyway Thans for such a good article.

Exportar una base de datos Mysql sin simbolitos raros | La brujula verde, May 8th, 2007 at 4:29 am:

  • […] Todos los detalles en Mysql database migration and special characters […]

John, May 8th, 2007 at 7:17 am:

  • Sheesh, set your database to UTF-8.

Michael Chu, May 8th, 2007 at 9:53 am:

  • Right, but you'll have to set your database to UTF-8 BEFORE you put data into it. If you started on a version of mysql which doesn't support UTF-8 or didn't know any better three years ago, then setting it to UTF-8 now won't work properly. You'll need to use technique one to avoid latin1 to UTF-8 conversion of data you already have in UTF-8.

Skylog » Blog Archive » links for 2007-05-09, May 8th, 2007 at 11:20 pm:

  • […] Mysql database migration and special characters (tags: mysql) […]

links for 2007-05-11 at Wired Gecko, May 10th, 2007 at 10:26 pm:

  • […] Mysql database migration and special characters | Orthogonal Thought The funny special characters drive me a little nutty (tags: mysql database encoding migration howto tutorial hack export webdev) […]

Pythian Group Blog » Log Buffer #44: a Carnival of the Vanities for DBAs, May 11th, 2007 at 9:54 am:

  • […] is the much-read (thanks in part to good old Slashdot) piece on Orthogonal Thought dealing with MySQL database migration and special characters. "…(The) problem arises from the fact that mysqldump uses utf8 for character encoding […]

BaroqueW, May 13th, 2007 at 11:26 am:

  • Nice article, I wish I had this article in hand when migrating my SQL databases… nevermind, i will keep it in hand for the next occasion!
    Thanks, keep up the good work!

Chris' Blog, May 17th, 2007 at 4:54 am:

  • Converting MySQL data to UTF-8

    I decided to convert my blog to use UTF-8 rather than Latin-1 as its character set, this turned out to be somewhat of a PITA. After changing all the table and database character sets manually I had to convert the data. Eventually settling for this litt…

MySQL encoding « François Schiettecatte’s Blog, May 18th, 2007 at 10:56 am:

  • […] I have run into the MySQL encoding issue detailed in this post, basically a transcoding issue when going from latin-1 to […]

Vikram, June 20th, 2007 at 2:48 am:

  • Thanks a ton! This saved me many hours!

Adam, June 22nd, 2007 at 9:18 am:

  • Thank you!

Delicious links at Daydreamer-Stargazer, July 6th, 2007 at 8:22 pm:

  • […] Mysql database migration and special characters | Orthogonal Thought - utf8 […]

Kathi, July 13th, 2007 at 11:13 am:

  • I am converting an exising database (MySql 5.0.1) from latin1 to utf8. Have you ever encountered a problem when dumping the data back where the index was too long? The error I get is:
    ERROR 1071 (42000) at line 77: Specified key was too long; max key length is 999 bytes
    If so, any suggestions? I even tried setting that particular column to latin1, but the syntax (which I followed from the MySql site) fails. I understand it is an issue with MySql utf8 indexes needing to be

Michael Chu, July 15th, 2007 at 11:54 pm:

Gary, August 5th, 2007 at 11:40 am:

  • Thank you for the solution - worked great!

Technik, Gothic und Anderes » Blog Archive » Unicode-Hölle: PHP, Apache, Mysql und Symfony in UTF-8, August 7th, 2007 at 2:00 pm:

  • […] ähnliches, hässliches Problem bei der Datenbankmigration wird bei Orthogonal Thought beschrieben. Teile und geniesse: Diese Icons verzweigen auf soziale Netzwerke bei denen Nutzer […]

James, August 13th, 2007 at 2:55 pm:

  • Thank you! The ALTER TABLE solution worked perfectly for my problem with Wordpress. Saved a lot of time. I love you.

jdfh, August 14th, 2007 at 3:09 pm:

  • Big thanx to webmaster!e

Adrian, August 31st, 2007 at 4:09 am:

  • I tried the ALTER solution, it works fine until I am converting back from VARBINARY to VARCHAR… after changing the column back to VARCHAR, I am getting question marks instead of the special chars…

Michael Chu, August 31st, 2007 at 10:46 am:

  • Adrian,

    That's a problem that can arise - which is why I recommended testing the methods out first. Looks like you'll have to use one of the other techniques to convert the data.

links for 2007-10-18 « Caiwangqin’s delicious bog, October 18th, 2007 at 4:22 pm:

  • […] Mysql database migration and special characters | Orthogonal Thought mysqldump -u mysql_username -p –default-character-set=latin1 example_db > example_db.mysql (tags: mysql migration charset) […]

Nadeem, October 19th, 2007 at 12:43 am:

  • Thats great
    It solved my problem…( I used the first method )
    Earlier i have been manually finding the special characters and removing them.

Adrian, October 19th, 2007 at 6:24 am:

  • Another interesting way to fix this is to do this:

    2. choose mySQL db type, source and destination databases;
    3. when it shows the screen to choose "Object mapping" leave migration method to mySQL Default, paramter LATIN 1 for the source and Data consistency for the destination;
    4. on the "Object creation options" uncheck "Creates objects online" and check "Create script file for create statements" - then choose a location on your disk to save it;
    5. on the "Standard options - Bulk transfer settings" do the same;
    6. then open with NOTEPAD both script file and run it using a mySQL GUI using copy + paste - I use SQLyog; note - don't open with notepad in VIEW MODE (F3 in total commander) cause it will not work; open for edit with NOTEPAD.
    7. it will work just fine, at least for me works fine.

    I don't know what will happen when my database will grow too much… I am not sure how the copy paste function will work then :)

Jack, October 25th, 2007 at 12:20 pm:

  • Your post saved us a lot of work. I probably would have discovered the same thing after…after about 3 days of hair pulling. :)

    Just to add my $.02 cents to your $3000 solution, where you say:
    "Now open the dump file (example_db.mysql in this example) and edit it. There will be a line that reads like:
    /*!40101 SET NAMES latin1 */;
    Change latin1 to utf8:
    /*!40101 SET NAMES utf8 */;"

    If you have a simple backup from file from phpMyAdmin, simply enter:
    SET NAMES utf8;
    prior to the first table definition. SET NAMES is a standard SQL directive.

    Thanks for sharing your nightmare. I'm sure it has translated in many more nights of sleep for more people than you will ever know.

Waldo Jaquith, November 16th, 2007 at 8:46 pm:

  • This was enormously helpful. Thank you for providing this guide.

the rasx() context » Blog Archive » Today’s Development of the Server Side, November 21st, 2007 at 11:24 am:

  • […] The article tries to tackle a subject that I still have yet to master. There are so many variables of configuration the factorial combinations distract me… […]

El blog de Neurotic » Blog Archive » Configuración de Apache para utilizar Drupal en multisite., November 23rd, 2007 at 2:37 am:

  • […] Ojo: Si tenéis problemas con la codificación de caracteres al exportar-importar (maldito latin1), echadle un vistazo a esta página. […]

Idetrorce, December 15th, 2007 at 4:15 am:

  • very interesting, but I don't agree with you

Michael Chu, December 17th, 2007 at 6:11 pm:

  • Idetrorce,

    Not sure what you are disagreeing with… at first I thought you were a spammer, but you didn't put a link in or anything…


Tim, December 18th, 2007 at 3:40 pm:

  • Thanks bro! Real good work!t

alex, December 28th, 2007 at 12:03 pm:

  • wow nice!l

El blog de Neurotic » Blog Archive » Codificación de caracteres en MySQL, January 10th, 2008 at 2:23 am:

  • […] en la propia instalación, en una base de datos… hasta en una columna de una tabla. En esta entrada del blog Orthogonal Thought hay un estupendo análisis de la codificación de caracteres orientada […]

JT, January 14th, 2008 at 9:03 am:

  • Thanks for taking the time to write this. I was pulling my hair out with the same problem and your solution (#2) worked perfectly.

ricko, January 15th, 2008 at 3:56 am:

  • This+is+a+great+tutorial+thanks%21r

BaroqueW and his sidekick nikkitaa » Hébergeurs et migrations - 1&1, Hosteur et MavenHosting, February 20th, 2008 at 8:46 am:

  • […] apparaissent (accents étranges, caractères fantômes etc.). Pour éviter ça, lisez cet article (en anglais). Tags: galerie, hébergeur, SPIP, […]

Cazare Brasov, March 25th, 2008 at 1:43 pm:

  • I have a similar problem with a my MySQL server. Whenever I create a field withouth specifing the tipe it automaticly sets to latin1_swedish_ci

    Is there any way I can set the default?

Amy, April 19th, 2008 at 5:24 pm:

  • Thank you so much, your solution (#1) helped me immensely.

Alfonso, April 21st, 2008 at 2:16 pm:

  • ditto here… changed to utf8 column solved the data problem

Denis, May 20th, 2008 at 12:56 pm:

  • I found this to be fairly reliable (on linux):
    mysqldump –default-character-set=utf8 (tables) > table.sql
    iconv -f ISO-8859-1 -t UTF-8 table.sql -o iso_dump.sql
    mv -f iso_dump.sql table.sql

    then you simply mysql < table.sql

Scott A., August 26th, 2008 at 2:24 pm:

  • Huge thanks for this post a year later. And to think, I was just getting ready to break out the regexes!

Naveed Ahmad, November 7th, 2008 at 5:40 am:

  • thank mic, you helped me solve my problem


Risolvere i problemi di codifica del database di WordPress » Archivi Blog » WordPress Italy, November 27th, 2008 at 6:11 am:

  • […] agire diversamente. Le soluzioni sono diverse: qualcuno consiglia di modificare direttamente il file esportato dal database e di reimportarlo tramite shell, qualcun altro come il sottoscritto ha risolto scegliendo in […]

Ultimate solution to weird UTF character encoding problem | This Is The Maverick Of Blogs, December 17th, 2008 at 2:35 pm:

  • […] There are several ready solutions to this problem like modifying the character set before and after the database restore as described in this article. […]

eins78, December 20th, 2008 at 8:39 am:

  • this solution did not work for me, but pointed me in the rigth direction:
    the import function in mysql allows you to choose which encoding should be used to interpret the import dump. i just choosed "latin1" and everything worked fine.


Dave’s Whiteboard » Blog Archive » mySQL: what a character, December 30th, 2008 at 4:42 am:

  • […] that's easy for Michael Chu to […]

Leonardo Fontenelle, February 8th, 2009 at 5:43 am:

  • Thanks, you just saved me!

gfdgdsf, February 8th, 2009 at 1:41 pm:


Fixing mixed-encoding MySQL dumpfiles with WordPress, May 26th, 2009 at 8:07 pm:

  • […] Mysql database migration and special characters — Orthogonal Thought […]

SecondoMe, July 5th, 2009 at 8:40 am:

  • Thank you!
    Your procedure was very useful and efective!

J vincent, August 19th, 2009 at 2:51 am:

  • I use data loader for migrating almost any data, it helps me to convert MSSQL to MYSQL, MS access to MSSQL, mysql, csv loader, foxpro and MSSQL to MS access, MYSQl, CSV, foxpro etc. In my view this is a best Data Migration Tool

Jeans3167, August 28th, 2009 at 2:34 am:

  • Here is a tool to convert mssql to MYSQL database. That i found on google search it says it can convert almost any database try and tel me is that worth or not.

    Download Free : http://www.convert-db.com/mssql-to-mysql.htm

Miguel, September 6th, 2009 at 1:28 pm:

  • Brilliant!!!

How to prevent weird characters after MySQL export and import | labs.leftcolumn.net, September 25th, 2009 at 7:52 pm:

rouademunte, October 18th, 2009 at 10:56 am:

mysql, soluzione per la migrazione | Nerd - Matteo Cisilino, November 6th, 2009 at 6:28 am:

  • […] qua e la ho trovato in questo sito un'ottima spiegazione sul come migrare applicazioni a MySQL preservando i caratteri speciali, […]

Da latin1_swedish_ci in utf8, November 13th, 2009 at 12:41 pm:

  • […] Mysql database migration and special characters […]

Shumaker212, December 11th, 2009 at 6:05 am:

  • Nice Tool to Migrate database called dbload its a simple tool and still powerful to migrate any database with ease.

    Find Here : http://www.dbload.com

wanghongli, January 11th, 2010 at 6:23 pm:

  • Nice Tool to Migrate database called dbload its a simple tool and still powerful to migrate any database with ease.

Prashant, January 14th, 2010 at 11:39 pm:

  • How would this work on a new blog where there is no import of data? Is it possible to change the character encoding from within wordpress and not have to edit mysql now that we are working on the latest 2.9.1

Ricardo España, March 19th, 2010 at 6:22 am:

  • Great article man, very complete.

Chris, April 8th, 2010 at 7:58 am:

  • Following the very clear steps for converting at the column level proved successful. Thanks so much for the concise article.


Wordpress Host Migration Weird Character problem [Solved], July 13th, 2010 at 3:46 pm:

  • […] So I started looking for problem and realize that the issue is with database character encoding. You can find more information about this character encoding here. […]

MySQL Migration from Windows to Linux Character issue.. | jieme, August 7th, 2010 at 4:01 pm:

Marian, October 31st, 2010 at 3:30 pm:

  • we have the same problems, tried all possible methods but still it drops the text after some special characters…

Pinyo, November 2nd, 2010 at 7:34 am:

  • Awesome information. You just saved us a lot of work. Thank you.

Olivier, June 28th, 2011 at 6:14 am:

  • Thanks a lot, it helped !

Rico, July 5th, 2011 at 6:55 am:

  • Thank you SO MUCH for this!

    It saves me lots of time, over and over again.

How to configure your web application to correctly deal with character set/encoding issues- Jeremy Tunnell, July 17th, 2011 at 7:47 pm:

  • […] Fixing MYSQL charset issues on existing data. Share/Bookmark […]

Dan Eskildsen, August 29th, 2011 at 1:35 am:

  • Thank you for this post. It helped! I just set my database to utf instead of Latin 1, imported the data and that solved the problem!

Jesse, September 19th, 2011 at 11:35 pm:

  • Another thankful reader, this saved my bacon, thanks!

Anonymous, September 30th, 2011 at 5:14 pm:

  • 1000 thank you

Peter Jukes, November 7th, 2011 at 5:57 pm:

  • Wow. You've just saved my bacon. I went through 24 hours of agony thinking I'd lost large chunks of my website, because the special characters were truncating the import.

    But I selected latin1 instead of utf for import, and all my work is still there.

    Now, I still have my work, albeit with some strange characters. But that's better than nothing. Cheers.

Tim, February 17th, 2012 at 9:13 pm:

  • Beautiful, thanks for this post. It's the only one that's worked for me flawlessly.

Hanan Ali, June 20th, 2012 at 1:57 pm:

  • Thanks for sharing such amazing guidance :)

    If you need to import sql dump add this line at the top of the file

    SET NAMES utf8;

    it will not disturb the special characters.

Niles ife, April 14th, 2013 at 10:09 am:

  • |

the High Quality You Want Can Come Ture, March 19th, 2015 at 12:19 pm:

  • Hey there! I could have sworn I've been to this blog before but after checking through some of the post I realized it's new to me. Anyways, I'm definitely delighted I found it and I'll be bookmarking and checking back often!

Ifah, March 19th, 2015 at 2:18 pm:

  • Interactions Between Soma And Adderall Taking Xanax And Adderall Mental . Generic Adderall Online Valium Adderall Disount Generic Adderall Can You Take Xanax And Adderall Percocet Birth Defects Adderall And Xanax Lorazepam And Adderall Combination . Strattera And Adderall Recording Wellbutrin And Adderall Xanax As A Street Drug Adderall order adderall fedex delivery. Mix Adderall Prozac Anxiety And Depression Strattera Adderall Xr Hair Loss From Adderall adderall for rapid weight loss .

the High Quality You Want Can Come Ture, March 19th, 2015 at 4:21 pm:

  • Hi! I could have sworn I've been to this site before but after browsing through some of the post I realized it's new to me. Nonetheless, I'm definitely glad I found it and I'll be bookmarking and checking back often!

Billiga Hogan Skor, March 20th, 2015 at 4:41 pm:

  • 最好玩的JJ斗地主,JJ…原因之二就是你所出的银子只有看牌对手…真钱扎金花游戏.

air jordan 21 pods, March 20th, 2015 at 4:43 pm:

Mysql import special chars probem | Solutions for enthusiast and professional programmers, March 26th, 2015 at 10:55 am:

  • […] with ?. I tried to add –default-character-set=utf8 to mysql/mysqldump command following this link but doesn't work. The version of mysql on linux is 5.5.35 and windows version is […]

ThomasPi, August 25th, 2015 at 1:58 pm:

Online kopen Adidas Sneakers Veelkleurig Adidas By Stella Mccartney Ultra Boost Vrouwen, September 29th, 2015 at 10:46 pm:

  • Hey terrific blog! Does running a blog such as this require a great deal of work? I've virtually no expertise in computer programming but I had been hoping to start my own blog soon. Anyhow, if you have any suggestions or tips for new blog owners please share. I understand this is off subject but I simply had to ask. Kudos!

Salomon Speedcross 3 CS, November 23rd, 2016 at 8:12 pm:

  • KKLA Sports Clothes Denver colorado., Incorporated ended up being founded inside Two thousand inside ZeJiang, China. Right now it's Twesalomon mene branch businesses around China. We're a worldwide middleman regarding Sports Clothes (Icehockey Shirt,Baseball Shirt,football Shirt,Football Shirt,Basketball Shirt). We is made up of style, build, develop, sale and service. Now we have more than 6 skilled factories for your own products. And there isn't any little order for you personally, Cheapest price and finest service. Let always be friends and business spouse. Don hesitate to contact here when you need at any time. There is a point while brand-new unemployment statements may quit simply because anyone could have already lost his or her work opportunities. With this reply, countless my coworkers have mislaid his or her work opportunities because of money grabbing best stage professionals and professionals. Much more will be laid off in the next thirty day period. A lot of within palce at work are generally fearing the complete center may failure in the next year. Precisely what is unfortunate is this fact business continues to be very successful. Yes, our business has already established good and the bad with all the economic climate, nevertheless we've often (and are) fairly lucrative. Execs obviously persist that individuals must scale back, merge and so on. of those difficult times. Well, the people who been employed in our center wont always be facing difficult times because it has been a great business. Right now most are going to have to gather being out of work simply because corporate and business nerds feel that billions of us dollars inside annual income is not enough.
    Salomon Speedcross 3 CS http://www.salomonline.com/

solomon apparel, November 24th, 2016 at 8:21 pm:

Salomon Speedcross 3 CS, March 26th, 2017 at 2:28 am:

Under Armour Curry Trainers Shoes, April 16th, 2017 at 1:00 pm:

Cheap iPhone 7, May 8th, 2017 at 7:18 pm:

  • To counter this, Qualcomm may request the International Trade Commission to stop current and upcoming models of the iPhones, which are built in China, from entering the U.S., according to a Bloomberg report.

salomon walking shoe, May 20th, 2017 at 8:27 am:

  • Order low cost. If you need insanely inexpensive walkfit shoe inserts, then you skill can be lookup the world wide web pertaining to wholesaler sites that sell walkfit shoe inserts as part of their company. Purchasing within quantity will certainly web anyone 30-50 per cent lower price based on the quantity, naturally. Multiply by 4 your lower price should you be getting the idea from a manufacturer within China. Normally, Oriental suppliers will certainly sell their particular products drastically cheaper if you purchase large quantities. The very thought of getting walkfit shoe inserts large quantities may be too on the market but it's still a possibility to get inexpensive walkfit shoe inserts.
    salomon walking shoe http://www.onrunfoot.com/sale-i5047-salomon-comet-premium-3d-gtx-mens-hiking-boots-grey-black-for-cheap.html

salomon ski shop, May 20th, 2017 at 8:32 am:

salomon forces, May 30th, 2017 at 1:52 am:

  • Three or more. Outfit wise: Ensure you outfit wise along with aproppriate method. Have a unique type, although not a ridulous. Attire wise throughout May well associated with ill fitting skinny jeans t shirts (sign, make sure you put on a tank top two control keys untied towards the top promoting apply for the chest muscles twice soon after waxing.) purses, that you just or perhaps gelled along with combed head of hair. But make sure you outfit for your persona and always a function associated with limited timeframe (Richard James, Antarctica TEC).
    salomon forces http://www.salomanhiking.com/discount-n1041-salomon-speedcross-3-cs-men-trail-running-shoes-white-blue-free-shipping.html

under armour custom shirts, June 8th, 2017 at 3:35 am:

  • Communicate Internet site. Needless to say, where otherwise can you get the unique and handle report on footwear styles however the official internet site of the maker? You can look at web-site's on the internet listing for what ever kind of footwear you would like. The web site gives you choices to search for athletic shoes, Nike jordan footwear, jogging sneakers, women footwear, gents footwear, kids footwear, and in many cases discount footwear. Also, there exists a feature over the internet where it is possible to customize your own Communicate footwear. You can create your desired type of footwear. Once you are completed, it is possible to click on the get switch. Doing this, you can have your own distinctive Communicate footwear design and style.
    under armour custom shirts http://www.forsalomon.com/shop-under-armour-curry-speedform-apollo-men-red-for-sale-cheap.html

temple de salomon, June 12th, 2017 at 9:33 am:

Vans Authentic Shoes, July 1st, 2017 at 1:11 pm:

Yeezy Ultra Boost, August 6th, 2017 at 5:32 am:

  • Conceiving transformed playing, and I wish to hear more concerning your very best or roughest pregnancy instances. responding, you'll be joined in order to acquire an exclusive Million Mums Problem Reward Load up, which includes a detailed bills compensated vacation t a convention about mothers organised from the Groundwork in Power (Jan/Feb This year), a good apple ipad 2, custommade Million Mums Problem necklace $50 gift with your brand in order to World-wide Giving. Contest and prize particulars right here.
    Yeezy Ultra Boost http://www.rosser-sav.com/yeezy-ultra-boost-light-gray.html

vans tnt, August 7th, 2017 at 9:01 pm:

  • Yet as with any good personal privacy paranoiac, Kilpatrick can certainly picture how a facetracking software program this individual sells can be used for much less benevolent uses. So for their Stir up New york city chat, this individual performed a number of studies to find what exactly types of covering tactics can easily wipe out a common facial identification algorithm generally known as Eigenfaces, assessment a good offtheshelf implementation of that algorithm in the program referred to as Neurotechnology.
    vans tnt http://www.ifindwholesalers.com/for-sale-cheap-vans-white-leyla-graffiti-x-slip-on-shoes-womens-classic-canvas.html

TerryDib, August 8th, 2017 at 1:09 pm:

  • Всем здравствуйте.
    Друзья предложите отличного человека для раскрутки сайта с небольшим бюджетом.
    Буду весьма признателен!

Ασφάλεια Αυτοκινήτου Online, August 9th, 2017 at 12:15 pm:

iridescent adidas, August 27th, 2017 at 11:03 pm:

adidas ad, August 27th, 2017 at 11:51 pm:

vans black, August 28th, 2017 at 3:06 pm:

Tubular, August 29th, 2017 at 12:07 pm:

UA Yeezy 350 Boost, August 29th, 2017 at 5:18 pm:

  • Should your inexpensive haversack are generally polarized, they use the polarizing filtration system that is both riveted or dispersed on top of the contact. The actual filtration system is certain to detachment, the begining, or delaminate. And the excellence of the polarization is going to be inadequate anyhow.
    UA Yeezy 350 Boost http://www.rosser-sav.com/7th-ua-yeezy-350-boost-v2-red-sply-350-black-red.html

UA NMD Sneakers, August 30th, 2017 at 12:44 am:

  • Instead of generating heat coming from paperwork they've got gathered youngsters could make all of them coming from items like footwear of chips wrappers. Fill up the particular bare wrapper along with restroom tissue, sponges or even collapsed paper. Slide outside wrappers back on and also remain the particular magnet piece towards the rear. In the event the wrapper is certainly one which needs to be torn open split the idea cautiously. Following the particular footwear of chips, load the particular wrapper using the padding, after that epoxy the particular wrapper back on. These kind of heat can be produced coming from tiny containers regarding candy, gum wrappers, peppermint storage containers and other items. A tiny magnetic sq . around the back 's all it will require to keep those to the particular fridge and other steel regions.
    UA NMD Sneakers http://www.rosser-sav.com/ua-nmd-ri-black-grey-white.html

chaussure adidas pas cher chine, September 2nd, 2017 at 7:20 am:

  • The Spanish midfielder has endured a stop-start season under Antonio Conte but has continued to deliver the goods when called upon.

nike air flight noir et rose, September 12th, 2017 at 8:51 am:

  • the coming months, with the juicy detail that Tinker Hatfield himself designed the shoe providing plenty of excitement around the eleventh Nike Kobe shoe.

IvanImb, September 13th, 2017 at 1:01 pm:

lasertest, September 13th, 2017 at 5:09 pm:

  • I have been surfing online more than three hours nowadays, yet I by
    no means discovered any fascinating article like yours.
    It's lovely worth enough for me. In my view, if all webmasters and bloggers made excellent content material as
    you probably did, the internet will probably be a lot more helpful than ever before.

free email send, September 17th, 2017 at 8:05 am:

  • I'm not sure exactly why but this web site is loading extremely slow for me.
    Is anyone else having this problem or is it a issue on my end?
    I'll check back later on and see if the problem still exists.

VPN without IP leak, September 18th, 2017 at 3:25 pm:

  • I've been surfing online more than 2 hours today,
    yet I never found any interesting article like yours.
    It's pretty worth enough for me. In my opinion, if all website owners and bloggers made good content as you
    did, the internet will be much more useful than ever before.

Xuong sao truong sa, September 19th, 2017 at 4:49 am:

  • I have read so many articles on the topic of the blogger lovers
    but this post is genuinely a pleasant post, keep it up.

LeikaRop, September 22nd, 2017 at 9:24 am:

  • Our team is a unique producer of quality fake documents.
    We offer only original high-quality fake passports, driver's licenses, ID cards, stamps and other products for a number of countries like:
    USA, Australia, Belgium, Brazil, Canada, Italy, Finland, France, Germany, Netherlands, Spain, United Kingdom. This list is not full.

    To get the additional information and place the order just visit our website:

    http://www.salepassportsfake.cc http://www. salepassportsfake.cc

    >> Contact e-mails:

    General support: [email protected]

    Technical support: [email protected]


    obtain fake passports,
    obtain false passports,
    obtain novelty passports,
    obtain fake driver license,
    obtain false driver license,
    obtain novelty driver license,
    obtain Diplomatic passports,
    purchase fake passports,
    purchase false passports,
    purchase novelty passports,
    purchase fake driver license,
    purchase false driver license,
    purchase novelty driver license,
    purchase Diplomatic passports,
    sell fake passports,
    sell false passports,
    sell novelty passports,
    sell fake driver license,
    sell false driver license,
    sell novelty driver license,
    get fake passports,
    get false passports,
    get novelty passports,
    get fake driving license,
    get false driving license,
    get novelty driver license,
    get Diplomatic passports

Your comment: