【问题标题】:Unable to connect to Oracle with SchemaSpy无法使用 SchemaSpy 连接到 Oracle
【发布时间】:2016-08-26 17:07:37
【问题描述】:

我安装了 64 位 Oracle Instant Client,当连接 SchemaSpy 时,我收到以下错误消息。

请注意:这两个文件都存在 C:\app\instantclient_12_1\ojdbc6.jar C:\app\instantclient_12_1\ocijdbc12.dll

并且“C:\app\instantclient_12_1\”在 PATH 中。

我也试过 C:\app\instantclient_12_1\ojdbc7.jar,结果一样。

Windows 7 64 位。

非常感谢任何能让它正常工作的人的帮助。

错误信息:

Failed to load driver [oracle.jdbc.driver.OracleDriver] from classpath [file:/C:/app/instantclient_12_1/ojdbc6.jar]

Make sure the reported library (.dll/.lib/.so) from the following line can be
found by your PATH (or LIB*PATH) environment variable

java.lang.UnsatisfiedLinkError: C:\app\instantclient_12_1\ocijdbc12.dll: Specified process not found 
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(Unknown Source)
    at java.lang.ClassLoader.loadLibrary(Unknown Source)
    at java.lang.Runtime.loadLibrary0(Unknown Source)
    at java.lang.System.loadLibrary(Unknown Source)
    at oracle.jdbc.driver.T2CConnection$1.run(T2CConnection.java:4115)
    at java.security.AccessController.doPrivileged(Native Method)
    at oracle.jdbc.driver.T2CConnection.loadNativeLibrary(T2CConnection.java:4111)
    at oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:308)
    at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:662)
    at oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:54)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:560)
    at net.sourceforge.schemaspy.SchemaAnalyzer.getConnection(SchemaAnalyzer.java:582)
    at net.sourceforge.schemaspy.SchemaAnalyzer.analyze(SchemaAnalyzer.java:157)
    at net.sourceforge.schemaspy.Main.main(Main.java:42)
E=3I=3

【问题讨论】:

    标签: oracle schemaspy


    【解决方案1】:

    以下是针对 Oracle 数据库运行 SchemaSpy 6 的方法:

    依赖关系

    确保您的机器上有以下可用:

    1. 来自schemaspy.org的最新版本,下面将描述schemaspy-6.0.0-rc1的过程。
    2. Oracle JDBC 瘦驱动程序,否则您将不得不使用 Oracle OCI。你可以从Oracle Database 12.1.0.2 JDBC Driver & UCP Downloads得到它
    3. SchemaSpy 使用 GraphViz 生成图表,从graphviz.org 获取。您需要更新 PATH 变量,将 C:\Program Files (x86)\Graphviz2.38\bin 添加到其中(确保版本适合您下载的版本)。

    数据库类型

    注意,SchemaSpy 支持 Oracle OCI (-t ora) 和 Oracle Thin (-t orathin) 作为数据库类型。要获取可用数据库类型的列表:

    java -jar schemaspy-6.0.0-rc1.jar -dbhelp
    

    配置

    您可以将大部分配置参数放入一个名为schemaspy.properties 的文件中,将该文件放入与schemaspy-6.0.0-rc1.jar 相同的目录中。

    例如schemaspy.properties:

    # type of database. Run with -dbhelp for details
    schemaspy.t=orathin
    # path to the dowloaded oracle jdbc drivers, for example
    schemaspy.dp=C:\tools\dbdoc\drivers\ojdbc7.jar
    # database properties: host, port number, name user, password
    schemaspy.host=[orcale database host]
    schemaspy.port=[orcale database port, usualy 1521]
    schemaspy.db=[database name or SID]
    schemaspy.u=[username]
    schemaspy.p=[password, for complexer ones, put it in quotation marks]
    
    # output dir to save generated files
    schemaspy.o=C:\tools\dbdoc\output
    
    # db scheme for which generate diagrams
    schemaspy.s=[scheme name]
    

    生成文档

    配置到位后,现在您要做的就是运行:

    java -jar schemaspy-6.0.0-rc1.jar
    

    【讨论】:

    • 如果出现错误“ERROR - Bad config: Catalog (-cat) is not provided and无法推导出目录,可以使用通配符目录-cat %”你可以添加schemaspy.cat=SYS到 schemaspy.properties,对于“SYS”,您必须提供自己的数据库目录名称。
    • 目录错误可以通过在命令中传递-cat calalog来修复
    猜你喜欢
    • 1970-01-01
    • 2015-11-17
    • 2011-09-05
    • 2014-06-07
    • 1970-01-01
    • 2016-06-23
    • 2019-12-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多