将远程oracle数据库导入到本地
一、切换用户先从普通用户 切换到root (有些时候会因为无权限直接执行 su - oracle 会被拒绝)fssa@jzsql.sn.com:/home/fssa>su -从当前用户切换到oracle[root@jzsql ~]$ su - oracle二、统计一编码[oracle@jzsql ~] >export NLS_LANG=AMERICAN_A...
·
一、切换用户
先从普通用户 切换到root (有些时候会因为无权限直接执行 su - oracle
会被拒绝)
fssa@jzsql.sn.com:/home/fssa>su -
从当前用户切换到oracle
[root@jzsql ~]$ su - oracle
二、统计一编码
[oracle@jzsql ~] > export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
【温馨提示】为了杜绝导入到本地后出现common 乱码,最好在导出前执行一下,统一一下编码格式;因为我本地oracle 也是GBK编码,所以NLS_LANG
后面是AMERICAN_AMERICA.ZHS16GBK
如果不是就根据自己相应的编码进行设置。
oracle字符集查看
执行如下命令,查看oracle 数据库字符集
SQL> select userenv('language') from dual;
屏幕会有类似如下提示:
USERENV('LANGUAGE')
----------------------------------------------------
AMERICAN_AMERICA.ZHS16GBK
三、执行exp进行数据导出
[oracle@jzsql ~]$ exp fssa/oracle@jzsql owner=fssa file=databasefssa.mp
-
- 其中
fssa/oracle@jzsql
的fssa
为远程 oracle 数据库的用户名,
- 其中
-
- 其中
fssa/oracle@jzsql
的oracle
为远程oracle数据库的密码;
- 其中
-
- 其中
fssa/oracle@jzsql
的jzsql
为远程oracle数据库的实例
- 其中
-
- 其中
owner
指定远程数据库的持有者为fssa
;
- 其中
-
- 其中
file
指定导出的.dmp
文件路径以及 文件名称:/home/dataExp.dmp
;如下图~
- 其中
四、执行 imp 将.dmp文件导入到本地oracle数据库
C:\Windows\System32> imp fssa/oracle@localhost:1521/orcl formuser=fssa touser=fssa file=d:/databasefssa.dmp
-
- 其中
fssa/oracle@localhost:1521/orcl
的fssa
为本地数据库名
- 其中
-
- 其中
fssa/oracle@localhost:1521/orcl
的oracle
为本地数据密码
- 其中
-
- 其中
fssa/oracle@localhost:1521/orcl
的orcl
为本地数据的实例
- 其中
-
- 其中
formuser=fssa
指定 .dmp 数据原本的持有者
- 其中
-
- 其中
touser=fssa
指定本地数据库持有者
- 其中
-
- 其中
file
指定 .dmp文件路径
- 其中
五、解决导入提示表空间缺失的问题
如上图导入时也许会提示 如下异常信息
DRA-00959: tablespace 'TBS_FSSA' does not exist
. importing table "FSSA_POPULATION" 0 rows imported
. importing table "FSSA_POP_ACCT" 0 rows imported
能够根据提示发现是缺少了一个 叫 TBS_FSSA
的 tablespace
登录本地oracle数据库
C:\Windows\System32> sqlplus/nolog
SQL >conn / as sysdba
执行如下命令创建表空间
SQL > create tablespace TBS_FSSA datafile 'D:\develop\oradata\mytestTablespace\TBS_FSSA.dbf' size 100M autoextend on;
-
- 其中
TBS_FSSA
指定表空间名称
- 其中
-
- 其中
datafile
指定表空间存储的位置;(注意: 这个目录必须先创建好,否则执行会报错;假如其中的mytestTablespace
目录原本并不存在,那么执行表空间创建就会报错)
- 其中
创建用户并指定默认的表空间
SQL>create user fssa identified by oracle default tablespace TBS_FSSA account unlock;
用户创建和权限指定等就不细说了,完整操作 如下图
到此为止 ,重新执行第四步操作,数据库导入及可成功。
更多推荐
已为社区贡献2条内容
所有评论(0)