【问题标题】:Which DB driver to use DbVisualiser with Azure SQL?哪个 DB 驱动程序将 DbVisualiser 与 Azure SQL 结合使用?
【发布时间】:2017-05-14 21:26:32
【问题描述】:

我之前使用过 Microsoft SQL Server Management Studio here 和 Azure SQL here,但我想尝试 DbVis(独立于平台的替代方案)。我正在 OSX 中尝试 DbVis。我可以找到 SQL Server here 的 JDBC 驱动程序,但不确定这是否需要在 OSX 中将 DbVis 与 Azure SQL 一起使用。

我需要选择哪个驱动程序才能连接到 DbVis 中的 Azure SQL?

试用 1。 管理员凭据出错

设置是

  • 服务器名称myDB.database.windows.netDatabase URL
  • Azure SQL 管理员为Database userid
  • Azure SQL 密码为Database Password

其中的错误是这样的

An error occurred while establishing the connection:
The selected Driver cannot handle the specified Database URL.
The most common reason for this error is that the database URL
contains a syntax error preventing the driver from accepting it.
The error also occurs when trying to connect to a database
with the wrong driver. Correct this and try again.

可能相关

  1. 在 Ubuntu here 下连接到 DB Vis 中的 Azure SQL(问答线程)

  2. 在 Db Vis here 中连接到 Azure 管理数据(一些文章)

  3. Db Vis 中的票证要求指示连接到 Db Vis here 中的 Azure SQL dbs。

【问题讨论】:

  • 您试用此驱动程序时发生了什么?你收到错误了吗?
  • @Nick.McDermaid 在 Db Vis 中添加了上面试验 1 的错误输出,管理员凭据和服务器名称为 Database URL
  • 您是否设法通过其他方式连接到此 Azure 服务器?你能ping通服务器吗?您是否按照本文打开了 Azure 防火墙:docs.microsoft.com/en-us/azure/sql-database/…
  • @Nick.McDermaid 向 Q 添加了关于 ping 的错误报告。我可以在 MMSM 中访问数据库,客户端 IP 在防火墙中打开,这可能是 jTDS 驱动程序的 url 的一些问题,myDB.database.windows.net 格式显然不正确,可能缺少某些前缀? Like here 使用不同的驱动程序。
  • 那么...它生成了什么 JDBC 连接字符串?如果它没有告诉你,请从这里尝试手动操作:docs.microsoft.com/en-us/azure/sql-database/…

标签: sql-server macos azure azure-sql-database dbvisualizer


【解决方案1】:

不过,我对 DBVisualizer/jTDS 驱动程序没有任何问题。

据我所知,第一个错误只是表明您的连接字符串有错误,我建议您打开 Azure 管理门户并从那里复制相应的 jdbc 连接字符串。 第二个错误表明您无法在数据库 URL 模式下 ping 服务器,切换到服务器信息模式就可以了。

【讨论】:

    【解决方案2】:

    根据here,Db Vis 不正式支持 Azure:

    请注意,Azure 不是官方支持的数据库 DbVisualizer。话虽如此,我们确实有客户在运行 针对 Azure 的 DbVisualizer。

    您可以使用 Jtds 捆绑驱动程序或捆绑的 SQL 进行连接 服务器(微软)驱动程序。

    您可能需要使用 SSH 进行连接,如中所述 http://confluence.dbvis.com/display/UG95/Using+an+SSH+Tunnel

    op 已经尝试过 JTDS 驱动程序但显然它与 JTDS 捆绑驱动程序有所不同?正在与支持人员进一步讨论。

    这里不清楚为什么这里需要SSH隧道。

    【讨论】:

    • 我想你在这里需要SSH隧道的原因是防火墙规则。想象一下您只向办公室(IP 地址)公开了 SQL 数据库的场景,您必须先通过 SSH 回到办公室,然后才能连接到 SQL 数据库。
    • 我注意到 DBVisualizer 有一个用于 SQL Server (DataDirect) 的钩子,它支持 SQL Server Azure JDBC connections
    • @Sumit Sarkar jDTS 和 JDBC 有什么区别?
    • @hhh JTDS 是开源 JDBC 驱动程序的名称,而 DataDirect 是商业 JDBC 驱动程序。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    • 2021-12-26
    相关资源
    最近更新 更多