Esempio n. 1
0
        public int TableUseCheckServer(object model)
        {
            int changetablenum = 0;
            var item           = model as SqlServerItemXml;
            var basemodel      = DBConfig.GetBaseXmlConfig(item.BaseNumber);

            if (item != null)
            {
                ManagerConfig serverconfig = new ManagerConfig();
                var           databaselist = DBConfig.GetDatabaseItemXmlConfigList(basemodel, item.Number);
                string        connstr      = DBProxyAction.GetConnStr(basemodel, item);
                foreach (var item2 in databaselist)
                {
                    var tablelist = DBConfig.GetTableItemXmlConfigList(basemodel, item2.Number);
                    foreach (var item3 in tablelist)
                    {
                        var restatus = DBProxy.GetDBAccess(item.DBType).TableExists(connstr, item2.DatabaseName, item3.TableName);
                        if (item3.IsUse != restatus)
                        {
                            changetablenum++;
                            serverconfig.TableChangeIsUse(item3, restatus);
                        }
                        Console.WriteLine("检查数据表连接,服务器:" + item.ServerName + ",数据库:" + item2.DatabaseName + ",表:" + item3.TableName + ",status:" + restatus);
                    }
                }
            }
            Console.WriteLine("服务器:" + item.ServerName + ",涉及表总数:" + changetablenum);
            return(1);
        }
Esempio n. 2
0
        public void DatabaseChangeIsUse(SqlDatabaseItemXml item, bool isuse = false)
        {
            var basemodel = DBConfig.GetBaseXmlConfig(item.BaseNumber);

            DBConfig.DatabaseRemove(basemodel, item);
            item.IsUse = isuse;
            DBConfig.DatabaseAdd(basemodel, item);
        }
Esempio n. 3
0
        public void ServerChangeIsUse(SqlServerItemXml item, bool isuse = false)
        {
            var basemodel = DBConfig.GetBaseXmlConfig(item.BaseNumber);

            DBConfig.ServerRemove(basemodel, item);
            item.IsUse = isuse;
            DBConfig.ServerAdd(basemodel, item);
        }
Esempio n. 4
0
        public void TableChangeIsWrite(SqlTableItemXml item, bool iswrite = false)
        {
            var basemodel = DBConfig.GetBaseXmlConfig(item.BaseNumber);

            DBConfig.TableRemove(basemodel, item);
            item.IsWrite = iswrite;
            DBConfig.TableAdd(basemodel, item);
        }
Esempio n. 5
0
        public int ServerCacheClearItem(object model)
        {
            var    item      = model as SqlServerItemXml;
            var    basemodel = DBConfig.GetBaseXmlConfig(item.BaseNumber);
            string connstr   = DBProxyAction.GetConnStr(basemodel, item);

            Console.WriteLine("操作服务器开始:" + item.ServerName);
            DBProxy.GetDBAccess(item.DBType).ServerCacheClear(connstr);
            Console.WriteLine("操作服务器完成:" + item.ServerName);
            return(1);
        }
Esempio n. 6
0
        public int ServerConnectionCheckItem(object model)
        {
            var  item             = model as SqlServerItemXml;
            var  basemodel        = DBConfig.GetBaseXmlConfig(item.BaseNumber);
            bool connectionstatus = SocketHelper.TestConnection(item.ServerName, item.ServerPort, basemodel.SocketMillisecondsTimeout);

            if (connectionstatus)
            {
                string connstr = DBProxyAction.GetConnStr(basemodel, item);
                connectionstatus = DBProxy.GetDBHelper(item.DBType).ConnectionIsUse(connstr);
            }
            new ManagerConfig().ServerChangeIsUse(item, connectionstatus);
            Console.WriteLine("服务器:" + item.ServerName + ",isuse:" + connectionstatus);
            return(1);
        }
Esempio n. 7
0
        public int DetachTask(object model)
        {
            var item         = model as SqlServerItemXml;
            int revalue      = 0;
            var basemodel    = DBConfig.GetBaseXmlConfig(item.BaseNumber);
            var databaselist = DBConfig.GetDatabaseItemXmlConfigList(basemodel, item.Number);

            foreach (var item2 in databaselist)
            {
                string connstr = DBProxyAction.GetConnStr(basemodel, item);
                DBProxy.GetDBAccess(item.DBType).DatabaseSPDetach(connstr, item2.DatabaseName);
                revalue++;
                Console.WriteLine("分离服务器:" + item.ServerName + ",数据库:" + item2.DatabaseName);
            }
            return(revalue);
        }
Esempio n. 8
0
        public int TableDelIndexServer(object model)
        {
            int changetablenum      = 0;
            int changetableindexnum = 0;
            var item      = model as SqlServerItemXml;
            var basemodel = DBConfig.GetBaseXmlConfig(item.BaseNumber);

            if (item != null)
            {
                var databaselist = DBConfig.GetDatabaseItemXmlConfigList(basemodel, item.Number);
                foreach (var item2 in databaselist)
                {
                    var tablelist = DBConfig.GetTableItemXmlConfigList(basemodel, item2.Number);
                    DBProxyAction.GetConnStr(basemodel, item, item2);
                    string conndatabasestr = DBProxyAction.GetConnStr(basemodel, item, item2);
                    foreach (var item3 in tablelist)
                    {
                        int validnum = 0;
                        foreach (var itemfield in basemodel.FieldIndexList)
                        {
                            string indexname = basemodel.IndexPrev + item3.TableName + itemfield;
                            if (!DBProxy.GetDBAccess(item.DBType).TableIndexExists(conndatabasestr, item2.DatabaseName, item3.TableName, indexname))
                            {
                                validnum++;
                                changetableindexnum++;

                                DBProxy.GetDBAccess(item.DBType).TableIndexDel(conndatabasestr, item3.TableName, indexname);
                                Console.WriteLine("删除索引服务器:" + item.ServerName + ",数据库:" + item2.DatabaseName + ",表:" + item3.TableName);
                            }
                        }
                        if (validnum > 0)
                        {
                            changetablenum++;
                        }
                    }
                }
            }
            Console.WriteLine("服务器:" + item.ServerName + ",涉及表总数:" + changetablenum + ",添加索引总数:" + changetableindexnum);
            return(1);
        }