New DB install : character_set_server & collation_server

HI,
We are doing a fresh install of OJS3 on a new platform. Our MariaDB will be on a Galera Cluster. After setting up the DB and verified it specs we have found that character_set_server & collation_server are still in latin1. It seems that we cannot change these defaults values because they are inherited from the Galeria platform that was compiled in latin1. This is what we have:

 MariaDB []> show variables like "%collation%";
+----------------------+-------------------+
| Variable_name        | Value             |
+----------------------+-------------------+
| collation_connection | utf8_general_ci   |
| collation_database   | utf8_general_ci   |
| collation_server     | latin1_swedish_ci |
+----------------------+-------------------+
MariaDB []> show variables like "character_set%";
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

We will use a multilingual instance (fr_CA; en_US; es_ES). We are wandering if there could be any problems in OJS3 with letting these two variables in latin1. Maybe some problems in the DB or when exporting-importing users or dumpfile? Would the OAI-PMH be affected ? In some forms (text-entering) for the users or in the sending of emails?

Any thoughts on this ?
Thanks,

Pierre

Hi @pnault,

I’d strongly recommend setting everything up to run with UTF8. Depending on your specific case, you may be able to change everything over using e.g. ALTER TABLE statements; in other cases I’ve dumped the database to a file and then run the file through iconv (particularly when OJS was configured for UTF8 but the database was configured for Latin1, resulting in double-encodings). To reduce complexity, you might opt to perform the character set conversion on your OJS 2.x, then explore it a little to make sure content hasn’t been corrupted, and then upgrade to OJS 3.x.

Regards,
Alec Smecher
Public Knowledge Project Team

HI @asmecher,

This is a fresh install: no data is coming from OJS2.x. If we start with these parameters but character_set_server and collation_set_server stays at latin1 do you thing that there could be some problems with the data in the future ?
I found this:

https://dev.mysql.com/doc/refman/5.7/en/charset-server.html
But this apply for MySQL 5.7. We are running on MariaDB 10.0.28.

Thanks,

Pierre

Hi @pnault,

Ah, OK. I just checked my own server and it has the same two variables still set to Latin1 that yours does – so I think you’ll be fine.

Thanks,
Alec Smecher
Public Knowledge Project Team