【发布时间】:2014-07-15 12:44:18
【问题描述】:
我正在尝试使用 Solr 通过 Solr 管理界面运行完整的数据导入。然而,当我运行它时,我得到以下输出:
"Indexing failed. Rolled back all changes."
在进一步检查 Solr 日志时,我可以看到我收到以下错误:
Caused by: java.sql.SQLException: Access denied for user 'username'@'127.0.0.1' (using password: YES)
(为安全起见已替换用户名,全栈here)
其他人有同样的问题吗?我已经仔细检查了数据库详细信息(已从命令行成功访问了有问题的数据库)。
我还检查了用户的权限,并且可以确认它在相关数据库上拥有授予它的所有权限。
【问题讨论】:
-
你是如何测试连接的?来自运行 Solr 的同一台服务器?您是否仔细检查过您输入的密码是否正确,并且在 DIH 配置中使用了正确的 JDBC 连接定义参数?
-
@fiskfisk ssh'd 进入运行 mysql 和 solr 的同一台服务器。输入以下命令:
mysql -u xxxx -p xxxx -h localhost并成功进入。仔细检查了我的 solr dataconfig 中的 JDBC 连接字符串: url="jdbc:mysql://localhost:3306/xxxx" user="xxxx" password="xxxx" -
我认为这与mysql有关。可能该用户缺乏从远程连接/连接/访问该架构/访问该表的权限。
-
@cheffe 是的,我同意它必须与 MySQL 相关。我无法弄清楚为什么 Solr 无法访问它。它们都在同一台服务器上运行。我检查了有问题的用户在 localhost、127.0.0.1 和 % 上拥有所有权限。无法弄清楚我错过了什么......