4.2.4 逻辑备份还原
逻辑备份和还原使用dexp和dimp命令来执行,这两个命令在$ DM_HOME/bin目录下,必须在实例打开状态下执行。
逻辑导出导入有以下四种级别。
(1)数据库级(FULL):导出或导入整个数据库中的所有对象。
(2)用户级(OWNER):导出或导入一个或多个用户所拥有的所有对象。
(3)模式级(SCHEMAS):导出或导入一个或多个模式下的所有对象。
(4)表级(TABLE):导出或导入一个或多个指定的表或表分区。
dexp和dimp的选项参数较多,具体可以查看命令的帮助,如下:
4.2.4.1 全库导出导入示例
1.全库导出
(1)示例语法如下:
以上两种dexp语句的区别体现在连接数据库上,如果是连接默认的实例,则使用第一种方式,如果是连接非默认的实例,则必须加上IP和端口。另外指定使用4个线程进行并发处理。通过filesize选项控制单个文件的大小。注意,在使用filesize参数时,对应的file和log参数必须使用%U对名称进行自动扩展,filesize最小为128 MB。
(2)查看逻辑导出dump文件:
(3)删除用户:
2.全库导入
示例语法如下:
3.验证对象
示例语法如下:
说明:上面的相关命令,需要先把“$达梦安装目录/bin”配置到PATH和LIBRARY_PATH中。
4.2.4.2 用户级导出导入示例
1.导出用户
示例语法如下:
2.删除用户
示例语法如下:
3.导入原用户
(1)创建空用户:
(2)导入原用户:
(3)验证:
4.导入其他用户
在导入时指定remap_schema选项可以导入其他模式。注意,选项中的用户名要用大写,否则会导入原来的用户中。
(1)创建空用户CNDBA:
(2)导入其他用户:
(3)验证:
4.2.4.3 模式级导出导入示例
模式是一个用户拥有的所有数据库对象的集合,每个用户都有自己默认的模式,用户默认的模式名和用户名相同。一般情况下,OWNER与SCHEMAS导入导出是相同的。但用户可以包含多个模式,在这种情况下SCHEMAS的导入导出是OWNER导入导出的一个子集。
(1)查询用户和模式的对应关系:
(2)导出模式:
(3)导入模式。
①导入原模式:
②导入其他模式,模式名要大写:
③TEST模式是一个空模式,在导入之前是没有其他对象的,查询验证:
4.2.4.4 表级导出导入示例
(1)导出表。
①DMHR的2张表:
②删除这2张表:
(2)将表导入原用户下:
(3)验证:
(4)将表导入其他用户下:
(5)验证:
4.2.4.5 在DM Manager中使用导出导入
除了dexp和dimp的命令行操作方式以外,也可以在DM Manager中进行导出导入。导出导入有4种类型,只需要在对应级别进行操作即可。
例如,导出表时,直接在对应的表上右击,选择“导出”,然后输入相应信息即可,如图4-4所示。导入时在上一级的表上右击,选择“导入”,其他操作类似,这里不再描述。
图4-4 利用dexp导出表数据
利用dimp导入表数据,如图4-5所示。
图4-5 利用dimp导入表数据