Administrator
2021-01-19 fbed4c7738db69c0d6a30c10f6944268ba28ea9e
本地备份数据库程序
10个文件已删除
1个文件已添加
13个文件已修改
1181 ■■■■■ 已修改文件
BattMonitor_FBS9100S_DataBaseBackUp/.settings/org.eclipse.core.resources.prefs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/bin/.gitignore 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/bin/com/backup/DataBaseBackUpThread$CompratorByLastModified.class 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/bin/com/backup/DataBaseBackUpThread.class 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/bin/com/backup/HzipSocket.class 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/bin/com/backup/MyRunTime.class 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/bin/com/version_inf/version_inf.txt 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/bin/main/main_FBS9100S_DataBaseBackUp.class 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/config.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_09_51_28/db_battinf/tb_battinf.sql 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_09_51_46/db_battinf/tb_battinf.sql 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_09_57_22/db_battinf/tb_battinf.sql 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_05_03/db_battinf/tb_battinf.sql 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_05_12/db_battinf/tb_battinf.sql 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_06_12/db_battinf/tb_battinf.sql 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_06_28/db_battinf/tb_battinf.sql 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_06_45/db_battinf/tb_battinf.sql 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_07_02/db_battinf/tb_battinf.sql 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_07_09/db_battinf/tb_battinf.sql 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/src/com/backup/DataBaseBackUpThread.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/src/com/backup/HzipSocket.java 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/src/com/backup/MyRunTime.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/src/com/version_inf/version_inf.txt 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/src/main/main_FBS9100S_DataBaseBackUp.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BattMonitor_FBS9100S_DataBaseBackUp/.settings/org.eclipse.core.resources.prefs
@@ -1,3 +1,4 @@
eclipse.preferences.version=1
encoding//src/com/backup/MyRunTime.java=UTF-8
encoding//src/com/backup/ZipUtil.java=UTF-8
encoding/<project>=GBK
BattMonitor_FBS9100S_DataBaseBackUp/bin/.gitignore
New file
@@ -0,0 +1,2 @@
/com/
/main/
BattMonitor_FBS9100S_DataBaseBackUp/bin/com/backup/DataBaseBackUpThread$CompratorByLastModified.class
Binary files differ
BattMonitor_FBS9100S_DataBaseBackUp/bin/com/backup/DataBaseBackUpThread.class
Binary files differ
BattMonitor_FBS9100S_DataBaseBackUp/bin/com/backup/HzipSocket.class
Binary files differ
BattMonitor_FBS9100S_DataBaseBackUp/bin/com/backup/MyRunTime.class
Binary files differ
BattMonitor_FBS9100S_DataBaseBackUp/bin/com/version_inf/version_inf.txt
@@ -107,5 +107,7 @@
    edit at date 2017-05-11 lijun
    1.将config.xml文件中的mysql_conn_count_max 的值由300改为3000                        --设置数据库最大链接数                                                        
    
说明:该备份程序依赖于主程序或者安装目录不设置中文目录;远程备份端口为10100
V1.201 2020-11-20
    config.xml文件中的source_sqlserver_ip对应远程数据库备份主机的ip
BattMonitor_FBS9100S_DataBaseBackUp/bin/main/main_FBS9100S_DataBaseBackUp.class
Binary files differ
BattMonitor_FBS9100S_DataBaseBackUp/config.xml
@@ -12,7 +12,7 @@
    <!--SOURCE_SQLSERVER_TYPE_SYBASE = 1-->
    <!--SOURCE_SQLSERVER_TYPE_MSSQLSERVER = 2-->
    <source_sqlserver_type>0</source_sqlserver_type>
    <source_sqlserver_ip>127.0.0.1</source_sqlserver_ip>
    <source_sqlserver_ip>192.168.10.222</source_sqlserver_ip>
    <source_sqlserver_usrname>sxfg001</source_sqlserver_usrname>
    <source_sqlserver_pwd>sxfg001</source_sqlserver_pwd>
    <source_sqlserver_port>5000</source_sqlserver_port>
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_09_51_28/db_battinf/tb_battinf.sql
File was deleted
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_09_51_46/db_battinf/tb_battinf.sql
File was deleted
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_09_57_22/db_battinf/tb_battinf.sql
File was deleted
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_05_03/db_battinf/tb_battinf.sql
File was deleted
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_05_12/db_battinf/tb_battinf.sql
File was deleted
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_06_12/db_battinf/tb_battinf.sql
File was deleted
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_06_28/db_battinf/tb_battinf.sql
File was deleted
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_06_45/db_battinf/tb_battinf.sql
File was deleted
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_07_02/db_battinf/tb_battinf.sql
File was deleted
BattMonitor_FBS9100S_DataBaseBackUp/mysql_backup/INSTANT_BACKUP/2018-12-11_10_07_09/db_battinf/tb_battinf.sql
File was deleted
BattMonitor_FBS9100S_DataBaseBackUp/src/com/backup/DataBaseBackUpThread.java
@@ -10,6 +10,7 @@
import java.util.regex.Pattern;
import com.base.Com;
import com.config.AppConfig;
import com.sql.MysqlConnPool;
import main.main_FBS9100S_DataBaseBackUp;
@@ -24,9 +25,12 @@
    private MysqlConnPool pool;
    private String savePath = System.getProperty("user.dir")+ File.separator+"mysql_backup";            //备份数据库的根目录
    private MyRunTime runtime = null;
    private AppConfig appcfg;
    
    public DataBaseBackUpThread(MysqlConnPool conn_pool){
    public DataBaseBackUpThread(MysqlConnPool conn_pool,AppConfig appcfg){
        this.pool = conn_pool;
        this.appcfg = appcfg;
        this.runtime = new MyRunTime(this.pool);
        
        DataBaseBackUpThread_SQL.createBackupTable(pool);                                                             //初始化数据库表
@@ -55,7 +59,7 @@
                //System.out.println();
                
                //12点59分开始备份所有的数据库
                if(countTimeLong(nowTime, normTime)<30 && countTimeLong(lastRecodTime, nowTime) >= 7*24*60*60) {
                if(countTimeLong(nowTime, normTime)<30 || countTimeLong(lastRecodTime, nowTime) >= 7*24*60*60) {
                    System.out.println("开始备份所有的数据库"+Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms));
                    this.list = DataBaseBackUpThread_SQL.searchAllDataBaseAndTable(pool);
                    String path = savePath+File.separator+REGULAR_BACKUP_PATHNAME;
@@ -78,7 +82,7 @@
                    File zipFile = zipUtil.createZip(zipName, new File(path));    //压缩数据库文件
                    
                    
                    HzipSocket SocketClient = new HzipSocket();
                    HzipSocket SocketClient = new HzipSocket(appcfg);
                    SocketClient.init(zipName);                            //发送数据库备份文件到远程服务器
                    System.out.println("远程备份数据库完成" + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms));
                    if(zipFile.exists() && zipFile.length() > 1*1024 && new File(path).exists()) {
BattMonitor_FBS9100S_DataBaseBackUp/src/com/backup/HzipSocket.java
@@ -5,26 +5,45 @@
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
import java.util.Date;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import com.base.Com;
import com.config.AppConfig;
public class HzipSocket{
    public static String targetip = "118.89.139.230";            //目标ip地址
    //public static String targetip = "118.89.139.230";            //目标ip地址
    //public static String targetip = "192.168.7.123";            //目标ip地址
    public static int targetport = 10100;                    //目标端口号
    private AppConfig cfg;
    public HzipSocket(AppConfig cfg) {
        this.cfg = cfg;
        //System.err.println(cfg.getSourceSQLServerIp()+"########");
    }
    
    public void init(String filepath) {
        Socket s = null;
        try {
            Socket s = new Socket(targetip,10100);
            s = new Socket(cfg.getSourceSQLServerIp(),10100);
            //要发送出去的文件夹.请注意在不同操作系统上,表示方法可能不一样。
            File file =new File(filepath);
            OutputStream os=s.getOutputStream();
            ZipOutputStream gout=new ZipOutputStream(os);
            byte[] b=new byte[1024];
            zipEntry(file, gout,b);
            s.close();
        } catch (IOException e) {
            e.printStackTrace();
            System.out.println(cfg.getSourceSQLServerIp()+"远程备份数据库失败"+Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms));
        } finally {
            if(null != s) {
                try {
                    s.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    
@@ -83,7 +102,8 @@
    
    
    public static void main(String[] args) {
        HzipSocket h = new HzipSocket();
        AppConfig cfg = new AppConfig();
        HzipSocket h = new HzipSocket(cfg);
        h.init("d:/temp");
    }
}
BattMonitor_FBS9100S_DataBaseBackUp/src/com/backup/MyRunTime.java
@@ -43,7 +43,7 @@
            }else{
                //根据主程序在注册表中的参数获取mysql的安装目录
                dbpath = getMySQLPathFromReg();
                //System.out.println(dbpath);
                System.out.println(dbpath);
                if(dbpath != null && dbpath.length()>0){
                    file = new File(dbpath);
                    if(file.exists()){
BattMonitor_FBS9100S_DataBaseBackUp/src/com/version_inf/version_inf.txt
@@ -107,5 +107,7 @@
    edit at date 2017-05-11 lijun
    1.将config.xml文件中的mysql_conn_count_max 的值由300改为3000                        --设置数据库最大链接数                                                        
    
说明:该备份程序依赖于主程序或者安装目录不设置中文目录;远程备份端口为10100
V1.201 2020-11-20
    config.xml文件中的source_sqlserver_ip对应远程数据库备份主机的ip
BattMonitor_FBS9100S_DataBaseBackUp/src/main/main_FBS9100S_DataBaseBackUp.java
@@ -22,7 +22,7 @@
    /**************************************************************************/
    /**************************************************************************/
    public final static boolean app_debug = false;
    public final static float m_VersionNum = (float) 1.101;
    public final static float m_VersionNum = (float) 1.201;
    public final static String m_Version = "Welcome To Use FBS9100S_DataBaseBackUp V" + m_VersionNum + " RC_20170505";
    /**************************************************************************/
    /**************************************************************************/
@@ -119,7 +119,7 @@
        /*********************************************************************************/
        /*********************************************************************************/
        //启动数据库备份的线程
        DataBaseBackUpThread thread = new DataBaseBackUpThread(GB_MysqlConnPool);
        DataBaseBackUpThread thread = new DataBaseBackUpThread(GB_MysqlConnPool,m_AppConfig);
        thread.start();
        
    }