一、详解
DM数据库的备份还原包括两种类型:物理备份还原和逻辑备份还原。逻辑备份还原是对数据库逻辑组件(如表、视图和存储过程等数据库对象)的备份还原。例如使用dexp和dimp进行的备份还原。逻辑导出(dexp)和逻辑还原(dimp)是DM数据库的两个命令行工具,分别用来实现对DM数据库的逻辑备份和逻辑还原。逻辑备份和逻辑还原都是在联机方式下完成,联机方式是指数据库服务器正常运行过程中进行的备份和还原。dexp和dimp是DM数据库自带的工具,只要安装了DM数据库,就可以在安装目录/dmdbms/bin中找到。
二、导入导出级别
逻辑导出和逻辑导入数据库对象分为四种级别:数据库级、用户级、模式级和表级 。四种级别独立互斥,不能同时存在。
- 数据库级(FULL):导出和导入整个数据库中的所有对象
- 用户级(OWNER):导出或导入一个或多个用户所拥有的所有对象
- 模式级(SCHEMAS):导出或导入一个或多个模式下的所有对象
- 表级(TABLE):导出或导入一个或多个指定的表或表分区
三、数据库逻辑导出 - 全库导出
cd /opt/dmdbms/bin
./dexp 用户名/密码@主机:端口 DIRECTORY=/databackup/DMP FILE=表名.dmp FULL=Y TABLESPACE=N DROP=N LOG=表名.log LOG_WRITE=N - 用户级导出
cd /opt/dmdbms/bin
./dexp 用户名/密码@主机:端口 DIRECTORY=/databackup/DMP FILE=表名.dmp OWNER=ZHENG(用户名)
TABLESPACE=N DROP=N LOG=表名.log LOG_WRITE=N - 模式级导出
cd /opt/dmdbms/bin
./dexp 用户名/密码@主机:端口 DIRECTORY=/databackup/DMP FILE=表名.dmp SCHEMAS=USER1(模式名)
TABLESPACE=N DROP=N LOG=表名.log LOG_WRITE=N - 表级导出
cd /opt/dmdbms/bin
./dexp 用户名/密码@主机:端口 DIRECTORY=/databackup/DMP FILE=表名.dmp TABLES=模式名.表名
TABLESPACE=N DROP=N LOG=表名.log LOG_WRITE=N
四、逻辑导出的参数详解 - USERID
用户名/密码@主机名:端口 - FILE
明确指定导出文件名称 - DIRECTORY
导出文件所在的目录 - FULL
导出整个数据库 - OWNER
用户名列表,导出一个或多个用户所拥有的所有对象 - SCHEMAS
模式列表,导出一个或多个模式下的所有对象 - TABLES
表明列表,导出一个或多个指定的表或表分区 - TABLESPACE
导出的对象定义是否包含表空间(N) - LOG
明确指定日志文件名称 - LOG_WRITE
日志信息实时写入文件(N) - DROP
导出后删除原表,但不级联删除(N)
五、数据库逻辑导入 - 全库导入
cd /opt/dmdbms/bin
./dimp 用户名/密码@主机:端口 DIRECTORY=存放dmp文件的目录 FILE=文件名.dmp FULL=Y IGNORE=Y
COMPILE=Y INDEXFIRST=N COMMIT_ROWS=5000 FAST_LOAD=N LOG=表名.log LOG_WRITE=N - 用户级导入
cd /opt/dmdbms/bin
./dimp 用户名/密码@主机:端口 DIRECTORY=存放dmp文件的目录 FILE=文件名.dmp OWNER=zheng(用户)
IGNORE=Y COMPILE=Y INDEXFIRST=N COMMIT_ROWS=5000 FAST_LOAD=N LOG=表名.log LOG_WRITE=N - 模式级导入
cd /opt/dmdbms/bin
./dimp 用户名/密码@主机:端口 DIRECTORY=存放dmp文件的目录 FILE=文件名.dmp SCHEMAS=USER1(模式名)
IGNORE=Y COMPILE=Y INDEXFIRST=N COMMIT_ROWS=5000 FAST_LOAD=N LOG=表名.log LOG_WRITE=N - 表级导入
cd /opt/dmdbms/bin
./dimp 用户名/密码@主机:端口 DIRECTORY=存放dmp文件的目录 FILE=文件名.dmp TABLES=table1,table2 (表名)
IGNORE=Y COMPILE=Y INDEXFIRST=N COMMIT_ROWS=5000 FAST_LOAD=N LOG=表名.log
LOG_WRITE=N
六、逻辑导入命令参数详解 - FILE
输入文件,即dexp导出的文件 - DIRECTORY
导入文件所在的目录 - FULL
整个数据库(N) - OWNER
导入指定的用户名下的模式 - SCHEMAS
导入的模式列表 - TABLES
表名列表,指定 导入的tables名称 - IGNORE
忽略创建错误(N)如果表已经存在则向表中插入数据,否则报 错表已经存在 - FAST_LOAD
是否使用dmfldr进行数据导入 - COMMIT_ROWS
批量提交的行数(5000) - LOG_WRITE
日志信息实时写入文件(N) - COMPILE
编译过程,程序包和函数(Y) - INDEXFIRST
导入时先建索引(N)