Specified key was too long; max key length is 767 bytes [Failed SQL: CREATE INDEX

网友投稿 304 2022-09-27

Specified key was too long; max key length is 767 bytes [Failed SQL: CREATE INDEX

1、liquibase 异常:

.   ____          _            __ _ _

/\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \

( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \

\\/  ___)| |_)| | | | | || (_| |  ) ) ) )

'  |____| .__|_| |_|_| |_\__, | / / / /

=========|_|==============|___/=/_/_/_/

:: Spring Boot ::        (v2.0.3.RELEASE)

{com.gildata.threebody.tbm.dao.mapper.middleground.HwNewsInfoMapper.selectById} Has been loaded by XML or SqlProvider, ignoring the injection of the SQL.

2021-01-07 20:34:41.532|ERROR|main|64|liquibase                               :classpath:liquibase/*.xml: classpath:liquibase/*.xml::202012131200::malin: Change Set classpath:liquibase/*.xml::202012131200::malin failed.  Error: Specified key was too long; max key length is 767 bytes [Failed SQL: CREATE INDEX index_contantType ON npp.npp_rule_contant(contant_type)]

2021-01-07 20:34:44.334|ERROR|main|842|o.s.boot.SpringApplication              :Application run failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'liquibase' defined in file [E:\workcode\doubleCOde\three-body-audit\tbm-compose\tbm-dao\target\classes\spring\spring-mybatis.xml]: Invocation of init method failed; nested exception is liquibase.exception.MigrationFailedException: Migration failed for change set classpath:liquibase/*.xml::202012131200::malin:

Reason: liquibase.exception.DatabaseException: Specified key was too long; max key length is 767 bytes [Failed SQL: CREATE INDEX index_contantType ON npp.npp_rule_contant(contant_type)]

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1708)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:581)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:503)

at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317)

at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)

at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315)

at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)

at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:760)

at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:869)

at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550)

at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140)

at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)

at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:395)

at org.springframework.boot.SpringApplication.run(SpringApplication.java:327)

at com.gildata.threebody.tbm.starter.bootstrap.Application.main(Application.java:27)

Caused by: liquibase.exception.MigrationFailedException: Migration failed for change set classpath:liquibase/*.xml::202012131200::malin:

Reason: liquibase.exception.DatabaseException: Specified key was too long; max key length is 767 bytes [Failed SQL: CREATE INDEX index_contantType ON npp.npp_rule_contant(contant_type)]

at liquibase.changelog.ChangeSet.execute(ChangeSet.java:619)

at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:51)

at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:79)

at liquibase.Liquibase.update(Liquibase.java:214)

at liquibase.Liquibase.update(Liquibase.java:192)

at liquibase.integration.spring.SpringLiquibase.performUpdate(SpringLiquibase.java:431)

at liquibase.integration.spring.SpringLiquibase.afterPropertiesSet(SpringLiquibase.java:388)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1767)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1704)

... 14 common frames omitted

Caused by: liquibase.exception.DatabaseException: Specified key was too long; max key length is 767 bytes [Failed SQL: CREATE INDEX index_contantType ON npp.npp_rule_contant(contant_type)]

at liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:309)

at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:55)

at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:113)

at liquibase.database.AbstractJdbcDatabase.execute(AbstractJdbcDatabase.java:1277)

at liquibase.database.AbstractJdbcDatabase.executeStatements(AbstractJdbcDatabase.java:1259)

at liquibase.changelog.ChangeSet.execute(ChangeSet.java:582)

... 22 common frames omitted

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)

at com.mysql.jdbc.Util.getInstance(Util.java:408)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:944)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3976)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3912)

at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2530)

at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2683)

at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2482)

at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2440)

at com.mysql.jdbc.StatementImpl.executeInternal(StatementImpl.java:845)

at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:745)

at com.alibaba.druid.filter.FilterChainImpl.statement_execute(FilterChainImpl.java:2958)

at com.alibaba.druid.filter.FilterAdapter.statement_execute(FilterAdapter.java:2473)

at com.alibaba.druid.filter.FilterEventAdapter.statement_execute(FilterEventAdapter.java:188)

at com.alibaba.druid.filter.FilterChainImpl.statement_execute(FilterChainImpl.java:2956)

at com.alibaba.druid.proxy.jdbc.StatementProxyImpl.execute(StatementProxyImpl.java:147)

at com.alibaba.druid.pool.DruidPooledStatement.execute(DruidPooledStatement.java:619)

at liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:307)

... 27 common frames omitted

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'liquibase' defined in file [E:\workcode\doubleCOde\three-body-audit\tbm-compose\tbm-dao\target\classes\spring\spring-mybatis.xml]: Invocation of init method failed; nested exception is liquibase.exception.MigrationFailedException: Migration failed for change set classpath:liquibase/*.xml::202012131200::malin:

Reason: liquibase.exception.DatabaseException: Specified key was too long; max key length is 767 bytes [Failed SQL: CREATE INDEX index_contantType ON npp.npp_rule_contant(contant_type)]

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1708)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:581)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:503)

at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317)

at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)

at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315)

at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)

at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:760)

at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:869)

at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550)

at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:140)

at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)

at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:395)

at org.springframework.boot.SpringApplication.run(SpringApplication.java:327)

at com.gildata.threebody.tbm.starter.bootstrap.Application.main(Application.java:27)

Caused by: liquibase.exception.MigrationFailedException: Migration failed for change set classpath:liquibase/*.xml::202012131200::malin:

Reason: liquibase.exception.DatabaseException: Specified key was too long; max key length is 767 bytes [Failed SQL: CREATE INDEX index_contantType ON npp.npp_rule_contant(contant_type)]

at liquibase.changelog.ChangeSet.execute(ChangeSet.java:619)

at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:51)

at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:79)

at liquibase.Liquibase.update(Liquibase.java:214)

at liquibase.Liquibase.update(Liquibase.java:192)

at liquibase.integration.spring.SpringLiquibase.performUpdate(SpringLiquibase.java:431)

at liquibase.integration.spring.SpringLiquibase.afterPropertiesSet(SpringLiquibase.java:388)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1767)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1704)

... 14 more

Caused by: liquibase.exception.DatabaseException: Specified key was too long; max key length is 767 bytes [Failed SQL: CREATE INDEX index_contantType ON npp.npp_rule_contant(contant_type)]

at liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:309)

at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:55)

at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:113)

at liquibase.database.AbstractJdbcDatabase.execute(AbstractJdbcDatabase.java:1277)

at liquibase.database.AbstractJdbcDatabase.executeStatements(AbstractJdbcDatabase.java:1259)

at liquibase.changelog.ChangeSet.execute(ChangeSet.java:582)

... 22 more

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)

at com.mysql.jdbc.Util.getInstance(Util.java:408)

at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:944)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3976)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3912)

at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2530)

at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2683)

at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2482)

at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2440)

at com.mysql.jdbc.StatementImpl.executeInternal(StatementImpl.java:845)

at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:745)

at com.alibaba.druid.filter.FilterChainImpl.statement_execute(FilterChainImpl.java:2958)

at com.alibaba.druid.filter.FilterAdapter.statement_execute(FilterAdapter.java:2473)

at com.alibaba.druid.filter.FilterEventAdapter.statement_execute(FilterEventAdapter.java:188)

at com.alibaba.druid.filter.FilterChainImpl.statement_execute(FilterChainImpl.java:2956)

at com.alibaba.druid.proxy.jdbc.StatementProxyImpl.execute(StatementProxyImpl.java:147)

at com.alibaba.druid.pool.DruidPooledStatement.execute(DruidPooledStatement.java:619)

at liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:307)

... 27 more

{com.gildata.threebody.tbm.dao.mapper.middleground.HwNewsInfoMapper.selectById} Has been loaded by XML or SqlProvider, ignoring the injection of the SQL.

原来是汉字不能超过767个汉字不然无法建立索引

下面这句作废了

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Word分词标题 和JDK的contain的测试日志显示本地的笔记本 的效率基本上都是1秒以上,显然是Word分词标题 占优势,可是服务器上JDK与Word分析显然无区别,针对8W数据的检索
下一篇:Java如何实现字符串每隔4位加空格
相关文章

 发表评论

暂时没有评论,来抢沙发吧~