找一个朋友要些股票行情数据,他备份了DolphinDB database分布式数据库的数据,然后把备份文件传给了我,备份文件如下图所示存在我的主机上:
用exists函数确认数据库能找到这些备份文件,如下图所示:
我用下列语句恢复:
migrate("D:/DolphinDB/20200601/STOCK_SHL2_TAQ/SHL2_TAQ/")
没有成功,结果如下图所示:
然后我用下列代码恢复:
migrate("D:/DolphinDB/20200601/STOCK_SHL2_TAQ/SHL2_TAQ","dfs://STOCK_SHL2_TAQ","SHL2_TAQ")
提示错误如下图:
怎么会提示“Failed to open file: D:/DolphinDB/20200601/STOCK_SHL2_TAQ/SHL2_TAQ/STOCK_SHL2_TAQ/SHL2_TAQ/_metaData”,而不是D:/DolphinDB/20200601/STOCK_SHL2_TAQ/SHL2_TAQ/_metaData呢?
在DolphinDB中,使用backup函数对数据库分区进行备份,备份后,系统会在
backupDir/dbName/tbName
目录下生成元数据文件meta.bin和数据文件<chunkID>.bin。也就是说,实际目录会在备份目录backupDir下面生成2层子目录,分别是数据库名子目录和表名子目录。因此,目录D:/DolphinDB/20200601/STOCK_SHL2_TAQ/SHL2_TAQ/
中,D:/DolphinDB/20200601为backupDir,STOCK_SHL2_TAQ为dbName,SHL2_TAQ为tbName。恢复语句应为: