impdp expdp使用小结

本文介绍了一种通过Oracle的EXPDP和IMPDP工具进行数据库迁移的方法。详细记录了从旧数据库导出数据到新数据库导入数据的全过程,并提供了多个实用的命令示例。

最近我们迁移数据库,其中涉及到了数据迁移

sql如下

写道
--建立导出目录,注意一般使用expdp都是在数据库安装机子上运行,虽然可以客户端导出,但是考虑到网络传输速度,我强烈不建议那么做,所以要注意数据库安装的机子上你得自建立对应目录,下面那条sql并不自己主动建立实际物理路径,我使用sys建立的
create directory dump_dir_E as 'E:\OracleBotWarden';

--这个大家都懂
grant READ ,WRITE ON DIRECTORY dump_dir TO yguo;

--查看下建立的成功与否,以及别的目录
select * from dba_directories;
alter user (yguo) default role exp_full_database

--关键语句,expdp支持并行,有日志,content是核心,可以控制导出类型,具体后面有说
EXPDP yguo/botnet@XE directory=DUMP_DIR CONTENT=METADATA_ONLY dumpfile=OracleBotWardenALL_2010_12_02.dmp parallel=4 logfile=exp.log

 

 

然后去新数据库机子上把生成的文件拷过去,然后执行导入

写道
--因为是新数据库,所以要建立对应user,这里可以建成和以前不一样的,但是导入过程中会报错,但是不影响导入,自己选择了
create user yguo identified by dbimp;
create user botnet identified by dbimp;

GRANT DBA TO yguo;
--跟导出一个道理
create directory dump_dir as '/home/oracle/oracle_tools/yguo_data';
grant read,write on directory dump_dir to yguo;
--注意表空间不是自动生成的,所以你得自己手动建立对应的表空间,而且名字要一样,
create bigfile tablespace skyeye datafile '/home/oracle/oracle_data/skyeyespace.dbf' size 100m reuse
autoextend on maxsize unlimited
default storage(initial 320k
next 320k
minextents 1
maxextents unlimited
pctincrease 0);
create bigfile tablespace ATTKEVNT_SPACE2 datafile '/home/oracle/oracle_data/ATTKEVNT_SPACE2.dbf' size 100m reuse
autoextend on maxsize unlimited
default storage(initial 320k
next 320k
minextents 1
maxextents unlimited
pctincrease 0);
create bigfile tablespace ATTKEVNT_SPACE3 datafile '/home/oracle/oracle_data/ATTKEVNT_SPACE3.dbf' size 100m reuse
autoextend on maxsize unlimited
default storage(initial 320k
next 320k
minextents 1
maxextents unlimited
pctincrease 0);

--下面就是具体的了
Impdp yguo/botnet DIRECTORY=dump_dir DUMPFILE=ORACLEBOTWARDENALL_2010_12_02.DMP REUSE_DATAFILES=y

 

 

具体参数列表

写道
Expdp/Impdp的相关参数
EXPDP命令行选项
1. ATTACH
该选项用于在客户会话与已存在导出作用之间建立关联.语法如下
ATTACH=[schema_name.]job_name
Schema_name用于指定方案名,job_name用于指定导出作业名.注意,如果使用ATTACH选项,在命令行除了连接字符串和ATTACH选项外,不能指定任何其他选项,示例如下:
Expdp scott/tiger ATTACH=scott.export_job
2. CONTENT
该选项用于指定要导出的内容.默认值为ALL
CONTENT={ALL | DATA_ONLY | METADATA_ONLY}
当设置CONTENT为ALL 时,将导出对象定义及其所有数据.为DATA_ONLY时,只导出对象数据,为METADATA_ONLY时,只导出对象定义
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump
CONTENT=METADATA_ONLY
3. DIRECTORY
指定转储文件和日志文件所在的目录
DIRECTORY=directory_object
Directory_object用于指定目录对象名称.需要注意,目录对象是使用CREATE DIRECTORY语句建立的对象,而不是OS 目录
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump
建立目录:
CREATE DIRECTORY dump as ‘d:dump’;
查询创建了那些子目录:
SELECT * FROM dba_directories;
4. DUMPFILE
用于指定转储文件的名称,默认名称为expdat.dmp
DUMPFILE=[directory_object:]file_name [,….]
Directory_object用于指定目录对象名,file_name用于指定转储文件名.需要注意,如果不指定directory_object,导出工具会自动使用DIRECTORY选项指定的目录对象
Expdp scott/tiger DIRECTORY=dump1 DUMPFILE=dump2:a.dmp
5. ESTIMATE
指定估算被导出表所占用磁盘空间分方法.默认值是BLOCKS
EXTIMATE={BLOCKS | STATISTICS}
设置为BLOCKS时,oracle会按照目标对象所占用的数据块个数乘以数据块尺寸估算对象占用的空间,设置为STATISTICS时,根据最近统计值估算对象占用空间
Expdp scott/tiger TABLES=emp ESTIMATE=STATISTICS
DIRECTORY=dump DUMPFILE=a.dump
6. EXTIMATE_ONLY
指定是否只估算导出作业所占用的磁盘空间,默认值为N
EXTIMATE_ONLY={Y | N}
设置为Y时,导出作用只估算对象所占用的磁盘空间,而不会执行导出作业,为N时,不仅估算对象所占用的磁盘空间,还会执行导出操作.
Expdp scott/tiger ESTIMATE_ONLY=y NOLOGFILE=y
7. EXCLUDE
该选项用于指定执行操作时释放要排除对象类型或相关对象
EXCLUDE=object_type[:name_clause] [,….]
Object_type用于指定要排除的对象类型,name_clause用于指定要排除的具体对象.EXCLUDE和INCLUDE不能同时使用
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEW
8. FILESIZE
指定导出文件的最大尺寸,默认为0,(表示文件尺寸没有限制)
9. FLASHBACK_SCN
指定导出特定SCN时刻的表数据
FLASHBACK_SCN=scn_value
Scn_value用于标识SCN值.FLASHBACK_SCN和FLASHBACK_TIME不能同时使用
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp
FLASHBACK_SCN=358523
10. FLASHBACK_TIME
指定导出特定时间点的表数据
FLASHBACK_TIME=”TO_TIMESTAMP(time_value)”
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_TIME=
“TO_TIMESTAMP(’25-08-2004 14:35:00’,’DD-MM-YYYY HH24:MI:SS’)”

2009-7-6 15:49 回复

bd6826387
1位粉丝
4楼

11. FULL
指定数据库模式导出,默认为N
FULL={Y | N}
为Y时,标识执行数据库导出.
12. HELP
指定是否显示EXPDP命令行选项的帮助信息,默认为N
当设置为Y时,会显示导出选项的帮助信息.
Expdp help=y
13. INCLUDE
指定导出时要包含的对象类型及相关对象
INCLUDE = object_type[:name_clause] [,… ]
14. JOB_NAME
指定要导出作用的名称,默认为SYS_XXX
JOB_NAME=jobname_string
15. LOGFILE
指定导出日志文件文件的名称,默认名称为export.log
LOGFILE=[directory_object:]file_name
Directory_object用于指定目录对象名称,file_name用于指定导出日志文件名.如果不指定directory_object.导出作用会自动使用DIRECTORY的相应选项值.
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp logfile=a.log
16. NETWORK_LINK
指定数据库链名,如果要将远程数据库对象导出到本地例程的转储文件中,必须设置该选项.
17. NOLOGFILE
该选项用于指定禁止生成导出日志文件,默认值为N.
18. PARALLEL
指定执行导出操作的并行进程个数,默认值为1
19. PARFILE
指定导出参数文件的名称
PARFILE=[directory_path] file_name
20. QUERY
用于指定过滤导出数据的where条件
QUERY=[schema.] [table_name:] query_clause
Schema 用于指定方案名,table_name用于指定表名,query_clause用于指定条件限制子句.QUERY选项不能与 CONNECT=METADATA_ONLY,EXTIMATE_ONLY,TRANSPORT_TABLESPACES等选项同时使用.
Expdp scott/tiger directory=dump dumpfiel=a.dmp
Tables=emp query=’WHERE deptno=20’
21. SCHEMAS
该方案用于指定执行方案模式导出,默认为当前用户方案.
22. STATUS
指定显示导出作用进程的详细状态,默认值为0
23. TABLES
指定表模式导出
TABLES=[schema_name.]table_name[:partition_name][,…]
Schema_name用于指定方案名,table_name用于指定导出的表名,partition_name用于指定要导出的分区名.
24. TABLESPACES
指定要导出表空间列表
25. TRANSPORT_FULL_CHECK
该选项用于指定被搬移表空间和未搬移表空间关联关系的检查方式,默认为N.
当设置为Y时,导出作用会检查表空间直接的完整关联关系,如果表空间所在表空间或其索引所在的表空间只有一个表空间被搬移,将显示错误信息.当设置为N时, 导出作用只检查单端依赖,如果搬移索引所在表空间,但未搬移表所在表空间,将显示出错信息,如果搬移表所在表空间,未搬移索引所在表空间,则不会显示错误信息.
26. TRANSPORT_TABLESPACES
指定执行表空间模式导出
27. VERSION
指定被导出对象的数据库版本,默认值为COMPATIBLE.
VERSION={COMPATIBLE | LATEST | version_string}
为COMPATIBLE时,会根据初始化参数COMPATIBLE生成对象元数据;为LATEST时,会根据数据库的实际版本生成对象元数据.version_string用于指定数据库版本字符串.调用EXPDP
使用EXPDP工具时,其转储文件只能被存放在DIRECTORY对象对应的OS目录中,而不能直接指定转储文件所在的OS目录.因此,
使用EXPDP工具时,必须首先建立DIRECTORY对象.并且需要为数据库用户授予使用DIRECTORY对象权限.

 

 

network选项可以支持远程导入导出,但是不建议使用,此外也可以导出表空间,然后倒入省去自己建的步骤,具体自己看吧,给几个例子,这些都是参考别人的,

写道
按用户导
expdp scott/tiger@orcl schemas=scott dumpfile=expdp.dmp DIRECTORY=dpdata1;
2)并行进程parallel
expdp scott/tiger@orcl directory=dpdata1 dumpfile=scott3.dmp parallel=40 job_name=scott3
3)按表名导
expdp scott/tiger@orcl TABLES=emp,dept dumpfile=expdp.dmp DIRECTORY=dpdata1;
4)按查询条件导
expdp scott/tiger@orcl directory=dpdata1 dumpfile=expdp.dmp Tables=emp query='WHERE deptno=20';
5)按表空间导
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=temp,example;
6)导整个数据库
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=full.dmp FULL=y;

五、还原数据
1)导到指定用户下
impdp scott/tiger DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=scott;
2)改变表的owner
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp TABLES=scott.dept REMAP_SCHEMA=scott:system;
3)导入表空间
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=example;
4)导入数据库
impdb system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y;
5)追加数据
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=system TABLE_EXISTS_ACTION=append;

 

 

<think>我们正在处理的是Oracle 11g使用expdpimpdp进行全库迁移,并希望保持表空间及其他数据库信息一致。 根据引用[1][2][3]的信息,以及用户上一次的问题(关于impdp命令报错LRM-00108),现在用户的问题是如何在迁移中保持表空间等信息一致。 关键点: 1. 全库迁移使用`full=y`参数。 2. 保持表空间一致:在目标库中需要预先创建相同的表空间,或者使用`remap_tablespace`参数进行映射(如果源和目标表空间名称不同)。 3. 其他一致性问题:如用户、权限等。 步骤: 1. 在源库使用expdp导出整个数据库。 2. 在目标库创建相同的目录对象(或者调整目录路径)。 3. 在目标库创建相同的表空间(如果表空间名称和路径需要保持一致,则注意目标库的文件路径可能不同,需要调整)。 4. 使用impdp导入,并注意参数设置。 然而,全库迁移会包括系统表空间,但通常我们不会迁移系统表空间,而是迁移用户数据。因此,全库迁移(full=y)会包括所有的用户数据和系统数据(如用户、角色、权限等),但不包括系统表空间(如SYSTEM、SYSAUX)的实际数据文件,因为系统表空间创建数据库时就已经存在。 但是,全库导入可能会试图创建与源库相同的表空间,如果目标库不存在这些表空间,且目标库的文件路径与源库相同,那么导入会成功;如果文件路径不同,我们需要使用`remap_datafile`参数。 另外,如果目标库已经存在相同的表空间,那么导入时可能会因为表空间已存在而报错,但impdp会继续导入数据。 因此,为了保持表空间一致,我们有两种做法: 做法一:在目标库预先创建与源库相同的表空间(包括数据文件路径和大小)。这样导入时就不会创建表空间,而是直接导入数据。 做法二:使用impdp的`transform`参数来避免创建表空间,而是将数据导入到现有的表空间中(如果表空间名称不同,则配合`remap_tablespace`)。 但是,全库迁移(full=y)会包括表空间的定义(DDL),所以如果目标库不存在表空间impdp会尝试创建。如果目标库的文件路径与源库不同,创建会失败(因为找不到目录)。因此,我们需要在导入时使用`remap_datafile`参数来重新映射数据文件路径。 步骤详细说明: 1. 在源库导出: ```bash expdp \' / as sysdba \' directory=exp_dir dumpfile=fulldb.dmp logfile=exp_fulldb.log full=y ``` 2. 将dump文件复制到目标库服务器。 3. 在目标库创建相同的目录对象(如果不存在): ```sql CREATE OR REPLACE DIRECTORY exp_dir AS '/path/to/dump'; ``` 4. 在目标库检查表空间: 如果目标库的表空间与源库一致(包括数据文件路径),则可以直接导入。 如果不一致,有两种处理方式: a. 在目标库预先创建相同的表空间(注意数据文件路径,如果路径不同,则需要在目标库创建时调整路径)。 b. 导入时使用`remap_datafile`和`remap_tablespace`参数。 但是,全库导入会包括创建表空间的DDL,如果目标库文件路径与源库不同,则创建表空间会失败。因此,我们需要使用`remap_datafile`将源库的数据文件路径映射到目标库的路径。 例如:源库表空间数据文件路径为`/u01/oradata/orcl/users01.dbf`,而目标库想放在`/u02/oradata/orcl/users01.dbf`,则导入时: `remap_datafile='/u01/oradata/orcl/users01.dbf':'/u02/oradata/orcl/users01.dbf'` 如果多个表空间,则需要多次使用remap_datafile,或者使用通配符(注意:通配符可能不适用于所有情况,建议显式指定)。 5. 导入命令: ```bash impdp \' / as sysdba \' directory=exp_dir dumpfile=fulldb.dmp logfile=imp_fulldb.log full=y \ remap_datafile='/u01/oradata/orcl/users01.dbf':'/u02/oradata/orcl/users01.dbf' \ remap_datafile='/u01/oradata/orcl/temp01.dbf':'/u02/oradata/orcl/temp01.dbf' ``` 6. 如果目标库的表空间名称与源库不同,则需要使用`remap_tablespace`参数。例如,将源库的表空间`tbs1`映射到目标库的`tbs2`: `remap_tablespace=tbs1:tbs2` 7. 其他注意事项: - 如果目标库是新建的,且没有用户,那么导入会创建用户(包括密码)和权限。 - 如果目标库已经存在同名的用户,导入时会报错(用户已存在),此时可以设置`table_exists_action`参数(但该参数只针对表,对用户无效)。因此,建议在导入前先删除目标库的用户(如果不需要保留)或者使用`include`和`exclude`参数过滤。 8. 关于`transform`参数:可以用来在导入时改变某些对象的DDL。例如,`transform=segment_attributes:n`可以避免导入表空间和存储属性(即不修改表的表空间和存储属性)。但是,在全库迁移中,我们通常希望保持表空间一致,所以一般不使用这个参数来忽略表空间。 9. 如果源库和目标库版本不一致(比如11g迁移到19c),则需要注意: - 使用源库的expdp导出,然后使用目标库的impdp导入(高版本impdp可以导入低版本导出的数据)。 - 可能需要运行升级脚本(在导入后执行catupgrd.sql)。 根据引用[2]中的示例,他们使用了`remap_tablespace`和`transform`参数。但他们的场景是从11g迁移到12c的PDB,并且只迁移了特定的schema(schemas=hr)。而用户的需求是全库迁移。 因此,总结全库迁移保持表空间一致的步骤: 步骤1:在源库执行全库导出。 步骤2:在目标库创建相同的目录对象(或者调整路径)。 步骤3:在目标库检查表空间和数据文件路径,如果目标库的文件路径与源库不同,则记录需要映射的每个数据文件。 步骤4:在目标库执行导入,使用`remap_datafile`映射每个数据文件(如果路径不同),使用`remap_tablespace`映射表空间(如果名称不同)。 步骤5:如果目标库已经存在部分对象,可能需要使用`table_exists_action`参数(但全库中包括多种对象,该参数只对表有效)或使用`exclude`排除某些对象,然后单独处理。 但是,全库迁移通常建议在干净的目标库(新建的数据库)上进行,以避免冲突。 示例导入命令(目标库文件路径与源库不同,但表空间名称相同): ```bash impdp \' / as sysdba \' directory=exp_dir dumpfile=fulldb.dmp logfile=imp_fulldb.log full=y \ remap_datafile='/old_path1/users01.dbf':'/new_path1/users01.dbf' \ remap_datafile='/old_path2/example01.dbf':'/new_path2/example01.dbf' ``` 如果表空间名称也要改变,则加上: `remap_tablespace=old_tbs:new_tbs` 注意:`remap_tablespace`只能用于非系统表空间(如用户表空间)。系统表空间(如SYSTEM、SYSAUX、TEMP、UNDO)不能重映射,因为它们是数据库必需的,且已经存在。 因此,对于系统表空间,我们只能通过`remap_datafile`来映射数据文件路径(如果导出中包含系统表空间的数据文件定义,但实际上全库导出不会导出系统表空间的数据,只会导出表空间定义?)。实际上,全库导出不会导出系统表空间中的系统对象(如数据字典),但会导出表空间的定义(DDL)[^1]。 根据Oracle文档,使用`full=y`会导出整个数据库,但不会导出SYS用户的对象(即系统对象),而是导出用户数据和元数据(包括表空间定义、用户定义等)。因此,导入时会创建表空间,但不会向系统表空间中导入系统对象(因为目标库已经有自己的系统表空间)。 所以,在导入时,我们主要关注用户表空间。 另外,如果目标库已经存在同名的表空间,则创建表空间的DDL会失败(因为表空间已存在),但impdp会继续导入数据到已存在的表空间中。因此,如果目标库已经创建了相同的表空间(数据文件路径也相同),则不需要`remap_datafile`。如果目标库的表空间数据文件路径不同,那么我们需要在创建表空间之前就调整路径(通过`remap_datafile`),否则创建表空间会失败(因为路径不存在)。 因此,在导入前,最好在目标库创建好所有需要的表空间(包括数据文件路径),这样impdp不会再去创建表空间(因为已经存在),从而避免路径问题。然后导入数据到这些表空间。 所以,推荐做法: 1. 在源库查询表空间及其数据文件: ```sql SELECT tablespace_name, file_name FROM dba_data_files; SELECT tablespace_name, file_name FROM dba_temp_files; ``` 2. 在目标库创建相同的表空间,但调整数据文件路径为目标库可用的路径(如果目标库文件系统结构与源库不同)。 3. 然后导入时,不需要`remap_datafile`(因为表空间已经存在,且数据文件路径已经指向目标库的路径),impdp会直接使用现有的表空间。 4. 导入命令: ```bash impdp \' / as sysdba \' directory=exp_dir dumpfile=fulldb.dmp logfile=imp_fulldb.log full=y ``` 5. 如果导入过程中遇到表空间不存在(比如有些临时表空间创建),则根据错误提示再创建。 6. 如果目标库和源库的表空间名称不一致,则需要在导入时使用`remap_tablespace`将源表空间名映射到目标表空间名。 因此,为了最大程度保持一致,我们建议在目标库手动创建与源库相同的表空间(名称和属性都相同,但数据文件路径可以调整为目标库的路径),然后导入。 总结:保持表空间一致的关键在于在目标库预先创建相同名称和属性的表空间(数据文件路径按目标环境调整),然后使用impdp全库导入,这样数据就会导入到对应的表空间中。 引用[1]提到expdp/impdp是服务端工具,用于在Oracle数据库之间传输数据对象,这正符合我们的需求。 注意:如果源库和目标库的字符集、国家字符集不同,可能会导致问题,需要确保目标库的字符集与源库兼容(通常是超集)。 最后,生成相关问题。</think>在 Oracle 11g 中使用 `impdp` 和 `expdp` 进行全库迁移时,保持表空间及其他数据库信息一致的关键在于正确使用参数组合和迁移策略。以下是详细的操作步骤和参数配置: ### 📌 一、迁移前准备(源库操作) 1. **创建全库导出** 使用 `expdp` 导出时添加 `full=y` 和 `include` 参数: ```bash expdp \' / as sysdba \' directory=EXP_DIR dumpfile=fulldb_%U.dmp logfile=exp_fulldb.log \ full=y include=TABLE,INDEX,TABLESPACE,USER,ROLE,GRANT ``` - `include=...` 确保导出表空间、用户、权限等元数据[^1] - `%U` 支持多文件并行导出(提升大库导出速度) 2. **记录关键信息** 查询并记录源库信息: ```sql -- 表空间信息 SELECT tablespace_name, file_name FROM dba_data_files; -- 用户权限信息 SELECT * FROM dba_sys_privs; ``` ### 📥 二、目标库导入操作 ```bash impdp \' / as sysdba \' directory=IMP_DIR dumpfile=fulldb_%U.dmp logfile=imp_fulldb.log \ full=y \ remap_tablespace=SOURCE_TS:TARGET_TS \ transform=segment_attributes:n \ table_exists_action=replace ``` #### 🔑 关键参数说明: 1. **表空间一致性** - `remap_tablespace=SOURCE_TS:TARGET_TS` 将源表空间映射到目标表空间(支持多组映射): ```bash remap_tablespace=USERS:APP_DATA, INDEXES:APP_IDX ``` - 目标库需预先创建同名表空间: ```sql CREATE TABLESPACE APP_DATA DATAFILE '/u02/oradata/APP_DATA01.dbf' SIZE 1G; ``` 2. **保留存储属性** `transform=segment_attributes:n` 禁用存储属性(STORAGE子句)自动转换,保持源库的物理存储特性[^2] 3. **对象冲突处理** `table_exists_action=replace` 覆盖已存在的表(可选值:`skip`, `append`, `truncate`) 4. **用户和权限迁移** - 确保目标库存在相同用户: ```sql CREATE USER APP_USER IDENTIFIED BY password DEFAULT TABLESPACE APP_DATA; ``` - 导入时自动恢复权限(通过 `full=y` 包含GRANT信息) ### ⚠️ 三、注意事项 1. **版本兼容性** - 11g → 19c 迁移需在目标库执行: ```sql EXEC DBMS_DATAPUMP.SET_PARAMETER('VERSION','11.2'); ``` - 避免使用高版本专属特性 2. **大文件处理** 超过 2GB 的 dump 文件需添加: ```bash filesize=5G # 单个文件最大5GB parallel=4 # 并行进程数 ``` 3. **字符集验证** 确保源库和目标库字符集一致: ```sql SELECT * FROM nls_database_parameters WHERE parameter LIKE '%CHARACTERSET%'; ``` ### 🔄 四、迁移后验证 1. 检查对象计数: ```sql SELECT object_type, count(*) FROM dba_objects GROUP BY object_type; ``` 2. 验证表空间使用率: ```sql SELECT tablespace_name, round(sum(bytes)/1024/1024) MB FROM dba_segments GROUP BY tablespace_name; ``` 3. 测试关键应用功能 > **提示**:生产环境建议先进行 schema 级测试迁移,验证后再执行全库迁移[^3]。 --- ### 📚 相关引用 [^1]: `include` 参数确保导出表空间定义和用户权限等元数据 [^2]: `transform=segment_attributes:n` 保持原始存储属性 [^3]: 分阶段迁移可降低生产环境风险
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值