Published on

August 6, 2008

Генерация автоматического инвентаря установок SQL Server

Ищете способ сгенерировать автоматический инвентарь установок SQL Server в вашей сети? Не ищите дальше! В этой статье мы рассмотрим пошаговый процесс, который поможет вам сгенерировать отчет об инвентаре или сравнить его с вашим собственным отслеживанием в Excel, чтобы выявить любые несоответствия.

При начале этого проекта важно исследовать доступные инструменты и утилиты, которые могут помочь в генерации автоматического инвентаря. Вот несколько инструментов, которые вы можете рассмотреть:

  • SQL Ping от Chip Andrews
  • Found Stone Sqlscan
  • ListSqlServers – VB-проект
  • SQLLHF v3.2 – написано MattW
  • MSSQLScan v0.8 от patrik@cqure.net
  • SQL.vbs от MAK
  • OSQL -L (это перечисляет только транслируемые серверы, то есть серверы, которые в настоящее время работают)
  • SQLCMD -L (лучше, чем OSQL –L, но все равно некоторые серверы отсутствуют)
  • SQL Scan exe (часть SQLCritUpdPkg_ENU.exe от Microsoft)
  • ADO.Net код для сканирования SQL-серверов

Для этого проекта мы будем использовать следующие инструменты:

  • BIDS 2005 – Среда разработки бизнес-аналитики
  • SQL 2005 Standard Edition
  • SQLPing3cl

Теперь давайте перейдем к шагам для генерации отчета об инвентаре:

Шаг 1: Создание необходимых таблиц

Первая таблица, которую нам нужно создать, называется “tblSQLVersion”. В этой таблице будут храниться номера версий SQL Server для справки. Вот скрипт для создания этой таблицы:

USE [DBReporting]
GO

/****** Объект: Таблица [dbo].[tblSQLVersion] Дата скрипта: 31.07.2008 05:06:34 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO

CREATE TABLE [dbo].[tblSQLVersion](
[Version] [int] NOT NULL,
[Serial] [char](10) NOT NULL,
[Descr] [varchar](25) NOT NULL
) ON [PRIMARY]
GO

SET ANSI_PADDING OFF

Вторая таблица, которую нам нужно создать, называется “SQLInv”. В этой таблице будет храниться CSV-данные из приложения SQLPing3cl. Вот скрипт для создания этой таблицы:

USE [DBReporting]
GO

/****** Объект: Таблица [dbo].[SQLInv] Дата скрипта: 31.07.2008 05:03:46 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO

CREATE TABLE [dbo].[SQLInv](
[ServerIP] [char](15) NULL,
[TCPPort] [int] NULL,
[ServerName] [varchar](55) NULL,
[InstanceName] [varchar](55) NULL,
[BaseVersion] [char](20) NULL,
[SSNetlibVersion] [char](20) NULL,
[TrueVersion] [char](20) NULL,
[ServiceAccount] [varchar](55) NULL,
[IsClustered] [varchar](25) NULL,
[Details] [text] NULL,
[DetectionMethod] [varchar](55) NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO

SET ANSI_PADDING OFF

Шаг 2: Запуск SQLPing3cl и импорт данных

Теперь, когда у нас есть необходимые таблицы, мы можем продолжить с запуском SQLPing3cl для сканирования экземпляров SQL Server по всей сети. Вот команда для запуска SQLPing3cl:

SQLPing3cl.exe -scantype range -startIP 100.100.101.0 -EndIP 100.100.101.254 -Output 100.csv

Эта команда будет сканировать указанный диапазон IP-адресов и выводить обнаруженные экземпляры SQL Server в CSV-файл с именем “100.csv”.

После завершения сканирования мы можем импортировать данные из CSV-файла в таблицу “SQLInv”. Существуют разные способы сделать это, но один из вариантов – использовать мастер импорта/экспорта в SQL Server 2000. Просто следуйте шагам мастера, чтобы импортировать данные в таблицу.

Шаг 3: Развертывание отчета об инвентаре

Теперь, когда у нас есть данные в таблице SQLInv, мы можем развернуть отчет на сервере отчетов. Для этого мы будем использовать BIDS (Среда разработки бизнес-аналитики). Вот шаги для развертывания отчета:

  1. Откройте BIDS из меню “Пуск”.
  2. Создайте новый проект сервера отчетов.
  3. Добавьте существующий файл отчета (RDL) в проект.
  4. Измените источник данных в отчете, чтобы указать ваш сервер.
  5. Добавьте измененный файл источника данных в проект.
  6. Установите TargetServerURL в свойствах проекта на URL вашего сервера отчетов.
  7. Разверните отчет.

После развертывания отчета вы можете получить к нему доступ через браузер и просмотреть полный список SQL-серверов в вашей среде. Отчет предоставляет детали, такие как имя экземпляра, версия, учетная запись службы и TCP/IP-порт.

Преимущества и заключение

Генерация автоматического инвентаря установок SQL Server предлагает несколько преимуществ:

  1. Можно сгенерировать полный список SQL-серверов, независимо от того, остановлены они или работают. Этот метод выполняет пинг каждого IP и считывает имя экземпляра из SSNETLIB.DLL, предоставляя полный список экземпляров.
  2. В отчет можно включить детали, такие как имя экземпляра, версия, учетная запись службы и TCP/IP-порт. Это делает его полным отчетом об инвентаре, который можно представить или предоставить руководству.
  3. Службы отчетов позволяют экспортировать отчет в различные форматы, такие как PDF, что делает его подход
Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.