milton4code opened a new issue, #2051: URL: https://github.com/apache/hertzbeat/issues/2051
### Is there an existing issue for this? - [X] I have searched the existing issues ### Current Behavior 当部署hertzbeat时,测试切换数据源为mysql时,按照官网创建数据库,启动后会报错 使用 ` create database hertzbeat default charset utf8mb4 collate utf8mb4_general_ci; `  ### Expected Behavior 报错信息为 java.sql.SQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes  ### Steps To Reproduce _No response_ ### Environment ```markdown HertzBeat version(1.5.0): ``` ### Debug logs 2024-05-30 17:27:22.052 [main] INFO org.springframework.boot.web.embedded.tomcat.TomcatWebServer Line:108 - Tomcat initialized with port(s): 1157 (http) 2024-05-30 17:27:22.062 [main] INFO org.apache.coyote.http11.Http11NioProtocol Line:173 - Initializing ProtocolHandler ["http-nio-1157"] 2024-05-30 17:27:22.062 [main] INFO org.apache.catalina.core.StandardService Line:173 - Starting service [Tomcat] 2024-05-30 17:27:22.063 [main] INFO org.apache.catalina.core.StandardEngine Line:173 - Starting Servlet engine: [Apache Tomcat/9.0.65] 2024-05-30 17:27:22.134 [main] INFO org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/] Line:173 - Initializing Spring embedded WebApplicationContext 2024-05-30 17:27:22.135 [main] INFO org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext Line:292 - Root WebApplicationContext: initialization completed in 2690 ms 2024-05-30 17:27:22.216 [main] INFO com.usthe.sureness.configuration.SurenessAutoConfiguration Line:170 - [sureness-starter] - SurenessSubjectFactory init success 2024-05-30 17:27:22.441 [main] INFO com.usthe.sureness.configuration.SurenessFilter Line:50 - servlet surenessFilter initialized 2024-05-30 17:27:22.517 [main] INFO org.hibernate.jpa.internal.util.LogHelper Line:31 - HHH000204: Processing PersistenceUnitInfo [name: default] 2024-05-30 17:27:22.570 [main] INFO org.hibernate.Version Line:44 - HHH000412: Hibernate ORM core version 5.6.11.Final 2024-05-30 17:27:22.734 [main] INFO org.hibernate.annotations.common.Version Line:56 - HCANN000001: Hibernate Commons Annotations {5.1.2.Final} 2024-05-30 17:27:22.841 [main] INFO com.zaxxer.hikari.HikariDataSource Line:110 - HikariPool-1 - Starting... 2024-05-30 17:27:22.848 [main] INFO cc.blynk.clickhouse.ClickHouseDriver Line:36 - Driver registered 2024-05-30 17:27:23.184 [main] INFO com.zaxxer.hikari.HikariDataSource Line:123 - HikariPool-1 - Start completed. 2024-05-30 17:27:23.199 [main] INFO org.hibernate.dialect.Dialect Line:175 - HHH000400: Using dialect: org.hibernate.dialect.MySQL5InnoDBDialect 2024-05-30 17:27:24.509 [main] WARN org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl Line:27 - GenerationTarget encountered exception accepting command : Error executing DDL "create index index_collector_monitor o n hzb_collector_monitor_bind (collector, monitor_id)" via JDBC Statement org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "create index index_collector_monitor on hzb_collector_monitor_bind (collector, monitor_id)" via JDBC Statement at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67) at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.applySqlString(AbstractSchemaMigrator.java:581) at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.applySqlStrings(AbstractSchemaMigrator.java:526) at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.applyIndexes(AbstractSchemaMigrator.java:348) at org.hibernate.tool.schema.internal.GroupedSchemaMigratorImpl.performTablesMigration(GroupedSchemaMigratorImpl.java:88) at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.performMigration(AbstractSchemaMigrator.java:220) at org.hibernate.tool.schema.internal.AbstractSchemaMigrator.doMigration(AbstractSchemaMigrator.java:123) at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:196) at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:85) at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:335) at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:471) at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1498) at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58) at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365) at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409) at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396) at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295) at org.dromara.hertzbeat.manager.Manager.main(Manager.java:40) Caused by: java.sql.SQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) at com.mysql.cj.jdbc.StatementImpl.executeInternal(StatementImpl.java:763) at com.mysql.cj.jdbc.StatementImpl.execute(StatementImpl.java:648) at com.zaxxer.hikari.pool.ProxyStatement.execute(ProxyStatement.java:94) at com.zaxxer.hikari.pool.HikariProxyStatement.execute(HikariProxyStatement.java) at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54) ... 34 common frames omitted ### Anything else? 解决很容易 使用新的建库语句 ` CREATE DATABASE hertzbeat DEFAULT CHARSET utf8 COLLATE utf8mb4_general_ci; ` 或者修改数据库字符集 ` ALTER DATABASE hertzbeat CHARACTER SET utf8 COLLATE utf8_general_ci; ` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
