欢迎投稿

今日深度:

不同用户导出导入时,表空间的问题

不同用户导出导入时,表空间的问题


1. 建立数据表空间,索引表空间 2. 创建用户jerry并授权 3. 为用户jerry创建表,索引,并插入数据 4. 导出jerry的数据 5. 创建用户peter并授权 6. 将jerry的数据导入到peter用户下(原表空间存在和不存在两种情况) 7. 连接用户peter 查看表空间 结论: 原表空间存在时,导入到原表空间。 原表空间不存在时,导入到新用户(peter)的默认表空间,即原数据表空间和原索引表空间都对应成新用户的数据表空间。 所以在导出导入时,最好事先建立原数据的表空间。
--1. 建立数据表空间,索引表空间 conn / as sysdba create tablespace jerry_data datafile '+DGDATA1/orcl11g/jerry_data01.dbf' size 10m autoextend on next 10m maxsize 100m; create tablespace jerry_indx datafile '+DGDATA1/orcl11g/jerry_indx01.dbf' size 10m autoextend on next 10m maxsize 100m;
--2. 创建用户jerry并授权 drop user jerry cascade; create user jerry identified by jerry; grant connect,resource to jerry;
--3. 为用户jerry创建表,索引,并插入数据 conn jerry/jerry create table t1 (id number,name varchar2(10)) tablespace jerry_data; create index t1_id on t1(id) tablespace jerry_indx; insert into t1 values(1,'aaaaa'); commit;
--4. 导出jerry的数据 !exp jerry/jerry file='/tmp/jerry_full.dmp' log='/tmp/jerry_full.log';
--5. 创建用户peter并授权 conn / as sysdba drop user peter cascade; create user peter identified by peter; grant connect,resource,imp_full_database to peter;
--6. 将jerry的数据导入到peter用户下(原表空间不存在时) drop tablespace jerry_data including contents and datafiles; drop tablespace jerry_indx including contents and datafiles; !imp peter/peter fromuser=jerry touser=peter buffer=100000 ignore=y file='/tmp/jerry_full.dmp' log='/tmp/jerry_full_imp.log';
--7. 连接用户peter 查看表空间 conn peter/peter select table_name,tablespace_name from user_tables;
TABLE_NAME TABLESPACE_NAME ------------------------------ ------------------------------ T1 USERS
select index_name,tablespace_name from user_indexes; INDEX_NAME TABLESPACE_NAME ------------------------------ ------------------------------ T1_ID USERS
--8. 将jerry的数据导入到peter用户下(原表空间存在时) create tablespace jerry_data datafile '+DGDATA1/orcl11g/jerry_data01.dbf' size 10m autoextend on next 10m maxsize 100m; create tablespace jerry_indx datafile '+DGDATA1/orcl11g/jerry_indx01.dbf' size 10m autoextend on next 10m maxsize 100m; !imp peter/peter fromuser=jerry touser=peter buffer=100000 ignore=y file='/tmp/jerry_full.dmp' log='/tmp/jerry_full_imp.log';
--9. 连接用户peter 查看表空间 conn peter/peter select table_name,tablespace_name from user_tables;
TABLE_NAME TABLESPACE_NAME ------------------------------ ------------------------------ T1 JERRY_DATA
select index_name,tablespace_name from user_indexes;
INDEX_NAME TABLESPACE_NAME ------------------------------ ------------------------------ T1_ID JERRY_INDX

www.htsjk.Com true http://www.htsjk.com/shujukunews/207.html NewsArticle 不同用户导出导入时,表空间的问题 1. 建立数据表空间,索引表空间2. 创建用户jerry并授权3. 为用户jerry创建表,索引,并插入数据4. 导出jerry的数据5. 创建用户peter并授权6. 将jerry的数...
相关文章
    暂无相关文章
评论暂时关闭