oracle导入导出完整命令,Oracle数据导入导出惯例命令整理

Oracle数据导入导出常规命令整理

最近在工作中涉及到对Oracle数据库进行备份、导入、改表等命令操作,现归纳总结出来供日后参阅。

1、--创建表空间并赋予表空间大小

create tablespace yutengspace

logging

datafile 'F:\oracle\product\10.2.0\oradata\yuteng\yuteng.dbf'

size 54m

autoextend on

next 54m maxsize 2048m

extent management local;

2、导入dmp数据文件,重复导入时需删除用户再创建用户再导入,否则会报数据索引错误。因为imp命令执行的是insert操作。

sqlplus system/root@eb @createUser.sql

imp neweb/root@eb file="f:\169dbbak\new_eb_db_bak\newEB_2011-06-10_.dmp" ignore=y frmuser=neweb tables(a,b,c)

--ignore=y 表示忽略创建错误,继续后面的操作

--full( 全库导出): 导出除ORDSYS,MDSYS,CTXSYS,ORDPLUGINS,LBACSYS 这些系统用户之外的所有用户的数据.

createUser.sql内容如下(主要实现删用户,建用户):

--把system和root改为具有sysdba权限的用户名和密码(如sys用户)

conn system/root@eb as sysdba

--删除原neweb 用户

DROP USER neweb CASCADE

/

--创建用户neweb 密码为 root 并分配表空间和临时表空间(如果需要自定义表空间,则需提前建表空间,命令见第1条)

CREATE USER neweb IDENTIFIED BY "root" default tablespace users temporary tablespace temp

/

--给neweb 用户DBA权限

GRANT DBA TO neweb

/

--用neweb 用户连接数据库

CONN neweb/root@eb

commit;

exit;

3、数据库导出命令

@echo off

@echo ================================================

@echo windows环境下Oracle数据库的自动备份脚本

@echo 说明:启动备份时,需要配置以下变量

@echo 1、BACKUP_DIR 指定要备份到哪个目录

@echo 2、ORACLE_USERNAME 指定备份所用的Oracle用户名

@echo 3、ORACLE_PASSWORD 指定备份所用的Oracle密码

@echo 4、ORACLE_DB 指定备份所用的Oracle连接名

@echo 5、BACK_OPTION 备份选项,可以为空,可以为full=y,可以为owner=a用户,b用户 等等....

@echo 6、RAR_CMD 指定RAR命令行压缩工具所在目录

@echo ================================================

set BACKUP_DIR=E:\SERVER-U\new_eb_db_bak

set ORACLE_USERNAME=neweb

set ORACLE_PASSWORD=root

set ORACLE_DB=newEB

set BACK_OPTION=owner=neweb

for /f "tokens=1,2" %%a in ('date/t') do set TODAY=%%a

set BACK_NAME=%ORACLE_DB%_%TODAY%_

set BACK_FULL_NAME=%BACKUP_DIR%\%BACK_NAME%

exp %ORACLE_USERNAME%/%ORACLE_PASSWORD%@%ORACLE_DB% %BACK_OPTION% file="%BACK_FULL_NAME%.dmp" log="%BACK_FULL_NAME%exp.log"

4、修改原字段名

ALTER TABLE product_dc RENAME COLUMN description TO description_temp;

5、添加一个和原字段同名的字段

ALTER TABLE product_dc ADD description clob;

6、将原来的数据更新到新字段中这是要注意,一定要显示进行数据类型转换(不同于MSSQL)

UPDATE product_dc SET description = CAST(description_temp AS VARCHAR2(4000));

7、删除原来的备份字段

ALTER TABLE product_dc DROP COLUMN description_temp;

都是一些常规命令,主要是记录一下方便以后查阅。^_^

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值