Link to home
Start Free TrialLog in
Avatar of smetterd
smetterdFlag for United States of America

asked on

How to convert a mysql database to utf-8

I have a dump file of my Moodle 1.8 instance. The instance was on a server that is now physically dead. I am trying to move it to a Moodle 1.9 server, but when I attempt to upgrade, I get a message stating that all my tables have to be in UTF-8 before proceeding. How can I convert the entire dump file to UTF-8?
Avatar of dsmile
dsmile
Flag of Viet Nam image

If you mean you have to convert that dump file to UTF-8 encoding to use with Moodle upgrading process, then it means you need to convert a text file to UTF-8 encoding. If that's really the case, then use some UTF-8 supporting text editor like EmEditor or Edit Plus (both are available in trial version) to open that dump file and save it as UTF-8 encoding.

If your case is that you import that dump file to a new DB, but it isn't UTF-8 encoding yet, then you can import again with this command

mysql -h host -u username -p password --default_character_set utf8 database < your_dump_file
The most comfortable way would be to setup mySQL with UTF-8 as global default and restore your dump then. Make sure first that there are no commands in your dump file to create your tables in another codepage.
ASKER CERTIFIED SOLUTION
Avatar of Marco Gasi
Marco Gasi
Flag of Spain image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of smetterd

ASKER

Is this allowable?

ALTER DATABASE database1
DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci;
ALTER DATABASE harlinge_drcmdl
DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci;


Worked perfectly! Thank you!