Configuring UTF8 Character Set for MySQL

Search
Searching TeamCity 4.x Documentation
Table of Contents

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

Labels