设为首页 收藏本站
查看: 739|回复: 0

[经验分享] ORACLE导入数据文件到指定的表空间

[复制链接]

尚未签到

发表于 2016-8-4 11:22:26 | 显示全部楼层 |阅读模式
最近工作中碰见ORACLE导入数据文件到指定的表空间中的事,虽然导入成功了。但这个功能应该算是我们在工作中经常碰见的需求,所以在此作个记录,以后用到也方便查找。
下面直接贴操作流程!

Microsoft Windows [版本 6.1.7600]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
C:\Users\Administrator>sqlplus / as sysdba;
SQL*Plus: Release 10.2.0.3.0 - Production on 星期二 8月 10 20:53:45 2010
Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.

连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning, OLAP and Data Mining options
--预防数据库中已经存在同名用户,执行所有操作前先drop一下
SQL> drop user pccuser cascade;
drop user pccuser cascade
*
第 1 行出现错误:
ORA-01918: 用户 'pccUSER' 不存在
--查看数据文件存放的位置
SQL> DESC DBA_DATA_FILES;
名称                                      是否为空? 类型
----------------------------------------- -------- ----------------------------
FILE_NAME                                          VARCHAR2(513)
FILE_ID                                            NUMBER
TABLESPACE_NAME                                    VARCHAR2(30)
BYTES                                              NUMBER
BLOCKS                                             NUMBER
STATUS                                             VARCHAR2(9)
RELATIVE_FNO                                       NUMBER
AUTOEXTENSIBLE                                     VARCHAR2(3)
MAXBYTES                                           NUMBER
MAXBLOCKS                                          NUMBER
INCREMENT_BY                                       NUMBER
USER_BYTES                                         NUMBER
USER_BLOCKS                                        NUMBER
ONLINE_STATUS                                      VARCHAR2(7)
SQL> SELECT FILE_NAME,TABLESPACE_NAME FROM DBA_DATA_FILES;
FILE_NAME
----------------------------------------------------------------------
TABLESPACE_NAME
------------------------------
D:\ORACLE\PRODUCT\10.2.0\ORADATA\OAMIS\USERS01.DBF
USERS
D:\ORACLE\PRODUCT\10.2.0\ORADATA\OAMIS\SYSAUX01.DBF
SYSAUX
D:\ORACLE\PRODUCT\10.2.0\ORADATA\OAMIS\UNDOTBS01.DBF
UNDOTBS1
已选择6行。
--创建表空间
SQL> CREATE TABLESPACE TEST_pcc_TBS DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\O
AMIS\TEST_pcc_TBS01.DBF' SIZE 100M
2  AUTOEXTEND on NEXT 500M MAXSIZE UNLIMITED
3  LOGGING
4  ONLINE
5  PERMANENT
6  EXTENT MANAGEMENT LOCAL AUTOALLOCATE
7  BLOCKSIZE 8K
8  SEGMENT SPACE MANAGEMENT AUTO;
表空间已创建。
--创建用户,并设置其默认的表空间
SQL> CREATE USER pccUSER IDENTIFIED BY pccUSER DEFAULT TABLESPACE TEST_pcc_TBS;
用户已创建。
SQL> GRANT CONNECT TO pccUSER;
授权成功。
SQL> GRANT RESOURCE TO pccUSER;
授权成功。
--该语句很重要(必须的)
SQL> ALTER USER pccUSER QUOTA 0 ON USERS;
用户已更改。
--让新建用户在其默认的表空间上拥有无限制的操作表空间的权限
SQL> ALTER USER pccUSER QUOTA UNLIMITED ON TEST_pcc_TBS;
用户已更改。
--用已经创建好的用户登录
SQL> CONN pccUSER/pccUSER
已连接。
SQL> SHOW USER;
USER 为 "pccUSER"
SQL> DESC USER_USERS;
名称                                      是否为空? 类型
----------------------------------------- -------- ----------------------------
USERNAME                                  NOT NULL VARCHAR2(30)
USER_ID                                   NOT NULL NUMBER
ACCOUNT_STATUS                            NOT NULL VARCHAR2(32)
LOCK_DATE                                          DATE
EXPIRY_DATE                                        DATE
DEFAULT_TABLESPACE                        NOT NULL VARCHAR2(30)
TEMPORARY_TABLESPACE                      NOT NULL VARCHAR2(30)
CREATED                                   NOT NULL DATE
INITIAL_RSRC_CONSUMER_GROUP                        VARCHAR2(30)
EXTERNAL_NAME                                      VARCHAR2(4000)
SQL> SELECT USERNAME,DEFAULT_TABLESPACE FROM USER_USERS;
USERNAME                       DEFAULT_TABLESPACE
------------------------------ ------------------------------
pccUSER                        TEST_pcc_TBS
SQL>
SQL> exit
从 Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning, OLAP and Data Mining options 断开
C:\Users\Administrator>d:
--执行imp导入数据
D:\>imp parfile=imp.txt
Import: Release 10.2.0.3.0 - Production on 星期二 8月 10 21:13:04 2010
Copyright (c) 1982, 2005, Oracle.  All rights reserved.

连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning, OLAP and Data Mining options
经由常规路径由 EXPORT:V10.02.01 创建的导出文件
IMP-00013: 只有 DBA 才能导入由其他 DBA 导出的文件
IMP-00000: 未成功终止导入
--从上面的异常信息可以看出,用户需要导入的数据是由具有dba权限的用户所导出的
--因此我们导入的用户也应该具备有dba的权限
D:\>sqlplus / as sysdba;
SQL*Plus: Release 10.2.0.3.0 - Production on 星期二 8月 10 21:14:08 2010
Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.

连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
With the Partitioning, OLAP and Data Mining options
--给pccuser用户授以dba的权限
SQL> grant dba to pccuser;
授权成功。
--执行导入imp
D:\>imp parfile=imp.txt
Import: Release 10.2.0.3.0 - Production on 星期二 8月 10 21:14:37 2010
Copyright (c) 1982, 2005, Oracle.  All rights reserved.

连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Pro
With the Partitioning, OLAP and Data Mining options
经由常规路径由 EXPORT:V10.02.01 创建的导出文件
警告: 这些对象由 pcc 导出, 而不是当前用户
已经完成 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的导入
导出客户机使用 ZHS16CGB231280 字符集 (可能的字符集转换)
. 正在将 pcc 的对象导入到 pccUSER
. . 正在导入表                      "COUNTSUM"导入了           1 行
. . 正在导入表                "PCSS_TF_TJ_TAB"导入了       21868 行
. . 正在导入表               "pcc_ALL_LOG_TAB"导入了         407 行
. . 正在导入表          "pcc_ALL_USER_BAK_TAB"导入了        8407 行
. . 正在导入表              "pcc_ALL_USER_TAB"导入了        2659 行
. . 正在导入表             "pcc_CITY_DESC_TAB"导入了           1 行
. . 正在导入表                "pcc_CLIENT_VER"导入了           1 行
. . 正在导入表        "pcc_DELETE_USERS_BAK_T"导入了        6085 行
. . 正在导入表       "pcc_DEL_ENINFO_BACK_TAB"导入了          36 行
. . 正在导入表               "pcc_EN_FILE_TAB"导入了        2422 行
. . 正在导入表        "pcc_EN_GPUSER_BACK_TAB"导入了          97 行
. . 正在导入表             "pcc_EN_GPUSER_TAB"导入了        4874 行
. . 正在导入表         "pcc_EN_GROUP_BACK_TAB"导入了           1 行
. . 正在导入表              "pcc_EN_GROUP_TAB"导入了         427 行
. . 正在导入表               "pcc_EN_INFO_TAB"导入了         222 行
. . 正在导入表               "pcc_EN_LOGO_TAB"导入了           0 行
. . 正在导入表        "pcc_EN_MNUSER_BACK_TAB"导入了          21 行
. . 正在导入表             "pcc_EN_MNUSER_TAB"导入了         205 行
. . 正在导入表              "pcc_EN_QUERY_GTO"导入了         107 行
成功终止导入, 没有出现警告。
--验证导入的数据是否导入到了指定的表空间中
SQL> select table_name,tablespace_name from tabs
TABLE_NAME                     TABLESPACE_NAME
------------------------------ -----------------
COUNTSUM                       TEST_pcc_TBS
PCSS_CDR_GTO_GTT_TAB           TEST_pcc_TBS
PCSS_CDR_LMQ_TAB               TEST_pcc_TBS
PCSS_CDR_OCO_OCT_TAB           TEST_pcc_TBS
PCSS_CDR_OFO_OFT_TAB           TEST_pcc_TBS
PCSS_CDR_OTO_OTT_TAB           TEST_pcc_TBS
PCSS_CDR_UAG_UDG_TAB           TEST_pcc_TBS
PCSS_CDR_ULO_ULF_TAB           TEST_pcc_TBS
PCSS_TF_TJ_TAB                 TEST_pcc_TBS
pcc_ALL_LOG_TAB                TEST_pcc_TBS
pcc_ALL_USER_BAK_TAB           TEST_pcc_TBS

--因为给一个用户授予dba权限,对数据库来说不安全,所以在当该用户执行导入操作完成后,应该收回dba的权限
SQL>CONN / AS SYSDBA;
SQL> revoke dba from pccuser;
撤销成功。

--给出导入脚本文件imp.txt内容如下:
userid=pccuser/pccuser--[说明:如果该登录oracle数据库的用户具有dba权限,则pcc用户不要求一定具有dba权限;该说明只对具有dba权限的用户导出的数据文件起作用]
buffer=4096000
log=imp.log
file=D:\orcl_db.dump
fromuser=pcc
touser=pccuser

ORACLE中国官网:
http://www.oracle.com/technology/global/cn/index.html

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-252699-1-1.html 上篇帖子: Oracle RAC Node Reboot Problem (fatal status 13) 下篇帖子: ORACLE 安装时的密码忘记了的处理方式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表