我一直在尝试在Oracle 18c中使用"expdp"实用程序导出oracle数据转储。我已经在 ~/.bashrc 下设置了环境变量,如下所示
export ORACLE_HOME=/home/ubuntu/oracle-database-xe-18c-1.0/opt/oracle/product/18c/dbhomeXE
export ORACLE_SID=ORCL
export ORACLE_BASE=/home/ubuntu/oracle-database-xe-18c-1.0/opt/oracle/product
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export TNS_ADMIN=$ORACLE_HOME/network/admin
当我在终端中输入命令"expdp"时 - 它一直说您的ORACLE_HOME未设置
root@ip-172-30-xx-xxx:~# expdp
UDE-00013: Message 13 not found; No message file for product=RDBMS, facility=UDE
UDE-00019: You may need to set ORACLE_HOME to your Oracle software directory
我目前是甲骨文数据库的新手。可能出现什么问题?我也需要在其他地方设置环境变量吗?
请注意,Oracle XE 在 Ubuntu 上并不真正受支持:如果您真的想使用 Oracle,请将其安装在 Oracle Linux 上(免费提供(:您将永远不会看到 Oracle 数据库在 Debian 或 Ubuntu 的实际生产中运行,您将需要使用 Oracle Linux 或 RedHat Linux 或 Suse Linux。
不要以 root 身份运行 Oracle 实用程序:您不需要这样做,在 Linux 上,在不需要时使用 root 帐户通常是一种不好的做法。 使用非特权帐户运行 Oracle 实用程序(如 SQL*Plus 或 Data Pump(,并确保为每个 shell 会话运行 Oracle 设置:将它们放在正确的帐户.bash_profile就足够了。
对于此特定错误消息,只需确保正确设置ORACLE_HOME:您的 .bashrc 可能尚未运行。