mysql - Openshift mySQL字符集服务器utf8mb4

标签 mysql spring hibernate openshift utf8mb4

我有一个 Spring Web 应用程序通过 hibernate 与 mySQL 数据库通信。我正在尝试将 utf8mb4 设置为数据库字符编码。我已执行以下步骤:

  1. 使用设置我的数据库

    SET NAMES utf8mb4; 
    ALTER DATABASE mydb CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;
    
  2. 将 hibernate URL 更改为

     hibernate.connection.url = jdbc:mysql://localhost:myport/mydb?character_set_server=utf8mb4
    
  3. SET NAMES 'utf8mb4' 添加到我的 Spring 应用程序配置上的数据库连接初始 SQL
  4. 在 my.cnf 中添加了 character_set_server=utf8mb4

我设法让我的应用程序与本地数据库正常工作。我还发现步骤 2 不是必需的,如果没有步骤 4,我的设置就无法在本地工作。 然而在 Openshift 中我还没有找到执行步骤 4 的方法。这个问题还有其他解决方案吗?我尝试通过 phpMyAdmin 变量更改 character_set_server,但这也不起作用。

最佳答案

还有另一个 MySQL 卡带可以配置为使用 utf8mb4。只需备份数据库中的数据即可。删除您的 MySQL 盒并添加此盒:

https://github.com/amgohan/openshift-origin-cartridge-mysql-utf8mb4

最后将备份恢复到新数据库中。

关于mysql - Openshift mySQL字符集服务器utf8mb4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40577470/

相关文章:

javascript - 使用 PHP 在 Highcharts 中导入数据

mysql - 无法启动和连接到 MySQL 服务器

java - Hibernate、oauth2无法获得事务同步

java - 在 Hibernate 中检索特定字段的值

java - 无法加载类 persistentBag

php - 您的 SQL 语法有错误;检查与您的 MariaDB 服务器相对应的手册, '' 文章的 WHERE (`title` LI

具有故障转移功能的 Mysql 连接池

java - 使用spring boot配置SOAP服务出错

java - 为什么 spring boot angularjs gateway 应用程序不能从 ui 应用程序读取?

hibernate - Spring引导和Spring数据: how are Hibernate Sessions managed?