甲骨文认证体系
Vmware认证体系
AWS亚马逊
阿里云认证体系
红帽认证体系
ZStack云计算认证体系
思科认证体系
华为认证体系
CDA数据分析师认证
达梦认证体系
麒麟
定制化课程
达梦数据库培训干货Windows环境下中文名备份集的还原方法
发布日期:2020-09-10 14:55:48阅读次数:

达梦数据库的日常使用中,大家可能会碰到这样一种情况。主机编码方式非unicode,数据库以unicode编码建库,此时如果生成以中文命名的备份集。如:


当使用该备份集进行还原等操作时,因编码不一致,导致备份集解析后从本地读取备份片文件时,找不到而报错。遇到这种情况的时候,小伙伴们也不要慌张,接下来我们会给出几个可行的解决方案。


解决方案:

以上述备份集为例,介绍解决步骤。

1、  以USE_AP=2方式启动dmrman,并执行命令如下:

rename backupset 'D:\dm7dev2_unicode\DAMENG\bak\脱机库备份' to 'db_bak_off';


其中:红色底部分为待修改的备份集的完整路径;

绿色底部分为目标修改为备份集中文件名,必须英文。 


执行完毕后,原备份集目录中会多出一个db_bak_off.meta的文件,原脱机库备份.meta的文件还在,将原meta文件移出备份集目录备份。


红色标记为原meta文件,移出备份集目录备份保存;

绿色标记为新生成的meta文件。


2、  手动修改文件名:

经过1后,备份集目录为:


将目录中备份片文件名中”脱机库备份”均改为”db_bak_off”,序号保留不变。修改后结果如下:



至此,新的备份集可正常使用,可以正常还原数据库如下:

restore database 'd:\db_unicode2\dm.ini'from backupset 'D:\dm7dev2_unicode\DAMENG\bak\脱机库备份';


3、  并行备份集举例:

1>原始备份集目录以及其中文件,如下:



2>Dmrman执行rename命令之后如下:

备份集目录以及其子备份集目录均多出一个新的meta文件,红色标记出。



3>移除原始的meta文件,并按照2中的手动修改方法,处理完毕,修改后如下:



之后,再使用并行备份集的还原方式正常还原备份集即可。


在这里两张表的情况下,我们看到首先是对T1进行扫描获取到数据,然后每一行结果放到T2中进行过滤(SEEK I_TEST2 scan_range[var1,var1]),两张表的情况下,这样的处理方式和INDEX JOIN 基本类似,但在一些更复杂的情况中不能使用INDEX JOIN 的时候,这样的处理方式有助于提升处理效率。



上海腾科教育科技有限公司聚焦ICT人才培养和教育服务、培养数字化时代的新型ICT人才、促进良性的ICT人才生态发展,提供面授教育、在线教育、IT人才培养与就业、高校专业共建与实验室建设、企业人才定制培养,以及教育科技领域内的技术开发、咨询、服务以及解决方案,专注高校ICT课程课件研发、基于华为公有云的云实验实训平台建设,致力于ICT技术在高等院校的引进、开发和推广,是一家全国性的专业ICT行业技术认证服务公司。

腾科教育是华为授权的培训合作伙伴,专业提供华为ICT技术架构认证、平台与服务认证、行业服务认证等华为职业认证服务,连续多年荣获华为年度最佳合作伙伴贡献奖、华为优秀战略合作伙伴、上海HCIE精英俱乐部伙伴,连续多年举办腾科技术嘉年华华为专场,并协办华为ICT大赛、华为生态伙伴精英赛伙伴赛分赛场、华为人才双选会上海场等活动和赛事,提供面向华为生态合作伙伴和ICT学员的人才供需双选平台及ICT学员就业通道,培养ICT行业所需创新型、融合型人才。