【问题标题】:Not able to connect to MSSQL using Schemacrawler无法使用 Schemacrawler 连接到 MSSQL
【发布时间】:2014-11-06 13:27:55
【问题描述】:

我已经安装了 Java 8,并且我的机器上的 E: 上有 SchemaCrawler 文件夹。我运行 SQL Server 2012。

使用的cmd命令如下

sc.cmd -c graph -host=10.52.136.168  -user=sa -database=MyDBName schemacrawler.Main -infolevel=detailed -schemas=dbo -tabletypes=TABLE -outputformat=pdf -outputfile=database-diagram.pdf %*

我已经检查了here 给出的建议 但没有运气。我仍然收到以下错误

schemacrawler.schemacrawler.SchemaCrawlerSQLException: Could not connect to jdbc
:hsqldb:hsql://10.52.136.168:9001/DeliveryIntelligence;readonly=true;hsqldb.lock
_file=false, with properties {user=sa}
        at schemacrawler.schemacrawler.BaseDatabaseConnectionOptions.getConnecti
on(BaseDatabaseConnectionOptions.java:122)
        at schemacrawler.schemacrawler.BaseDatabaseConnectionOptions.getConnecti
on(BaseDatabaseConnectionOptions.java:70)
        at schemacrawler.tools.commandline.SchemaCrawlerCommandLine.execute(Sche
maCrawlerCommandLine.java:176)
        at schemacrawler.tools.commandline.SchemaCrawlerMain.main(SchemaCrawlerM
ain.java:78)
        at schemacrawler.tools.hsqldb.Main.main(Main.java:43)
Caused by: java.sql.SQLTransientConnectionException: java.net.ConnectException:
Connection refused: connect
        at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
        at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
        at org.hsqldb.jdbc.JDBCConnection.<init>(Unknown Source)
        at org.hsqldb.jdbc.JDBCDriver.getConnection(Unknown Source)
        at org.hsqldb.jdbc.JDBCDriver.connect(Unknown Source)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at schemacrawler.schemacrawler.BaseDatabaseConnectionOptions.getConnecti
on(BaseDatabaseConnectionOptions.java:115)
        ... 4 more
Caused by: org.hsqldb.HsqlException: java.net.ConnectException: Connection refus
ed: connect
        at org.hsqldb.ClientConnection.openConnection(Unknown Source)
        at org.hsqldb.ClientConnection.initConnection(Unknown Source)
        at org.hsqldb.ClientConnection.<init>(Unknown Source)
        ... 10 more
Caused by: java.net.ConnectException: Connection refused: connect
        at java.net.DualStackPlainSocketImpl.connect0(Native Method)
        at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
        at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
        at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
        at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
        at java.net.PlainSocketImpl.connect(Unknown Source)
        at java.net.SocksSocketImpl.connect(Unknown Source)
        at java.net.Socket.connect(Unknown Source)
        at java.net.Socket.connect(Unknown Source)
        at java.net.Socket.<init>(Unknown Source)
        at java.net.Socket.<init>(Unknown Source)
        at org.hsqldb.server.HsqlSocketFactory.createSocket(Unknown Source)
        ... 13 more

【问题讨论】:

    标签: java sql-server schemacrawler


    【解决方案1】:

    您正在为 HyperSQL 使用 SchemaCrawler。请下载并改用SchemaCrawler for SQL Server

    Sualeh Fatehi,SchemaCrawler

    【讨论】:

    • 对不起.. 我的错误是那里有一个误导性的下载最新版本链接。将尝试使用实际文件
    • 现在,虽然它生成了一个 PDF,但 pdf 是空的。我在 cmd 命令中是否缺少任何参数?
    • 首先尝试不使用 -schemas:sc.cmd -c graph -host=10.52.136.168 -user=sa -database=MyDBName schemacrawler.Main -infolevel=standard -outputformat=pdf -outputfile=database -diagram.pdf 然后,使用类似 -schemas=MyDBName.dbo
    • 瞧!我使用了 -schemas=MyDBName.dbo 并且成功了!它比默认的 MSSQL 图表更具可读性!谢谢!
    • 此外,另外一项更改是添加路径变量,如 graphviz.org/content/failed-run-dot 中提到的 Graphviz
    猜你喜欢
    • 2017-08-05
    • 2015-10-23
    • 1970-01-01
    • 2013-07-13
    • 1970-01-01
    • 2021-06-02
    • 1970-01-01
    • 2018-11-23
    • 2014-08-28
    相关资源
    最近更新 更多