Linux下exp命令备份数据库报错提示没有设置ORACLE_HOME的解决办法

3 篇文章 0 订阅

今天备份数据库出现问题:


报错信息:

Message 206 not found; No message file for product=RDBMS, facility=EXP: Release 10.2.0.4.0 - Production on Thu Apr 19 16:17:26 2012Copyright (c) 1982, 2007, Orac Invalid format of Export utility nameVerify that ORACLE_HOME is properly setExport terminated unsuccessfullyEXP-00000: Message 0 not found; No message file for product=RDBMS, facility=EXP

 

解决办法:

 

查看oracle安装目录:

$ ps -ef |grep oracle

 

输出:

oracle   15178     1  0 Mar19 ?        00:00:42 /home/oracle/product/10.2/db/bin/tnslsnr LISTENER -inherit

..........

..........

..........

 

设置ORACLE_HOME命令:

$ su oracle

$ export ORACLE_HOME=/home/oracle/product/10.2/db  (这个不能写错,之前我设置成/home/oracle/product/10.2 是不行的)

 


查看ORACLE_HOME设置情况的命令:

$ env |grep ORACLE_HOME

 

输出:

ORACLE_HOME=/home/oracle/product/10.2/db

 

在/home/oracle/product/10.2/db/bin/下执行导出命令:

$  ./exp system/manager@cpm file=/home/oracle/export/cpmbak.20120419.dmp log=oradb.log full=y consistent=y direct=y

 

最后执行成功了。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用 `exp` 命令导出 Oracle 数据库时,如果存在 CLOB 类型的字段,可能会出现报错的情况。这是因为 `exp` 命令默认使用 `varchar2` 类型来处理 CLOB 字段,而 `varchar2` 类型的长度有限制,无法处理过长的 CLOB 字段。 解决这个问题有两种方法: 1. 使用 `expdp` 命令导出数据:`expdp` 命令Oracle 数据库的数据泵工具,它可以更好地处理 CLOB 类型的数据。使用 `expdp` 命令导出数据时,需要指定 `CLOB` 类型的列使用二进制格式导出,例如: ``` expdp user/password@database tables=table_name directory=dir dumpfile=file_name.dmp lob_as_segment=y ``` 其中,`lob_as_segment=y` 表示将 `CLOB` 类型的列以二进制格式导出。 2. 修改 `exp` 命令的参数:可以通过修改 `exp` 命令的参数来解决 CLOB 字段报错的问题。具体操作如下: 1. 在 `exp` 命令中添加 `-c` 参数,表示以字符格式导出数据。 2. 在 `exp` 命令中添加 `-lob` 参数,表示导出 CLOB 字段。 3. 修改 `NLS_LANG` 环境变量,将其设为 `AMERICAN_AMERICA.AL32UTF8`,表示使用 UTF-8 编码。 示例命令如下: ``` exp user/password@database tables=table_name file=file_name.dmp log=log_name.log rows=yes compress=no direct=no indexes=no triggers=no constraints=no grants=no feedback=1000000 buffer=1000000 consistent=y commit=y statistics=none object_consistent=y recordlength=65535 consistent=y full=y rows=y constraints=n indexes=n grants=n triggers=n feedback=1000000 buffer=1000000 file=file_name.dmp log=log_name.log compress=n consistent=y direct=n rows=y statistics=none file_size=unlimited consistent=y file_name_convert=old_dir:new_dir -c -lob -NLS_LANG=AMERICAN_AMERICA.AL32UTF8 ``` 注意,修改 `NLS_LANG` 环境变量可能会影响其他程序的运行,需要谨慎操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值