免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 9158 | 回复: 9
打印 上一主题 下一主题

菜鸟求租imp导入数据报错的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-01 10:23 |只看该作者 |倒序浏览
10可用积分
如何设置服务端和客户端的字符集一致呢?


Export file created by EXPORT:V10.02.01 via conventional path
import done in ZHS16GBK character set and AL16UTF16 NCHAR character set
import server uses WE8ISO8859P1 character set (possible charset conversion)
export client uses US7ASCII character set (possible charset conversion)
. importing SPORTSCN's objects into SPORTSCN
. . importing table                            "A"       1449 rows imported
. . importing table               "ADS_STATISTICS"       2301 rows imported
. . importing table                  "ANSWER_INFO"         37 rows imported


. . importing table               "ADS_STATISTICS"       2301 rows imported
. . importing table                  "ANSWER_INFO"         37 rows imported
. . importing table              "AUDIO990_DETAIL"          1 rows imported
. . importing table                            "B"       1514 rows imported
. . importing table        "BAK#ODDS_ASIAN_DETAIL"      59156 rows imported
. . importing table       "BAK#ODDS_EUROPE_DETAIL"      84100 rows imported
. . importing table   "BAK_BETBRAIN_SPCN_TEAM_MAP"       1107 rows imported
. . importing table            "BANKER_SPCN_MATCH"      11243 rows imported
. . importing table             "BANKER_SPCN_TEAM"        837 rows imported
IMP-00017: following statement failed with ORACLE error 1452:
"CREATE UNIQUE INDEX "IDX_BANKER_SPCN_TEAM" ON "BANKER_SPCN_TEAM" ("TEAMNAME"
"" )  PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 F"
"REELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "USERS" LOGGING"
IMP-00003: ORACLE error 1452 encountered
ORA-01452: cannot CREATE UNIQUE INDEX; duplicate keys found
IMP-00017: following statement failed with ORACLE error 20000:
"BEGIN  DBMS_STATS.SET_INDEX_STATS(NULL,'"IDX_BANKER_SPCN_TEAM"',NULL,NULL,N"
"ULL,837,3,837,1,1,400,1,6); END;"
IMP-00003: ORACLE error 20000 encountered
ORA-20000: INDEX "SPORTSCN"."IDX_BANKER_SPCN_TEAM" does not exist or insufficient privileges
ORA-06512: at "SYS.DBMS_STATS", line 2121
ORA-06512: at "SYS.DBMS_STATS", line 5393
ORA-06512: at line 1
. . importing table            "BB_PARAM_OPERTIME"          4 rows imported
. . importing table           "BETBRAIN_BOOKMAKER"        116 rows imported
. . importing table          "BETBRAIN_DATA_MATCH"       9927 rows imported
. . importing table               "BETBRAIN_EVENT"      56319 rows imported
. . importing table            "BETBRAIN_EXCHANGE"
IMP-00058: ORACLE error 1013 encountered
ORA-01013: user requested cancel of current operation
IMP-00028: partial import of previous table rolled back: 9453 rows rolled back
. . importing table          "BETBRAIN_ODDS_ASIAN"     602133 rows imported
. . importing table         "BETBRAIN_ODDS_EUROPE"    1492741 rows imported



省略N多报错信息~~~~~~~~~~~~~~~


数据时从服务器A上面搞得 在服务器B上面导入
oracle的版本一样

[ 本帖最后由 ppiqq 于 2009-12-1 10:32 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2009-12-01 10:36 |只看该作者
你的IMP操作应该做过很多次吧,报错是重复的主键,是不是你前次导入到时候主键已经生成,而再次导入需要创建相同的主键就报错了,可以使用ignore=y忽略这类创建错误

论坛徽章:
0
3 [报告]
发表于 2009-12-01 10:38 |只看该作者

回复 #2 sqmax 的帖子

是做了几次

但是每次做的时候为了保险期间
我都是将数据表空间 以及数据文件 甚至是用户给删除了

然后重新建立数据表和用户

然后执行的导入的操作

论坛徽章:
0
4 [报告]
发表于 2009-12-01 10:38 |只看该作者
我在多说一句,由于你导入客户端的字符集同导入服务器的字符集不一致,可能你导入到数据会出现乱码,我建议你先使用csscan命令检查一下字符集是否兼容再导数据,尽量减少无谓操作

论坛徽章:
0
5 [报告]
发表于 2009-12-01 10:40 |只看该作者
客户端
SQL>  SELECT NAME,VALUE$ FROM SYS.PROPS$ WHERE NAME='NLS_CHARACTERSET';

NAME
------------------------------------------------------------
VALUE$
--------------------------------------------------------------------------------
NLS_CHARACTERSET
WE8ISO8859P1

服务端:
SQL>  SELECT NAME,VALUE$ FROM SYS.PROPS$ WHERE NAME='NLS_CHARACTERSET';

NAME
------------------------------
VALUE$
--------------------------------------------------------------------------------
NLS_CHARACTERSET
ZHS16GBK

客户端:
[root@db-oracle1 ~]# echo $NLS_LANG
american_america.zhs16gbk




服务端:
[root@db-oracle1 ~]# echo $NLS_LANG
american_america.zhs16gbk

论坛徽章:
0
6 [报告]
发表于 2009-12-01 10:43 |只看该作者
import done in ZHS16GBK character set and AL16UTF16 NCHAR character set
import server uses WE8ISO8859P1 character set (possible charset conversion)
export client uses US7ASCII character set (possible charset conversion)

你导入到客户端使用的是US7ASCII字符集,而你导入的客户端使用的是ZHS16GBK,而服务器使用的是WE8ISO8859P1,都是不兼容的!
你可以按照原来的服务器字符集新建一个实例,然后使用你导入的主机进行到新服务器的数据导入,否则只能修改客户端的nls_lang参数

[ 本帖最后由 sqmax 于 2009-12-1 10:45 编辑 ]

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
7 [报告]
发表于 2009-12-01 10:44 |只看该作者
LZ,唯一索引重复了,你是不是在反复的IMP或者IMP之前的数据里有你IMP的数据。

论坛徽章:
0
8 [报告]
发表于 2009-12-01 10:49 |只看该作者
原帖由 ppiqq 于 2009-12-1 10:38 发表
是做了几次

但是每次做的时候为了保险期间
我都是将数据表空间 以及数据文件 甚至是用户给删除了

然后重新建立数据表和用户

然后执行的导入的操作


哦,刚才没注意看有这么一条
ORA-20000: INDEX "SPORTSCN"."IDX_BANKER_SPCN_TEAM" does not exist or insufficient privileges

你导入的用户权限不够,在导入前最好临时给无限表空间和sysdba

论坛徽章:
0
9 [报告]
发表于 2009-12-01 12:11 |只看该作者

回复 #8 sqmax 的帖子

回复大大

我又重新建立了数据库 然后指定了和服务器一样的字符集
现在正在导入 貌似没有问题………………………………………………………………

论坛徽章:
0
10 [报告]
发表于 2009-12-01 12:57 |只看该作者
:wink:
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP