TeamCity
 
You are viewing the documentation for an earlier version of TeamCity.

Configuring UTF8 Character Set for MySQL

Last modified: 20 April 2023

Configuring UTF8 Character Set for MySQL 



To create MySQL database with utf8 character set:

  1. Create a new database: {{CREATE DATABASE <database name> DEFAULT CHARACTER SET utf8 {}}}

  2. Open <TeamCity Data Directory> /config/database.properties file, and add characterEncoding property: {{connectionProperties.characterEncoding=UTF-8 {}}}

To change character set of an existing MySQL database to utf8:

  1. Shut TeamCity server down.

  2. Dump the database data to the file dump_data.sql: {{mysqldump -t -u<user> -p<pass> <database>>dump_data.sql; {}}}

  3. Dump the database schema to the file dump_schema.sql: {{mysqldump -d -u<user> -p<pass> <database>>dump_schema.sql {}}}

  4. Edit dump_schema.sql file. Remove DEFAULT CHARSET=<some charset> from the table and column definitions.

  5. Create new database with the default charset utf8: {{CREATE DATABASE <new database name> DEFAULT CHARACTER SET utf8; {}}}

  6. Import dump_schema.sql file into the new database: {{mysql -u<user> -p<pass> <new database name> <dump_schema.sql {}}}

  7. Import dump_data.sql into the new database: {{mysql -u<user> -p<pass> <new database name> <dump_data.sql {}}}

  8. Modify <TeamCity Data Directory>/config/database.properties file as follows:

    • change connectionUrl property to:{{jdbc:mysql://<host>/<new database name> {}}}

    • add characterEncoding property:{{connectionProperties.characterEncoding=UTF-8 {}}}