在 Ubuntu 16.04 上安装 Oracle Datamodeler

2024-02-20

我正在我的 Ubuntu 16.04 工作站上设置 Oracle 开发环境。安装 Oracle 12c 是一个挑战,但有几个非常有用的教程让我走上了正轨。下列的迪兹韦尔的 https://www.dizwell.com/wordpress/technical-articles/oracle/install-sql-developer-on-ubuntu/说明——设置 SQL Developer 是小菜一碟。

最初,我能够将oracle的rpm包转换为deb并成功安装。我第一次启动 datamodeler 时它工作正常。在所有后续启动中,我收到以下一系列错误:

Custom UI class oracle.bali.ewt.olaf2.OracleLookAndFeel not on classpath
Error: Data Modeler can't recognize the JDK version

我已多次清除并重新安装 .deb 软件包,但无法再启动它。任何有关如何继续的建议将不胜感激。

为了安装 DM,我遵循Oracle Noob 的 http://oracle-noob.blogspot.com/2014/01/install-oracle-data-modeler-40-on.html说明如下:

sudo alien --scripts data*rpm
dpkg -i data*deb
I added this line to the datamodeler startup script:
unset -v GNOME_DESKTOP_SESSION_ID

今天,我需要在 Ubuntu 16.04 上彻底安装 Oracle Data Modeler (ODM),我已经通过以下步骤成功完成了此操作。

信息:以 sudo 非 root 用户身份完成

安装Java

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

设置 Java 版本(java, javac):

sudo update-alternatives --config java
sudo update-alternatives --config javac

然后检查版本是否正确

java -version
javac -version

你应该看到类似的东西:

$ java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
$ javac -version
javac 1.8.0_121

安装 Oracle 数据建模器

在撰写此答案的当天,我使用最新、稳定的 ODM 版本(v4.1.5)。

在开始之前我们需要alien转换器,所以我们这样做:

$ sudo apt-get install alien
  1. 然后下载建模器(here http://www.oracle.com/technetwork/developer-tools/datamodeler/overview/index.html)
  2. 使用外星人来转换*.rpm封装成*.deb

    cd <where-you-download-the-rpm-package>
    sudo alien datamodeler-4.1.5.907-1.noarch.rpm  # it might take some time
    sudo dpkg -i datamodeler_4.1.5.907-2_all.deb
    

使用小注意事项--scripts标志(参考:外星人手册 http://manpages.ubuntu.com/manpages/xenial/man1/alien.1p.html)

-c,--脚本

尝试转换安装和删除软件包时要运行的脚本。请谨慎使用,因为这些脚本可能被设计为在与您自己的系统不同的系统上运行,并且可能会导致问题。建议您在使用此选项之前手动检查脚本并检查它们的作用。

  1. 完成此步骤后,您可以从控制台运行它:

    $ datamodeler
    

注意:如果您想从启动时运行 Data Modeler,则需要将新条目添加到/usr/share/applications(对于所有用户)或~/.local/share/applications/(仅适用于当前用户)如下例所示。

[Desktop Entry]
Version=1.0
Type=Application
Name=Oracle Data Modeler
GenericName=Oracle Data Modeler
Comment=Oracle SQL Developer Data Modeler is a free graphical tool that enhances productivity and simplifies data modeling tasks.
Exec=datamodeler
Terminal=false
MimeType=text/plain;
Icon=datamodeler
Categories=SQLEditor;Development;
StartupNotify=true
Actions=Window;Document;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Ubuntu 16.04 上安装 Oracle Datamodeler 的相关文章

  • Oracle group by 中的字符串聚合

    我已经形成了一个大型查询 它使用以下数据条件获取大型数据集 Column1 Column2 M1 OTH M1 HHM M1 RES M2 HHM M2 RES M3 OTH M3 RES 我需要将其形成为 M1 OTH HHM RES M
  • SQL选择符号||是什么意思意思是?

    什么是 在 SQL 中做什么 SELECT a b AS letter 表示字符串连接 不幸的是 字符串连接不能在所有 sql 方言之间完全移植 ANSI SQL 中缀运算符 mysql concat 可变参数函数 caution 表示 逻
  • oracle 数据透视表中的列

    示例选择 select from select 1 cnt 2 sm 55 name 12 month 2011 year 12 2011 mnth txt from dual union all select 1 cnt 2 sm 54
  • Rails 建模:将 HABTM 转换为 has_many :through

    我正在现有的 Rails 站点上进行维护工作 并且遇到了一些由多对多关联引起的问题 看起来该网站最初是使用has and belongs to many对于一些业务逻辑变得更加复杂的关系 所以我需要使用has many through而是支
  • Oracle中如何转义单引号? [复制]

    这个问题在这里已经有答案了 我有一列包含某些存储为文本字符串的表达式 其中包括单个引号 例如 错过的交易 包括引号 发生这种情况时如何使用 where 子句 select from table where reason missed tra
  • 如何对Oracle进行SQL注入

    我正在对一个系统进行审计 开发人员坚称该系统可以防止 SQL 注入 他们通过去掉登录表单中的单引号来实现这一点 但后面的代码没有参数化 它仍然使用字面 SQL 如下所示 username username Replace var sql s
  • SQL:两个没有完整列匹配的表的并集

    我有一个table A其中有一组列A1 A2和一个具有一组列的 table bB1 B2 碰巧的是A2 B1但其余列不匹配 也不应该匹配 我想附加表格 所以我使用UNION ALL 对于不匹配的列 我使用null as COLUMN NAM
  • 将游标中的数据合并为一个

    我有一个存储过程 它多次执行另一个存储过程 我需要联合并返回数据 这是在执行第二个过程后得到的 我可以以某种方式将多个游标中的数据合并到另一个游标中吗 没有临时表或类表数据类型是否可能 编辑 联合的游标计数实际上是 n 其中 n 是 1 2
  • 如何在sql中提取周数

    我有一个 varchar2 类型的转换列 其中包含以下主菜 01 02 2012 01 03 2012 etc 我使用 to date 函数将其转换为另一列中的日期格式 这是我得到的格式 01 JAN 2012 03 APR 2012 当我
  • 如何使用 Hibernate Session.doWork(...) 进行保存点/嵌套事务?

    我正在使用 JavaEE JPA 托管事务与 Oracle DB 和 Hibernate 并且需要实现某种嵌套事务 据我所知 此类事情不受开箱即用的支持 但我应该能够为此目的使用保存点 正如建议的https stackoverflow co
  • 如何在可能为空值的字段上创建唯一索引(Oracle 11g)?

    这是包含 3 列的示例表 ID UNIQUE VALUE UNIQUE GROUP ID 我希望可以允许以下记录 1 NULL NULL 2 NULL NULL or 3 NULL 7 4 123 7 or 注意 此条件不允许unique
  • 如何列出表中的所有列?

    对于各种流行的数据库系统 如何列出表中的所有列 对于 MySQL 请使用 DESCRIBE name of table 只要您使用 SQL Plus 或 Oracle 的 SQL Developer 这也适用于 Oracle
  • Oracle如何将UTC时间转换为本地时间(缺少偏移信息)

    我有一个包含日期列的表 我认为该列中的日期是以 UTC 格式保存的 我希望检索日期时以当地时间打印 这意味着当我从德国调用日期时 结果应该是这样的 2015 04 29 11 24 06 0200UTC EUROPE BERLIN 我尝试了
  • Oracle 按月滚动或运行总计

    目标 每个月末所有报表的滚动 运行总计 Code select TRUNC ACTHX STMT HX STMT DATE MM AS MNTH COUNT ACTHX INVOICE as STMTS from ACTHX group b
  • 使用 Hibernate 将 Oracle 日期映射到 Java 对象

    我收到消息 文字与格式字符串不匹配 例如 以下是 Java 类中的一些方法 public String getDateTime public void setDateTime String date time 以下是该类的 Hibernat
  • 如何使用 Hibernate (EntityManager) 或 JPA 调用 Oracle 函数或过程

    我有一个返回 sys refcursor 的 Oracle 函数 当我使用 Hibernate 调用该函数时 出现以下异常 Hibernate call my function org hibernate exception Generic
  • 插入具有多个值的外键

    我想知道 是否有可能创建一个表 其中我有一个接受外键但同一行可能有多个值的表 例如 Employee id name skillid Skill Skillid skillname 这里 Employee 的一个例子可以是 Employee
  • Oracle Text:如何清理用户输入

    如果有人有使用 Oracle 文本的经验 CTXSYS CONTEXT 我想知道当用户想要搜索可能包含撇号的名称时如何处理用户输入 在某些情况下 转义 似乎有效 但对于单词末尾的 s 则不起作用 s 在停用词列表中 因此似乎已被删除 目前
  • 没有提示指令的直连接中表的顺序是否会影响性能?

    所有基于 SQL 的 RDBMS 10 年前的版本 直接连接查询 没有提示指令 中的表顺序是否会对最佳性能和内存管理产生影响 听说最后一个join应该是最大的表 您的数据库的查询优化器如何处理这种情况 回答你的问题 是的 表的顺序在连接中有
  • 如果 Oracle SQL 中存在视图,则删除视图[重复]

    这个问题在这里已经有答案了 我是 Oracle 数据库系统的新手 Oracle 12c 中以下 SQL 语句的等效项是什么 DROP VIEW IF EXIST

随机推荐