shakefeng

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

oracle数据库导入导出相关资料

新增表空间  :create tablespace 表间名 datafile '数据文件名' size 表空间大小

示例:create tablespace TS_TEST datafile '/home/oracle/data_1.dbf' size 2000M

 

查看表空间状态

select * from dba_data_files

 

表空间开启自增
alter DATABASE DATAFILE 'xxx.dbf' autoextend on NEXT 1024M maxsize 30720M

 

导出命令

exp 用户名/密码@197.3.136.214/rgsdb file=D:\table.dmp log=D:\tablelog.log owner=(用户名)

导入命令

imp 用户名/密码@197.0.32.24/phygodb file=D:\table.dmp log=D:\importlog.log fromuser=user1 touser=user2

导入某些表:TABLES=(a,b)

ignore=y作用:

1.如果用了参数ignore=y, 会把exp文件内的数据内容导入

2.如果表有唯一关键字的约束条件, 不合条件将不被导入

3.如果表没有唯一关键字的约束条件, 将引起记录重复

所以,在导入的时候,我们可以利用这个原则可以做一个增量导入,也可以先将表中的数据全部truncate掉再导入数据。

 

或者使用plsql自带的导入导出功能

导出:tools>>export user objects  注意用户不同时,不要选Include Owner

导入:tools>>import tables 注意不要选择Show

 

当导出时出现ORA-12899: value too large for column或者can bind a LONG value only for insert into a LONG column错误时

是由于原来数据库的编码是GBK的,每个汉字两个字节,但新数据库是UTF-8的,每个汉字是三个字节的,导致超过长度了

查看数据库字符集:select * from nls_database_parameters where parameter='NLS_CHARACTERSET'

解决方法:修改数据库字符集或者修改超过长度字段表的表结构

 

posted on 2019-05-21 14:37  wangzeyang  阅读(115)  评论(0)    收藏  举报