我有一个Spring Web应用程序通过hibernate与mySQL数据库通信。我正在尝试将utf8mb4设置为数据库字符编码。我执行了以下步骤:
使用
设置我的数据库SET NAMES utf8mb4;
ALTER DATABASE mydb CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;
将休眠网址更改为
hibernate.connection.url = jdbc:mysql://localhost:myport/mydb?character_set_server=utf8mb4
SET NAMES 'utf8mb4'
到数据库连接初始SQL
character_set_server=utf8mb4
醇>
我设法让我的应用程序正常使用本地数据库。我还发现,第2步不是必需的,如果没有第4步,我的设置就无法在本地运行。
但是在Openshift中我还没有找到执行步骤4的方法。这个问题还有其他解决办法吗?我试图通过phpMyAdmin变量更改character_set_server
,但这也不起作用。
答案 0 :(得分:0)
还有另一个MySQL盒式磁带可以配置为使用utf8mb4。只需备份数据库中的数据即可。删除你的MySQL盒并添加这个:
https://github.com/amgohan/openshift-origin-cartridge-mysql-utf8mb4
最后将备份恢复到新数据库中。