BattMonitor_DB_Builder/bin/com/battdata_rt/BattData_RT_RamDB_Thread_SQL.classBinary files differ
BattMonitor_DB_Builder/bin/com/sql/Sql_Mysql.classBinary files differ
BattMonitor_DB_Builder/bin/main/main_BTS_DB_Builder.classBinary files differ
BattMonitor_DB_Builder/src/com/battdata_rt/BattData_RT_RamDB_Thread_SQL.java
@@ -1,6 +1,7 @@ package com.battdata_rt; import java.io.File; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.util.Date; @@ -187,6 +188,13 @@ + "`db_conn_max` INT NOT NULL DEFAULT 0, " + "`db_conn_count` INT NOT NULL DEFAULT 0, " + "`app_conn_max` INT NOT NULL DEFAULT 0, " //主程序数据库连接池最大连接数 + "`app_busy_conn_cnt` INT NOT NULL DEFAULT 0, " //主程序数据库连接池正在使用的连接数 + "`app_idle_conn_cnt` INT NOT NULL DEFAULT 0, " //主程序数据库连接池空余连接数 + "`server_cpu_rate` FLOAT NOT NULL DEFAULT 0, " //服务器cpu使用率 + "`server_network_rate` FLOAT NOT NULL DEFAULT 0, "//服务器网络使用率 + "PRIMARY KEY (`num`)) " + "ENGINE=InnoDB DEFAULT CHARSET=utf8;"; @@ -194,12 +202,58 @@ + "(server_version) VALUES (" + main_BTS_DB_Builder.m_VersionNum + ")"; Sql_Mysql sql = new Sql_Mysql(conn_pool.getConn()); ResultSet res = null; try { if(true == recreate) { sql.sqlMysqlExecute(sql_str0); sql.sqlMysqlExecute(sql_str1); } else { sql.sqlMysqlExecute("DELETE FROM " + Sql_Mysql.ServerState_Table); } res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns" + " WHERE table_schema='db_ram_db'" + " AND table_name='tb_server_state'" + " AND column_name='app_conn_max'"); if(false == res.next()) { sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.ServerState_Table + " ADD COLUMN `app_conn_max` INT NOT NULL DEFAULT 0"); } res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns" + " WHERE table_schema='db_ram_db'" + " AND table_name='tb_server_state'" + " AND column_name='app_busy_conn_cnt'"); if(false == res.next()) { sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.ServerState_Table + " ADD COLUMN `app_busy_conn_cnt` INT NOT NULL DEFAULT 0"); } res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns" + " WHERE table_schema='db_ram_db'" + " AND table_name='tb_server_state'" + " AND column_name='app_idle_conn_cnt'"); if(false == res.next()) { sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.ServerState_Table + " ADD COLUMN `app_idle_conn_cnt` INT NOT NULL DEFAULT 0"); } res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns" + " WHERE table_schema='db_ram_db'" + " AND table_name='tb_server_state'" + " AND column_name='server_cpu_rate'"); if(false == res.next()) { sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.ServerState_Table + " ADD COLUMN `server_cpu_rate` FLOAT NOT NULL DEFAULT 0"); } res = sql.sqlMysqlQuery("SELECT * FROM information_schema.columns" + " WHERE table_schema='db_ram_db'" + " AND table_name='tb_server_state'" + " AND column_name='server_network_rate'"); if(false == res.next()) { sql.sqlMysqlExecute("ALTER TABLE " + Sql_Mysql.ServerState_Table + " ADD COLUMN `server_network_rate` FLOAT NOT NULL DEFAULT 0"); } sql.sqlMysqlExecute(sql_str2); @@ -296,22 +350,40 @@ * 让主程序重新导入单体数据关键字改成true * @param conn_pool */ public static void updateTb_App_Sys_AppServerTable(MysqlConnPool conn_pool) public static boolean updateTb_App_Sys_AppServerTable(MysqlConnPool conn_pool) { Sql_Mysql sql = new Sql_Mysql(conn_pool.getConn()); Connection conn = conn_pool.getConn(); Sql_Mysql sql = new Sql_Mysql(conn); boolean flag = false; try { conn.setAutoCommit(false); sql.sqlMysqlUseDB(Sql_Mysql.DB_AppSys); if(true == sql.sqlMysqlCheckIfTableExist(Sql_Mysql.TB_AppSys)) { //System.out.println("修改数据库中的是否重载数据"); String sql_str_1 = "UPDATE " + Sql_Mysql.AppSys_Table + " SET " + " AppServer_Reinit_BattGroupData_EN = 1"; sql.sqlMysqlExecute(sql_str_1); String sql_str0 = "SELECT AppServer_Reinit_BattGroupData_EN FROM db_app_sys.tb_app_sys "; ResultSet rs = sql.sqlMysqlQuery(sql_str0); if(rs.next()) { if(rs.getBoolean("AppServer_Reinit_BattGroupData_EN") == false) { //System.out.println("修改数据库中的是否重载数据"); String sql_str_1 = "UPDATE " + Sql_Mysql.AppSys_Table + " SET " + " AppServer_Reinit_BattGroupData_EN = 1"; sql.sqlMysqlExecute(sql_str_1); flag = true; } } } conn.setAutoCommit(true); } catch (SQLException e) { flag = false; try { conn.rollback(); } catch (SQLException e1) { e1.printStackTrace(); } e.printStackTrace(); } finally { sql.close_con(); } return flag; } /** @@ -394,7 +466,7 @@ } public static void main(String[] args) { MysqlConnPool conn_pool = new MysqlConnPool("118.89.139.230",3360,5); createBattData_RT_RamDB_Table(conn_pool,false); MysqlConnPool conn_pool = new MysqlConnPool("127.0.0.1",3360,5); System.out.println(updateTb_App_Sys_AppServerTable(conn_pool)); } } BattMonitor_DB_Builder/src/com/sql/Sql_Mysql.java
@@ -33,7 +33,7 @@ public final static String TB_BattTestDataInf = "tb_batttestdata_inf"; public final static String TB_BattRtState = "tb_batt_rtstate"; public final static String TB_BattRtData = "tb_server_state"; public final static String TB_BattRtData = "tb_batt_rtdata"; public final static String TB_UserInf = "tb_user_inf"; public final static String TB_UserLog = "tb_user_log"; @@ -174,6 +174,7 @@ + "`SqlDB_BackUpTime` DATETIME NOT NULL DEFAULT '2000-1-1 00:00:00'," + "`SqlDB_BackUpManual_EN` BOOLEAN NOT NULL DEFAULT false, " + "`AppServer_Reinit_BattGroupData_EN` BOOLEAN NOT NULL DEFAULT false, " + "`AppServer_Reinit_Config_EN` BOOLEAN NOT NULL DEFAULT false, " + "`AppServer_Version` FLOAT NOT NULL DEFAULT '1.0'," + "`AppClient_Version` FLOAT NOT NULL DEFAULT '1.0'," + "`AppName` VARCHAR(50) NOT NULL DEFAULT '0'," @@ -477,26 +478,49 @@ } } //---------------------------------------------------------------------------------------------// ResultSet res0 = sqlMysqlQuery("SELECT * FROM information_schema.columns" ResultSet res0 = sqlMysqlQuery("SELECT * FROM information_schema.columns" + " WHERE table_schema='db_app_sys'" + " AND table_name='tb_app_sys'" + " AND column_name='SqlDB_BackUpTime'"); if(false == res0.next()) { sqlMysqlExecute("ALTER TABLE " + AppSys_Table + " ADD COLUMN `SqlDB_BackUpTime` DATETIME NOT NULL DEFAULT '2000-1-1 00:00:00'" + " AFTER `SqlDB_Version`," + " ADD COLUMN `SqlDB_BackUpManual_EN` BOOLEAN NOT NULL DEFAULT false" + " AFTER `SqlDB_BackUpTime`"); } res0 = sqlMysqlQuery("SELECT * FROM information_schema.columns" + " WHERE table_schema='db_app_sys'" + " AND table_name='tb_app_sys'" + " AND column_name='SqlDB_BackUpTime'"); if(false == res0.next()) { + " AND column_name='SqlDB_BackUpManual_EN'"); if(false == res0.next()) { sqlMysqlExecute("ALTER TABLE " + AppSys_Table + " ADD COLUMN `SqlDB_BackUpManual_EN` BOOLEAN NOT NULL DEFAULT false" + " AFTER `SqlDB_BackUpTime`"); } /**************************** db_app_sys 表中添加 AppServer_Reinit_BattGroupData_EN列(重新载入电池组信息) *******************************************/ res0 = sqlMysqlQuery("SELECT * FROM information_schema.columns" + " WHERE table_schema='db_app_sys'" + " AND table_name='tb_app_sys'" + " AND column_name='AppServer_Reinit_BattGroupData_EN'"); if(false == res0.next()) { sqlMysqlExecute("ALTER TABLE " + AppSys_Table + " ADD COLUMN `SqlDB_BackUpTime` DATETIME NOT NULL DEFAULT '2000-1-1 00:00:00'" + " AFTER `SqlDB_Version`," + " ADD COLUMN `SqlDB_BackUpManual_EN` BOOLEAN NOT NULL DEFAULT false" + " AFTER `SqlDB_BackUpTime`"); } res0 = sqlMysqlQuery("SELECT * FROM information_schema.columns" + " WHERE table_schema='db_app_sys'" + " AND table_name='tb_app_sys'" + " AND column_name='SqlDB_BackUpManual_EN'"); if(false == res0.next()) { + " ADD COLUMN `AppServer_Reinit_BattGroupData_EN` BOOLEAN NOT NULL DEFAULT false" + " AFTER `SqlDB_BackUpManual_EN`"); } /**************************** db_app_sys 表中添加 AppServer_Reinit_BattGroupData_EN 列(用于主程序动态调整运行参数) *******************************************/ res0 = sqlMysqlQuery("SELECT * FROM information_schema.columns" + " WHERE table_schema='db_app_sys'" + " AND table_name='tb_app_sys'" + " AND column_name='AppServer_Reinit_Config_EN'"); if(false == res0.next()) { sqlMysqlExecute("ALTER TABLE " + AppSys_Table + " ADD COLUMN `SqlDB_BackUpManual_EN` BOOLEAN NOT NULL DEFAULT false" + " AFTER `SqlDB_BackUpTime`"); } + " ADD COLUMN `AppServer_Reinit_Config_EN` BOOLEAN NOT NULL DEFAULT false" + " AFTER `AppServer_Reinit_BattGroupData_EN`"); } //---------------------------------------------------------------------------------------------// sqlMysqlExecute(table_1); BattMonitor_DB_Builder/src/main/main_BTS_DB_Builder.java
@@ -14,7 +14,7 @@ /**************************************************************************/ /**************************************************************************/ public final static boolean app_debug = false; public final static float m_VersionNum = (float) 1.001; public final static float m_VersionNum = (float) 1.002; public final static String m_Version = "Welcome To Use BTS DB BUILDER V" + m_VersionNum + " RC_20180908"; /**************************************************************************/ /**************************************************************************/ @@ -100,17 +100,26 @@ m_AppConfig.writeConfigToXml(); } System.out.println("BTS DB BUILDER Work Done @ " + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms)); //修改tb_app_sys表中的关键字,让主程序识别 BattData_RT_RamDB_Thread_SQL.updateTb_App_Sys_AppServerTable(GB_MysqlConnPool); for(int i=0;i<5;i++) { if(BattData_RT_RamDB_Thread_SQL.updateTb_App_Sys_AppServerTable(GB_MysqlConnPool)) { break; } try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } } try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("BTS DB BUILDER Work Done @ " + Com.getDateTimeFormat(new Date(), Com.DTF_YMDhms)); /* while(true) { try {