oracle中aix至Linux导出,Oracle数据导入导出详细步骤

Oracle数据导入导出详细步骤

说明:

1.请先设置好oracle实例的环境变量[grneas是当前已安装的数据库实例名]

Windows下在cmd命令窗口执行:set ORACLE_SID=grneas

Linux/AIX下在终端窗口执行:export

ORACLE_SID=grneas

Windows下查看该变量是否正确的命令:echo %ORACLE_SID%

Linux/AIX下查看该变量是否正确的命令:echo $ORACLE_SID

2.进入sqlplus窗口的命令:

所有操作系统都用:sqlplus /nolog

conn / as sysdba

一、Oracle数据导出(备份)

1.创建目录(导出文件存放位置)

在sqlplus窗口下执行:

create

directory expdpdir as '/oradata/easbak';

其中:expdpdir为目录名,/oradata/easbak是文件存放位置

2.目录授权

在sqlplus窗口下执行:

grant read,write on directory expdpdir to system,grneas;

其中:expdpdir为目录名,grneas是EAS用户名

3.数据导出

windows在cmd窗口,linux、AIX在终端ssh窗口直接执行:(不要进入sqlplus窗口)

expdp grneas/kingdee@grneas schemas=grneas directory=expdpdir

dumpfile=grneas_20110706.dmp

logfile=grneas_20110706.log

说明:1).以上命令要在同一行输入再回车

2).其中的grneas/kingdee@grneas是指要连接的数据库实例、用户及密码,若已在前面设置好环境变量ORACLE_SID为当前要导出的实例,则可不加@grneas

3).schemas=grneas表示要导出的EAS用户(方案)为grneas,在oracle下,数据库对象在不同用户间是隔离的,每个用户都有自己的一些表、视图等,所以我们只要导出EAS用户的数据就可以了

4).directory=expdpdir表示导出时使用的目录,也就是文件存放的位置

5).dumpfile=grneas_20110706.dmp表示导出的数据文件名

6).logfile=grneas_20110706.log表示导出日志文件名,也存放在相同目录下

二、Oracle数据导入(还原)

以下是将原grneas数据备份还原到新账套grneas2

1.创建表空间

在sqlplus窗口下执行:

create tablespace

EAS_D_grneas2_STANDARD datafile

'/oradata/test/EAS_D_grneas2_STANDARD.dbf'

size 2000m;

以上命令创建数据表空间,要在同一行下回车执行

create temporary

tablespace EAS_T_grneas2_STANDARD tempfile

'/oradata/test/EAS_T_grneas2_STANDARD.dbf'

size 500m;

以上命令创建临时表空间,要在同一行下回车执行

2.设置表空间自动增长

在sqlplus窗口下执行:

alter database datafile '/oradata/test/EAS_D_grneas2_STANDARD.dbf'

autoextend on;

alter database tempfile '/oradata/test/EAS_T_grneas2_STANDARD.dbf'

autoextend on;

3.创建目录(若目录已创建,可以略去不做,准备导入的备份文件要放在此目录下)

在sqlplus窗口下执行:

create

directory expdpdir as '/oradata/easbak';

4.创建用户grneas2

在sqlplus窗口下执行:

create user grneas2

identified by kingdee default tablespace EAS_D_grneas2_STANDARD temporary

tablespace EAS_T_grneas2_STANDARD;

说明:identified by kingdee表示密码为kingdee

5.用户授权

grant connect,resource,dba to grneas2;

6.目录授权

grant read,write on directory expdpdir

to system,grneas2;

--------------------------------------------

7.数据导入(将原grneas账套恢复到一个新的grneas2账套)

impdp grneas2/kingdee@grneas directory=expdpdir dumpfile=grneas_20110706.dmp

logfile=impgrneas_20110706.log  schemas=grneas  remap_schema=grneas:grneas2

remap_tablespace=EAS_D_grneas_STANDARD:EAS_D_grneas2_STANDARD,EAS_T_grneas_STANDARD:EAS_T_grneas2_STANDARD

--sqlfile=script.sql (生成SQL脚本)

说明:1).以上命令要在同一行输入再回车

2).其中的grneas2/kingdee@grneas是指要连接的数据库实例、用户及密码,若已在前面设置好环境变量ORACLE_SID为当前要导入的实例,则可不加@grneas

3).schemas=grneas表示要导入的原EAS用户(方案)为grneas

4).directory=expdpdir表示导入时使用的目录,也就是文件存放的位置

5).dumpfile=grneas_20110706.dmp表示要导入的数据文件

6).logfile=impgrneas_20110706.log表示导入时产生的日志文件

7).remap_schema=grneas:grneas2表示将原grneas导入到新的grneas2

8).remap_tablespace=EAS_D_grneas_STANDARD:EAS_D_grneas2_STANDARD

,EAS_T_grneas_STANDARD:EAS_T_grneas2_STANDARD表示导入的数据也由原来的EAS_D_grneas_STANDARD改为存储到EAS_D_grneas2_STANDARD表空间

9).--sqlfile=script.sql (生成SQL脚本)表示只生成脚本,有加这个参数就只生成脚本没有导入数据,要查看脚本才加这个参数,否则在导入的时候,就不要加这个参数

注意区别大小写……

其它oracle命令

--------------------------------------------

查看用户与表空间

Select * from dba_users;

--------------------------------------------

查看锁表进程SQL语句1:

select sess.sid,

sess.serial#,

lo.oracle_username,

lo.os_user_name,

ao.object_name,

lo.locked_mode

from v$locked_object lo,

dba_objects ao,

v$session sess

where ao.object_id = lo.object_id and

lo.session_id = sess.sid;

---------------------------------------------

查看锁表进程SQL语句2:

select * from v$session t1, v$locked_object

t2 where t1.sid = t2.SESSION_ID;

---------------------------------------------

杀掉锁表进程:

如有記錄則表示有lock,記錄下SID和serial#,將記錄的ID替換下面的738,1429,即可解除LOCK

alter system kill session '738,1429';

---------------------------------------------

数据库用户被锁定时解锁命令

alter user theas account unlock;

---------------------------------------------

启动EM

emctl start dbconsole

你可能感兴趣的:(oracle中aix至Linux导出,Oracle数据导入导出详细步骤)