ORACLE创建用户,表空间,并且导出数据,导出表

1、创建用户:

create user toptea2 identified by "用户名"

2、给用户授权

grant create session to 用户名;
grant create table to 用户名;
grant create tablespace to 用户名;
grant create view to 用户名;

3、查询表空间大小

select file_name,bytes/1024/1024||'M' "size" from dba_data_files;
4、创建表空间

create tablespace 表空间名 datafile '/data/oracle/oradata/nmcdesign/表空间名 .dbf' size 2048M autoextend on next 10m maxsize unlimited;

1) DATAFILE: 表空间数据文件存放路径
2) SIZE: 起初设置为200M
3) UNIFORM: 指定区尺寸为128k,如不指定,区尺寸默认为64k
4) 空间名称histdb 与 数据文件名称 histdb.dbf 不要求相同,可随意命名.
5) AUTOEXTEND ON/OFF 表示启动/停止自动扩展表空间
6) alter database datafile ' D:oracleproduct10.2.0oradataorclhistdb.dbf ' resize 500m; //手动修改数据文
tempfile是指临时文件,用于指定临时表空间的存储文件,
datafile是指数据文件,用于存储数据的文件,

5、给用户指定表空间

alter user 用户名 default tablespace 表空间名 

6、导出“用户名”用户的数据

参考:http://blog.csdn.net/xcymorningsun/article/details/72877156

expdp 用户名/密码@数据库名 schemas=toptea dumpfile=toptea.dmp logfile=日志名称.log

导出文件会放在:oracle/admin/nmcdesign/dpdump路径下

7、导入数据

 (1)改变用户导入:

  impdp 用户名1/密码@数据库名 DUMPFILE=备份文件.dmp REMAP_SCHEMA=用户名1:用户名2

 (2)改变表空间导入

   创建directory 虚拟路径 但是必须的有这个路径,不然会报错

  create directory directory_name as '备份文件的路径

  赋读写权限到这个路径

   grant read,write on directory directory_name  to 用户名; 

  导入数据

  impdp  用户名1/密码@数据库名 DUMPFILE=备份文件.dmp  REMAP_SCHEMA=用户名1:用户名2  DIRECTORY=toptea3 REMAP_TABLESPACE=FTOPTEA:users

 (3)跨版本导入

  跨版本导入必须在发出时指定oraacle版本

  expdp 用户名/密码@数据库名 schemas=toptea dumpfile=toptea.dmp logfile=日志名称.log  version=10.2.0.5.0 (目标数据库版本)

  impdp 用户名1/密码@数据库名 DUMPFILE=备份文件.dmp REMAP_SCHEMA=用户名1:用户名2

8、导出表

用户名/密码@数据库名 tables = 表名 dumpfile=导出文件.dmp logfile=日志文件.log

原文地址:https://www.cnblogs.com/xiaoyu1994/p/8305019.html