Tomcat 无法使用 tomcat 服务连接到数据库,但使用 startup.bat 成功

标签 tomcat

我遇到了 tomcat 的问题。 我正在为我的应用程序使用连接池,它使用内置身份验证。

当我使用 startup.bat 运行 tomcat 时,我的应用程序运行良好并且能够连接到数据库。 但是当我尝试使用 tomcat 作为服务并使用 tomcat8w.exe 时,它​​给我错误,并说它无法登录 ID 为“xxxx”的 SQL 服务器。这里的“xxxx”不是我提供的用户 ID,而是显示我的机器名称。

因此,当我使用 startup.bat 时,它正确地获取了我的 ID,但是当我使用 tomcat8w.exe 启动我的 tomcat 时,它以我的/$ 作为用户,然后它说它失败了。

知道我将机器名作为用户名,我该如何解决

最佳答案

您是否正在使用集成安全性连接到您的 SQL Server 数据库?确保您的连接字符串包含 User IdPassword 而不是 trusted_connectionintegrated security

或者您可以更改运行 tomcat 服务的 Windows 用户。在 Windows 上打开服务并打开 tomcat 服务的属性。您可以在第二个面板 Log On 中更改 Windows 用户。尝试将帐户设置为您登录的用户。

理想情况下,您会选择一个可以访问数据库但没有其他权限的 Windows 用户。然后使用集成安全,这样您就不需要在连接字符串中存储纯文本密码。

关于Tomcat 无法使用 tomcat 服务连接到数据库,但使用 startup.bat 成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43262860/

相关文章:

java - 针对 Poodle (SSL3) 漏洞,我应该在 Tomcat 中删除哪些 SSL 密码

jquery - Ajax JSONP Parseerror-Callback-Not-Called with Tomcat 9

java - Apache 后面的 Spring Boot 应用程序中的 session 超时

具有 dbcp 池的 tomcat webapp - 池线程是免费的,但 http-bio 线程不能获取它

tomcat - 找到tomcat安装目录

tomcat - 在远程服务器上部署 war + conf( cargo ?)

java - 在tomcat服务器中运行应用程序有什么问题?

tomcat - Tomcat 启动后 Log4j 不工作

jakarta-ee - Tomcat 6 看不到 jar 里的 bean

maven - Tomcat部署旧版本的webapp