TeamCity 4.0 Help

Configuring UTF8 Character Set for MySQL

To create a MySQL database which uses the utf8 character set:

  1. Create a new database:

    CREATE DATABASE <database name> DEFAULT CHARACTER SET utf8
  2. Open <TeamCity data directory> /config/database.properties, and add the characterEncoding property: connectionProperties.characterEncoding=UTF-8

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

  1. Shut the 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. Remove DEFAULT CHARSET=<some charset> from the table and column definitions.

  5. Create a new database with uft8 as the default character set:

    CREATE DATABASE <new database name> DEFAULT CHARACTER SET utf8;
  6. Import dump_schema.sql 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
Last modified: 20 April 2023