数据备份迁移



 1、到原数据库导出数据

sqlplus jxc/[email protected]:1521/echdgb
exp  jxc/[email protected]:1521/echdgb   file=expfile.dmp log=expfile.log
 

导出数据 

exp方式
exp  ttp/ttp@ttpdb owner=ttp  file=export20130628.dmp  log=export20130628.log
exp  ttp/******@ttprac owner=ttp  file=export20131213.dmp  log=export20131213.log
exp  ttp/******@ttprac owner=ttp  file=export20140106.dmp  log=export20140106.log  version=10.2.0.1.0

数据泵方式

--查看目录及权限
SELECT privilege, directory_name, DIRECTORY_PATH FROM user_tab_privs t, all_directories d
 WHERE t.table_name(+) = d.directory_name ORDER BY 2, 1;
3、执行导出
expdp lttfm/lttfm@fgisdb schemas=lttfm directory=dir_dp dumpfile =expdp_test1.dmp logfile=expdp_test1.log

expdp ttp/******@ttprac owner=ttp  file=export20140106.dmp  log=export20140106.log  version=10.2.0.1.0
expdp  ttp/******@ttprac owner=ttp schemas=ttp dumpfile=export20140106.dmp  log=export20140106.log  version=10.2.0.1.0

impdp ttptest/********@longge:1521/orcl remap_schema=ttp:ttptest dumpfile=sx_export20140613.dmp logfile=imp1.log directory=dir_dp

a、数据泵方式导出时候可能因为没有设置路径导致失败

创建路径,分配权限
create directory dir_dp as 'c:\';
grant read,write on directory dir_dp to ttptest;

b、数据导出时候可能因为字符集设置不当 导致失败

ZHS16GBK
SQL> select * from v$nls_parameters where parameter='NLS_CHARACTERSET';

PARAMETER                                                                                            VALUE
------------------------------- ---------------------------------------------------------------------------------------------------
NLS_CHARACTERSET                                                                             ZHS16GBK


echo $NLS_LANG
NLS_CHARACTERSET
set NLS_LANG=AMERICAN_AMERICA.AL32UTF8
set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

echo $NLS_LANG

如果是pc端远程导出 则设置pc段和服务端统一编码即可  set NLS_LANG=AMERICAN_AMERICA.AL32UTF8

dmp文件下载到本地。
打包资源文件


cd .../upload/
zip  -r ./upload20130628.zip ./*

 2、到目的数据库创建新用户导入数据

数据库查询 确定连接断开  后
用户情况:
select username,ACCOUNT_STATUS,LOCK_DATE from dba_users;

数据连接情况

SELECT s.SID, s.OSUSER, s.USERNAME, s.MACHINE, s.PROCESS, p.SPID from V$SESSION  s , v$process p where  s.PADDR = p.ADDR;

查询ttp用户数据对象:
select * from user_tables;

select o.OBJECT_NAME,o.OBJECT_TYPE,o.CREATED,o.LAST_DDL_TIME from user_objects o;

linux终端连接数据库设置显示格式

set line 200;
col  表空间名 for a30;
col  已使用空间(MB) for 999999;
col  剩余空间(MB) for 999999;
col  总的预分配空间(MB) for 999999;
col  已使用百分比 for a30;
col  剩余百分比 for a30;
col request_id for a30;
col REQSERIAL for a30;
col state for a5; DESTINATION_ID
col DESTINATION_ID for a15;

----查询数据库空间情况
select fs.tablespace_name "表空间名",(df.totalspace - fs.freespace) "已使用空间(MB)",
fs.freespace "剩余空间(MB)",df.totalspace "总的预分配空间(MB)",
round(100*((df.totalspace - fs.freespace)/df.totalspace),2)||' %' "已使用百分比",
round(100*(1-(df.totalspace - fs.freespace)/df.totalspace),2)||' %' "剩余百分比"
from (select tablespace_name,round(sum(bytes)/1048576) Totalspace
from dba_data_files group by tablespace_name) df,
(select tablespace_name,round(sum(bytes)/1048576) Freespace
from dba_free_space group by tablespace_name) fs
where df.tablespace_name = fs.tablespace_name;

创建新用户


create user sx_ttp identified by sx_ttp default tablespace TTP_DATA_TABLESPACE temporary tablespace temp account unlock;
grant resource to sx_ttp ;
grant connect to sx_ttp ;
grant dba to sx_ttp

用户情况:
select username,ACCOUNT_STATUS,LOCK_DATE from dba_users;

数据连接情况

SELECT s.SID, s.OSUSER, s.USERNAME, s.MACHINE, s.PROCESS, p.SPID from V$SESSION  s , v$process p where  s.PADDR = p.ADDR;


查看用户ttp数据对象:
select * from user_tables;

select o.OBJECT_NAME,o.OBJECT_TYPE,o.CREATED,o.LAST_DDL_TIME from user_objects o;

----查看用户对象所处在的表空间
select ob.owner,ts.name,ob.object_type,ob.object_name from dba_objects  ob,sys.ts$  ts,sys_objects os
where ob.object_id=os.object_id
and os.ts_number=ts.ts#
and ob.owner='TTPTEST'
order by ob.owner,ts.name,ob.object_type,ob.object_name

 如果没有需要的表空间

  方式一,数据泵方式 替换

     impdp ttptest/ttptest123@longge:1521/orcl remap_tablespace=TBS_TTP_DATA:DIC_DATA_TABLESPACE  remap_tablespace=TTP_DATA_TABLESPACE:DIC_DATA_TABLESPACE remap_schema=ttp:ttptest dumpfile=sx_export20140613.dmp logfile=imp1.log directory=dir_dp

  方式二,创建表空间:
select tablespace_name,file_id,round(bytes/(1024*1024),0) total_space,file_name from dba_data_files;
---C:\APP\TYDIC\ORADATA\ORCL\DIC_DATA01

CREATE SMALLFILE TABLESPACE "TTP_DATA_TABLESPACE"
DATAFILE '/oradata/yfxdb/ttp_yfx_data01' SIZE 2048M
 AUTOEXTEND ON NEXT 20M MAXSIZE UNLIMITED LOGGING
 EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO


---TTP_DATA_TABLESPACE   /oradata/yfxdb/users01.dbf



 

猜你喜欢

转载自longge308.iteye.com/blog/2183495