main
黄海 6 months ago
parent 327a71fcac
commit 7a5107cda3

@ -3,6 +3,9 @@ package com.dsideal.YunXiaoTools.Service;
import com.dsideal.YunXiaoTools.Utils.CommonUtil;
import com.jfinal.kit.PropKit;
import com.obs.services.ObsClient;
import com.obs.services.model.ListObjectsRequest;
import com.obs.services.model.ObjectListing;
import com.obs.services.model.ObsObject;
import java.io.*;
import java.util.zip.*;
@ -169,7 +172,11 @@ public class MysqlRestoreService {
}
public static void main(String[] args) {
PropKit.use("application.properties");
//获取最后一次上传的数据库文件
String key = CommonUtil.getLastDataBaseZip();
//开始还原数据库
MysqlRestoreService mysqlRestoreUtil = new MysqlRestoreService();
mysqlRestoreUtil.restore("dsideal/2023-08-01/2023-08-01_01_01_01.sql.zip");
mysqlRestoreUtil.restore(key);
}
}

@ -1,6 +1,10 @@
package com.dsideal.YunXiaoTools.Utils;
import com.jfinal.kit.PropKit;
import com.obs.services.ObsClient;
import com.obs.services.model.ListObjectsRequest;
import com.obs.services.model.ObjectListing;
import com.obs.services.model.ObsObject;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@ -23,6 +27,7 @@ public class CommonUtil {
throw new RuntimeException("获取mysqldump路径失败", e);
}
}
/**
* mysql
*/
@ -70,4 +75,46 @@ public class CommonUtil {
throw new RuntimeException("解析数据库名失败: " + jdbcUrl, e);
}
}
/**
* OBS
* @return
*/
public static String getLastDataBaseZip() {
String endPoint = PropKit.get("obs_endpoint");
String ak = PropKit.get("obs_accessKeyId");
String sk = PropKit.get("obs_accessKeySecret");
String bucketName = PropKit.get("obs_bucket_name");
//obs文件夹位置
String directory = "HuangHai/YunXiao";
String res = "";
// 创建ObsClient实例
ObsClient obsClient = new ObsClient(ak, sk, endPoint);
try {
// 列出指定目录下的ZIP文件
ListObjectsRequest request = new ListObjectsRequest(bucketName);
request.setPrefix(directory); // 设置目录前缀
request.setMaxKeys(1000);
ObjectListing result = obsClient.listObjects(request);
for (ObsObject obsObject : result.getObjects()) {
String key = obsObject.getObjectKey();
if (key.toLowerCase().endsWith(".zip")) {
res = key;
break;
}
}
} catch (Exception e) {
System.err.println("获取OBS文件列表失败: " + e.getMessage());
e.printStackTrace();
} finally {
try {
obsClient.close();
} catch (Exception e) {
e.printStackTrace();
}
}
return res;
}
}

@ -13,6 +13,8 @@ write.jdbcUrl=jdbc:mysql://10.10.14.203:3306/HuangHai_Test?rewriteBatchedStateme
# mysqldump执行文件位置
mysqldump_path=D:/ffmpeg/mysqldump.exe
# mysql执行文件位置
mysql_path=D:/ffmpeg/mysql.exe
# 当前是读取方还是写入方 1:读取 2写入
DEPLOY_ID=1

Loading…
Cancel
Save