SnowflakeSQLException 错误代码:390100,消息:指定的用户名或密码不正确

SnowflakeSQLException Error code: 390100, Message: Incorrect username or password was specified

已使用 python JDBC 驱动程序连接到雪花,但无法在 jupyter notebook 中使用 pyspark 连接到雪花?已确认我的用户名和密码正确无误。

环境详细信息:-

参考本教程

https://docs.snowflake.net/manuals/user-guide/spark-connector-use.html#label-spark-options.

错误堆栈:-

有线索吗?

只是为社区发布答案做贡献

  1. 按照spark和driver的版本解决问题: 以下罐子和火花的组合对我有用。 星火 2.3.3 (spark-2.3.3-bin-hadoop2.7) Python 3.6.6(可以是 3.7) snowflake-jdbc-3.6.12.jar spark-snowflake_2.11-2.4.8.jar 雪花服务器:-(3.27.2)

  2. 如果您遇到以下错误

    Py4JJavaError: An error occurred while calling o272.load.
    : java.sql.SQLClientInfoException: The only allowable value is 
    application name.
    hodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    

    从配置 sfOptions 对象中删除 sfAccount 属性 official snowflake document

    sfOptions = {
        "sfURL" : "<account_name>.snowflakecomputing.com",
        "sfAccount" : "<account_name>",
        "sfRole" : "<user_role_name>",
        "sfUser" : "<user_name>",
        "sfPassword" : "<password>",
        "sfDatabase" : "<database>",
        "sfSchema" : "<schema>",
        "sfWarehouse" : "<warehouse>",
    

    }

抛出的错误非常普遍,这进一步造成了错误或遗漏任何要添加的内容的混淆。

添加到社区 post 和正确答案,这也适用于:

  • spark 版本 2.4.3
  • scala 版本 2.11.12

和以下罐子:

  • 雪花-jdbc-3.9.0.jar
  • spark-snowflake_2.11-2.5.1-spark_2.4.jar

但您需要从 sfOptions

的雪花文档中删除“sfAccount
var sfOptions = Map("sfURL" -> "xxx.snowflakecomputing.com","sfUser" -> "your_sf_user","sfPassword" -> "your_sf_password","sfDatabase" -> "your_sf_database","sfSchema" -> "your_sf_schema","sfWarehouse" -> "your_sf_warehouse")`