CannotCreateTransactionException: com.microsoft.sqlserver.jdbc.SQLServerException Ошибка входа

Я использую Spring Batch с базой данных Microsoft SQL 2014. Он работает на сервере Tomcat 9.0.16 с OpenJDK 11.0.2

Моя проблема заключается в том, что я получаю случайно ошибки, при которых невозможно соединение JDBC. Он просто говорит, что "Ошибка при входе в систему для пользователя" хх "".

База данных не показывает ошибок и, кажется, работает без проблем. Я использую последние версии драйверов MSSQL JDBC: 7.2.1.jre11

Все остальные программы работают отлично с той же самой пользователем + база данных.

Я очень надеюсь, что кто-нибудь сможет мне помочь!

0 ответов

Через месяц, не найдя решения, мне наконец удалось заставить его работать должным образом.

Проблема где-то в конфигурации управления Spring Database / Connection Pool по умолчанию. Я переключил базовый пул соединений JDBC на HikariCP, и проблема исчезла!

Я добавил зависимость HikariCP в свой Maven pom.xml и изменил свой источник данных по умолчанию на HikariDataSource.

final HikariConfig config = new HikariConfig();
    config.setPoolName(environment.getProperty("datasourcewww.serverName"));
    config.setDataSourceClassName("com.microsoft.sqlserver.jdbc.SQLServerDataSource");
    config.setUsername(userName);
    config.setPassword(password);
    config.addDataSourceProperty("serverName", serverName);

    config.addDataSourceProperty("databaseName", databaseName);
    config.setConnectionTimeout(10000);
    config.setMinimumIdle(10);
    config.setMaximumPoolSize(200);
    config.setIdleTimeout(1800000);

    LOG.info("HikariCP DataSource initialized.");
    return new HikariDataSource(config);

Надеюсь, это поможет, на случай, если у кого-то возникнет такая же проблема...

Другие вопросы по тегам