Chinaunix首页 | 论坛 | 博客
  • 博客访问: 846743
  • 博文数量: 105
  • 博客积分: 636
  • 博客等级: 中士
  • 技术积分: 1704
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-11 10:57
文章分类

全部博文(105)

文章存档

2017年(4)

2016年(9)

2015年(18)

2014年(16)

2013年(34)

2012年(24)

分类: Oracle

2012-12-05 17:13:12

今天在做数据迁移是遇到了一些问题 由于时间有限 今天先简单的记录一下过程  之后再详细的说明其中的各种机制。
原环境 ibm power 650
        aix 6.1
       oracle 10.2.0.4.0
         sqlplus 10.2.0.4.0
         备份文件是用数据泵expdp导出的文件
新环境  不知名的pc服务器
          linux centos 4.0 -64位
          oracle 10.2.0.1.0
          sqlplus 10.2.0.1.0
首先我拿到文件 创建好表空间用户后  感觉用个imp命令就会轻松搞定  只是时间问题
结果第一站就错了
imp 命令不能导入用expdp导出的文件(具体原因 以后查阅资料再说明)
然后 改用impdp命令去导入文件
创建目录 create directory dir_name as 'path'
         grant read,write on dir_name to user_name
用impdp命令导入
  又来了 看看这个错误
ORA-02374: conversion error loading table "BBDZ"."PUB_MESSAGEINFO"
ORA-12899: value too large for column SENDERMAN (actual: 24, maximum: 20)
ORA-02372: data for row: SENDERMAN : 0X'D4A4BEAFC6BDCCA820202020202020202020202
仔细分析了一下 可能是字符集的问题
于是我查了一下两个库环境的字符集
原环境 select * from v$nls_parameters(nls_database_parameters)
        zhs16gbk  新环境是utf8
现在要改字符集啊,我是用如下方式更改的字符集
 
 
1).以管理员身份登录:conn  sys/xxx  as sysdba,或者conn  /  as sysdba;
      2).关闭数据库:shutdown immediate;
      3).以mount方式开启数据库:startup mount
      4).限制其它用户连接数据库使用资源: alter system enable restricted session;
 
      5).查看系统当前的进程(最大连接数):show parameter processes;
      6).设置job_queue_processes=0杀掉CJQ0及相应job进程: alter system set job_queue_processes=0;
      7).修改参数alter system set aq_tm_processes=0;
      8).更改数据库为open方式:alter database open;
      9).ALTER DATABASE character set INTERNAL_USE zhs16gbk;--跳过超集检查
   使用internal_convert转换含有CLOB字段的表
 
   10).截断表truncate table Metastylesheet;
  11).alter database character set internal_convert zhs16gbk;-- ORACLE会自动转换含有CLOB    ---这个我没有执行
  12).因为前面清空了SYS.METASTYLESHEET表,需要重新创建
       9.2通过@?/rdbms/admin/catmet.sql创建;
          10g中没有catmet.sql这个脚本,通过运行catmeta.sql脚本来重建
          @?/rdbms/admin/catmeta.sql
重新登录  字符集改变了
然后再运行impdp  
又有错误ORA-39006: internal error
ORA-39213: Metadata processing is not available
这个在网上搜索了一下
执行了这个包就可以了exec dbms_metadata_util.load_stylesheets;
继续impdp吧
ORA-39171: Job is experiencing a resumable wait.
ORA-01653: unable to extend table BBDZ.BAI_TASK_B4 by 32 in tablespace NNC_DATA01
又报了个这样的错误  这次感觉是extend nnc_data01 有问题了 可能表空间已将满了
    我增加了表空间 的大小 问题解决  (给表空间增加了个文件)
alter tablespace tablespace_name add datafile 'path' size 10m ;
 
现在还在运行着呢 现在运行到schema_export/table/index/index 卡到这了 也不知道能不能过去呢  
 

1
 
 
阅读(9878) | 评论(1) | 转发(1) |
0

上一篇:进程程获取Latch的过程

下一篇:ora-12514

给主人留下些什么吧!~~

whj_itput2014-11-10 14:20:50

不错  帮我解决了问题