导出数据库教程

GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
https://cnsendnet.taobao.com
来自森大科技官方博客
http://www.cnsendblog.com/index.php/?p=1503

将A机器上的一个用户导入到B机器中,操作步骤:
1、将A机器上的某个用户导出(在A机器的命令行中操作)
exp username/password owner=username file=c:username.dmp rows=y
回车即可
用现场的用户名和密码替换上述命令中的用户名和密码
2、在B机器上的数据库中准备环境
准备环境包括两个部分:
一,A机器中用户USERNAME中所有表和索引使用的表空间在B机器中是否全部存在
可以在A机器中通过USERNAME登陆ORACLE,然后使用如下语句查询用户A都使用
了那些表空间:
select distinct TABLESPACE_NAME from user_tables
union
select distinct TABLESPACE_NAME from user_indexes;
然后在B机器上使用任何一个用户登陆ORACLE,然后通过如下语句查询B中的所有
表空间:
select * from dba_tablespaces;
然后对比一下,看看A使用的表空间在B中是否全部存在,如果有不存在的需要创建,
创建语句如下:
CREATE TABLESPACE "SNCP_ACCOUNTS_TBLSPACE"
LOGGING
DATAFILE 'd:oracleoradatasncpaccounts_1.ora' SIZE 100M
AUTOEXTEND
ON NEXT 2M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL;
需要调整表空间名称和位置
二、在B机器上创建一个与A机器中同名的用户,如果有的话就先删除把:
drop user username cascade;
然后通过如下语句创建:
--创建用户
CREATE USER username PROFILE "DEFAULT"
IDENTIFIED BY password DEFAULT TABLESPACE xxxxxxxx
TEMPORARY TABLESPACE yyyyyyyyy
ACCOUNT UNLOCK;
GRANT "CONNECT" TO username WITH ADMIN OPTION;
GRANT "DBA" TO username WITH ADMIN OPTION;
-----------
其中的xxxxxxx和yyyyyyyy可以在A机器中通过如下语句查询:
select
USERNAME,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE
from dba_users;
--找到相应用户的默认表空间和临时表空间


3、在B机器上导入(在B机器的命令行中操作,需要将A中导出的文件拷贝过来)
imp username/password fromuser=username rows=y file=c:username.dmp ignore=y

GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
https://cnsendnet.taobao.com
来自森大科技官方博客
http://www.cnsendblog.com/index.php/?p=1503

原文地址:https://www.cnblogs.com/cnsend/p/13799751.html