É muito comum que muitas máquinas em sua empresa estejam usando edições Enterprise do SQL Server embora nenhum desses recursos empresariais tenha sido usado. Isso afetará fortemente a licença cost e deve ser corrigido.
Encontrar servidores
Se você já estiver mantendo um inventário de SQL servers, será uma tarefa fácil identificar as máquinas que executam as edições Enterprise do SQL server. O próximo passo é identificar se as aplicações hostinstalados nessas máquinas exigem uma edição corporativa e se recursos corporativos estiverem sendo usados.
Criar .SQL
Copie Script1 e salve-o como arquivo .sql. O script 1 é coletar nomes de banco de dados e localizar recursos corporativos em cada banco de dados. Atualize o caminho desse arquivo .sql no script2 e execute-o em um servidor. O script 2 coletará dados e os salvará na tabela de log. Certifique-se de ter atualizado o script2 com a conta SQL adequada com a qual os servidores vinculados seriam criados.
Colete e revise o registro
Antes de executar o script2 certifique-se de ter listado todos os servidores no TBL0. Para cada servidor listado nesta tabela, um servidor vinculado será criado e, a seguir, para cada banco de dados no servidor vinculado, o script identificará os recursos da empresa que estão sendo usados e os armazenará no TBL1.
Consulte os proprietários do aplicativo
Com o log, fale com os proprietários de aplicativos preocupados e identifique se é possível remover esses recursos corporativos listados do banco de dados. Se eles aprovarem que o servidor não precisa da edição Enterprise, você poderá mudar para a edição padrão. Isso economizará vários dólares para sua empresa. Além de mudar de Enterprise para Standard, você também pode usar o SQL Express se o tamanho total dos bancos de dados de um aplicativo for menor que 10 GB.
No entanto, você não seria capaz de encontrar os recursos da empresa se o banco de dados tivesse arquivo mdf corrompido. Nesse caso, não hesite em usar ferramentas de recuperação como DataNumen SQL Recovery ferramenta.
Roteiro1
CREATE TABLE TBL2 ( cservername VARCHAR(200) ,dbname VARCHAR(200) ,cfeature VARCHAR(200) ) DECLARE cur2 CURSOR FOR SELECT NAME FROM sysdatabases DECLARE @name VARCHAR(200) OPEN cur2 FETCH NEXT FROM cur2 INTO @name WHILE @@FETCH_STATUS = 0 BEGIN DECLARE @cmd NVARCHAR(200) SET @cmd = 'use [' + @name + '] select @@servername,db_name(),feature_name FROM sys.dm_db_persisted_sku_features' INSERT INTO TBL2 EXEC (@cmd) FETCH NEXT FROM cur2 INTO @nome END CLOSE cur2 DEALLOCATE cur2
Roteiro2
SET NOCOUNT ON SET ANSI_NULLS ON CREATE TABLE TBL0 (cservername VARCHAR(200)) INSERT INTO TBL0 VALUES ('SERVER1') CREATE TABLE TBL1 ( cservername VARCHAR(200) ,dbname VARCHAR(200) ,cfeature VARCHAR(200) ) SELECT * FROM TBL1 DECLARE @cmd0 NVARCHAR(2000) DECLARE @vsvrname VARCHAR(200) DECLARE @vuser VARCHAR(100) DECLARE @vpwd VARCHAR(100) SET @vuser = 'linkedserveruser' SET @vpwd = 'linkedserveruser' DECLARE cur1 CURSOR FOR SELECT cservername FROM TBL0 OPEN cur1 DECLARE @servidor VARCHAR(200) FETCH NEXT FROM cur1 INTO @servidor WHILE @@FETCH_STATUS = 0 BEGIN DECLARE @cmd VARCHAR(2000) SET @cmd = 'SQLCMD -S ' + @servidor + ' -E -i " caminho completo do arquivo .sql"' PRINT @cmd EXEC xp_cmdshell @cmd ,no_output SET @vsvrname = @servidor SET @cmd0 = 'EXEC sp_addlinkedserver @servidor=''' + @vsvrname + '''' PRINT @cmd0 EXEC (@ cmd0) SET @cmd0 = 'EXEC sp_addlinkedsrvlogin ''' + @vsvrname + ''', ''false'', NULL, ''' + @vuser + ''', ''' + @vpwd + '''' PRINT @cmd0 EXEC (@cmd0) SET @cmd0 = 'insert into TBL1 select * from [' + @vsvrname + '].[master].[dbo].[TBL2]' PRINT @cmd0 EXEC (@cmd0) PRINT ' Completed' SET @cmd0 = 'EXEC [' + @vsvrname + '].master..sp_executesql N''drop table TBL2''' EXEC (@cmd0) FETCH NEXT FROM cur1 INTO @server END CLOSE cur1 DEALLOCATE cur1 SELECT * FROM TBL1 TABELA DE DROP TBL1 TABELA DE DROP TBL0
Introdução do autor:
Neil Varley é um especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo reparar problema de e-mail do Outlook pst e produtos de software de recuperação do Excel. Para mais informações visite www.datanumen.com
Deixe um comentário