Невозможно создать таблицы в MySQL в широкой установке - PullRequest
0 голосов
/ 28 мая 2019

Я пытаюсь настроить локальную широкополосную демонстрационную среду с подключенной к ней базой данных MySQL.Я настроил все соединения MySQL, следуя документации.

Я выполнил следующие команды в каталоге демо-сайта mvn clean install, а затем в каталоге администратора, когда я запускаю команду mvn spring-boot:run Я получаю следующие исключения,Также несколько таблиц не созданы, и есть ошибка с синтаксисом MySQL.Пожалуйста, смотрите ниже ошибки.Я проверил локальную базу данных таблицы созданы.Но таблицы, упомянутые в ошибке, не существует в базе данных.

Это первоначальное исключение

java.sql.SQLSyntaxErrorException: Unknown table 'system_sequences' in information_schema
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) ~[mysql-connector-java-8.0.16.jar:8.0.16]
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) ~[mysql-connector-java-8.0.16.jar:8.0.16]
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) ~[mysql-connector-java-8.0.16.jar:8.0.16]
at com.mysql.cj.jdbc.StatementImpl.executeQuery(StatementImpl.java:1218) ~[mysql-connector-java-8.0.16.jar:8.0.16]

Впоследствии некоторые таблицы не могут быть созданы из-за синтаксической ошибки

o.h.cache.internal.StandardQueryCache    : HHH000248: Starting query cache at region: org.hibernate.cache.internal.StandardQueryCache
org.hibernate.tool.hbm2ddl.SchemaExport  : HHH000227: Running hbm2ddl schema export
org.hibernate.tool.hbm2ddl.SchemaExport  : HHH000389: Unsuccessful: create table BLC_CATEGORY (CATEGORY_ID bigint not null, ACTIVE_END_DATE timestamp, ACTIVE_START_DATE timestamp, ARCHIVED char(255), DESCRIPTION varchar(255), DISPLAY_TEMPLATE varchar(255), EXTERNAL_ID varchar(255), FULFILLMENT_TYPE varchar(255), INVENTORY_TYPE varchar(255), LONG_DESCRIPTION longvarchar, META_DESC varchar(255), META_TITLE varchar(255), NAME varchar(255) not null, OVERRIDE_GENERATED_URL boolean, PRODUCT_DESC_PATTERN_OVERRIDE varchar(255), PRODUCT_TITLE_PATTERN_OVERRIDE varchar(255), ROOT_DISPLAY_ORDER numeric, TAX_CODE varchar(255), URL varchar(255), URL_KEY varchar(255), DEFAULT_PARENT_CATEGORY_ID bigint, primary key (CATEGORY_ID))
 org.hibernate.tool.hbm2ddl.SchemaExport  : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'longvarchar, META_DESC varchar(255), META_TITLE varchar(255), NAME varchar(255) ' at line 1
 org.hibernate.tool.hbm2ddl.SchemaExport  : HHH000389: Unsuccessful: create table BLC_CMS_MENU_ITEM (MENU_ITEM_ID bigint not null, ACTION_URL varchar(255), ALT_TEXT varchar(255), CUSTOM_HTML longvarchar, LABEL varchar(255), SEQUENCE numeric, MENU_ITEM_TYPE varchar(255), MEDIA_ID bigint, LINKED_MENU_ID bigint, LINKED_PAGE_ID bigint, PARENT_MENU_ID bigint, primary key (MENU_ITEM_ID))
 org.hibernate.tool.hbm2ddl.SchemaExport  : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'longvarchar, LABEL varchar(255), SEQUENCE numeric, MENU_ITEM_TYPE varchar(255), ' at line 1
 org.hibernate.tool.hbm2ddl.SchemaExport  : HHH000389: Unsuccessful: create table BLC_CUSTOMER_PAYMENT_FIELDS (CUSTOMER_PAYMENT_ID bigint not null, FIELD_VALUE longvarchar, FIELD_NAME varchar(255) not null, primary key (CUSTOMER_PAYMENT_ID, FIELD_NAME))
 org.hibernate.tool.hbm2ddl.SchemaExport  : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'longvarchar, FIELD_NAME varchar(255) not null, primary key (CUSTOMER_PAYMENT_ID,' at line 1

Другое исключение, как показано ниже

org.hibernate.tool.hbm2ddl.ImportScriptException: Error during statement execution (file: 'config/bc/sql/demo/load_catalog_data.sql'): INSERT INTO BLC_CATEGORY (CATEGORY_ID,DESCRIPTION,NAME,URL,ACTIVE_START_DATE,DISPLAY_TEMPLATE,ROOT_DISPLAY_ORDER, OVERRIDE_GENERATED_URL) VALUES (2001,'Home','Home','/',CURRENT_TIMESTAMP, 'layout/homepage', -5.000000, FALSE)
at org.hibernate.tool.hbm2ddl.SchemaExport.importScript(SchemaExport.java:451) ~[hibernate-core-4.1.11.Final.jar:4.1.11.Final]
at org.hibernate.tool.hbm2ddl.SchemaExport.execute(SchemaExport.java:378) ~[hibernate-core-4.1.11.Final.jar:4.1.11.Final]
at org.hibernate.tool.hbm2ddl.SchemaExport.create(SchemaExport.java:304) ~[hibernate-core-4.1.11.Final.jar:4.1.11.Final]
at org.hibernate.tool.hbm2ddl.SchemaExport.create(SchemaExport.java:293) ~[hibernate-core-4.1.11.Final.jar:4.1.11.Final]

Caused by: java.sql.SQLSyntaxErrorException: Table 'broadleaf.blc_category' doesn't exist
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) ~[mysql-connector-java-8.0.16.jar:8.0.16]
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) ~[mysql-connector-java-8.0.16.jar:8.0.16]
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) ~[mysql-connector-java-8.0.16.jar:8.0.16]
at com.mysql.cj.jdbc.StatementImpl.executeUpdateInternal(StatementImpl.java:1355) ~[mysql-connector-java-8.0.16.jar:8.0.16]
at com.mysql.cj.jdbc.StatementImpl.executeLargeUpdate(StatementImpl.java:2128) ~[mysql-connector-java-8.0.16.jar:8.0.16]

В конце я вижу это исключение, за которым следует сбой сборки

org.springframework.dao.InvalidDataAccessResourceUsageException: Table 'broadleaf.blc_sku_fee' doesn't exist; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: Table 'broadleaf.blc_sku_fee' doesn't exist
at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException(HibernateJpaDialect.java:261) ~[spring-orm-4.3.18.RELEASE.jar:4.3.18.RELEASE]
at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:244) ~[spring-orm-4.3.18.RELEASE.jar:4.3.18.RELEASE]
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:525) ~[spring-orm-4.3.18.RELEASE.jar:4.3.18.RELEASE]
at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:59) ~[spring-tx-4.3.18.RELEASE.jar:4.3.18.RELEASE]
at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:209) ~[spring-tx-4.3.18.RELEASE.jar:4.3.18.RELEASE]

Может ли кто-нибудь указать мне правильное направление, чтобы эта сборка была успешной?

1 Ответ

0 голосов
/ 05 июня 2019

Это сообщение журнала является ключом:

java.sql.SQLSyntaxErrorException: неизвестная таблица 'системные_последовательности' в информационной_схеме

system_sequences - вещь, специфичная для HSQL. Обычно это означает, что Hibernate по-прежнему настроен на использование диалекта HSQL.

Документы по переключению на MySQL указывают на то, что вы должны выключить это с MySQL5InnoDBDialect:

blPU.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
blSecurePU.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
blCMSStorage.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
...