`

oracle 数据导入导出

阅读更多
一、

1.
Select * from SESSION_ROLES order by ROLE
 

说明: 这个查询会返回当前用户所被授予的全部角色, 其中包括

嵌套授权的角色. 例如将DBA角色授予了一个用户,DBA角色

已经被授予的角色(例如 exp_full_database 和 imp_full_database)

也会被查询出来             

2.
Select * from USER_ROLE_PRIVS


二、
-------------------------------------------------------------------
1、查看所有用户
  
  select * from dba_user;

  select * from all_users;

  select * from user_users;


  2、查看用户系统权限
  select * from dba_sys_privs;

  select * from all_sys_privs;

  select * from user_sys_privs;


  3、查看用户对象权限
  select * from dba_tab_privs;

  select * from all_tab_privs;

  select * from user_tab_privs;


  4、查看所有角色
  select * from dba_roles;

  5、查看用户所拥有的角色
  select * from dba_role_privs;

  select * from user_role_privs;


  6、查看当前用户的缺省表空间
  select username,default_tablespace from user_users;


  7、查看某个角色的具体权限
  grant connect,resource,create session,create view to TEST;

  8、查看RESOURCE具有那些权限

  
SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='RESOURCE';


------------------------------------------------------------------------
三、导出导入
1>.导出
1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中
exp system/manager@TEST file=d:\daochu.dmp full=y

2 将数据库中system用户与sys用户的表导出
 exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)

3 将数据库中的表table1 、table2导出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)

4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
  
exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like  '00%'\"

2> 导入
1 将D:\daochu.dmp 中的数据导入 TEST数据库中。
imp system/manager@TEST  file=d:\daochu.dmp

   上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
   在后面加上 ignore=y 就可以了。
2 将d:\daochu.dmp中的表table1 导入
imp system/manager@TEST  file=d:\daochu.dmp  tables=(table1) 


【说明】一般遇到IMP-00013: 只有 DBA 才能导入由其他 DBA 导出的文件

1. 授予执行导出的用户dba权限(导数前要grant,导入后要revoke dba权限)
2. 重新用非dba用户导出数据 (如果dmp文件比较大,需要消耗较长的时间)
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics