You're on your way to the next level! Join the Kudos program to earn points and save your progress.
Level 1: Seed
25 / 150 points
1 badge earned
Challenges come and go, but your rewards stay with you. Do more to earn more!
What goes around comes around! Share the love by gifting kudos to your peers.
Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!
Join now to unlock these features and more
I have just updated confluence server from 7.13.1 to 8.0.0.
At startup, Confluence first reported an error, saying that database tables should have utf8mb4 character set and utf8mb4_bin collation. (Unfortunately I did not write down the exact message and logs are purged).
I verified, server hat the correct character set but my database unfortunately not. So I followed the steps in the following document to fix this:
I verified the database again with the SQL statements given in above document, as far as I can see, I have character set utf8mb4 and collation utf8mb4_bin everywhere in the MySQL confluence database now.
Sill, on startup I get the error:
Detected tables with non-default character encoding. See https://confluence.atlassian.com/x/TABrFw
Unfortunately the log file does not provide more information:
2022-12-03 11:21:19,634 ERROR [Catalina-utility-1] [atlassian.confluence.setup.BootstrapApplicationStartupListener] checkConfigurationOnStartup Detected tables with non-default character encoding. See https://confluence.atlassian.com/x/TABrFw
I am pretty lost now - was utf8mb4 wrong? How to proceed?
At the end, the solution was easy:
I had created a file with all the ALTER TABLE statements as recommended, and executed them as a batch of commands. Though, for an unknown reason, two of the ALTER TABLE statements seem to have failed - at least I got two columns as result when I checked again with
mysql> SELECT CONCAT('ALTER TABLE `', table_name, '` MODIFY `', column_name, '` ', DATA_TYPE, ' CHARACTER SET utf8mb4 COLLATE utf8mb4_bin', (CASE WHEN IS_NULLABLE = 'NO' THEN ' NOT NULL' ELSE '' END), ';')
-> FROM information_schema.COLUMNS
-> WHERE TABLE_SCHEMA = 'mauspedia'
-> AND DATA_TYPE != 'varchar'
-> CHARACTER_SET_NAME != 'utf8mb4'
-> COLLATION_NAME != 'utf8mb4_bin'
I executed the two returned ALTER TABLE statements again, then Confluence started without this error!
yes, Confluence told me the same when I finally managed to start again and logged in as admin :-)
I had upgraded MySQL to version 8 already, when I found the not executed ALTER TABLE statements described above. So Murphy's law hit twice that day - but at least I have a running system with an up-to-date database now!
Hi @Alex Koxaras _Relational_ , thanks for looking into this - I am afraid but 5.7.40 is the latest release of MySQL 5.7, which was published 2022-10-11. Still, maybe I should take this opportunity to try and upgrade MySQL to version 8.0, since version 5.7. will become EOL end of 2023 so or so.
I will have to test first, which problems this will raise, though.