Windows Internal Database (WID) представляет собой «облегченной» базу данных SQL, основанную на SQL Server Express. Windows Internal Database предлагается в качестве бесплатной базы данных SQL, которую можно использовать в различных продуктах Microsoft (или сторонних разработчиков) в качестве легкого и бесплатного SQL- решения для хранения данных. В частности, WID может использоваться SharePoint или таким ролями Windows Server, как WSUS , ADRMS , ADFS , Connection Broker и т.п.
Windows Internal Database включается в состав серверных ОС Window, начиная с версии Windows Server 2008. В Windows 2008 независимо от разрядности доступна только 32 битная версия WID (устанавливается в C:Program Files (x86)Microsoft SQL Server ), в Windows Server 2012 версия WID — 64-битная (база находится в каталоге C:WindowsWID ). В качестве отдельного продукта Windows Internal Database пользователям не доступна.
Основные особенности Windows Internal Database:
- База данных WID предполагает только локально использование, удаленно к ней подключиться не получится
- Отсутствуют ограничения на размер файлов БД (в отличии от той же редакции SQL Express)
- Не требует для своего использования лицензии.
Управление базой Windows Internal Database
По задумке разработчиков база WID предназначена только для консольной или скриптовой установки, а все операции с ней должны выполняться через командную строку. Но к счастью базой WID можно управлять и через GUI с помощью SQL Management Studio .
Для этого нужно:
- Скачать и установить SQL Server Management Studio Express 2012 (входит в состав Microsoft SQL Server 2012 Express , но ее можно скачать и отдельно, выбрав ENUx64SQLManagementStudio_x64_ENU.exe)
- Запустить консоль Management Studio с правами администратора
- Подключится к базе, указав следующее имя сервера:
- в Windows Server 2008 / R2 —
\.pipemssql$microsoft##sseesqlquery
- в Windows Server 2012 / R2 —
\.pipeMICROSOFT##WIDtsqlquery
- в Windows Server 2008 / R2 —
Для подключения через sqlcmd.exe следует выполнить такую команду:
sqlcmd -S \.pipeMICROSOFT##WIDtsqlquery –E
Как удалить базу WID
После удаления роли Windows, которая использует базу Windows Internal Database, сам инстанс SQL с базой WID не удаляется, причем инструментов для ее удаление в системе нет. Деинсталлировать базу Windows Internal Database можно только при помощи Windows Installer.
Для удаления базы WID на Windows Server 2008 нужно:
- на 32 битной системе:
msiexec /x {CEB5780F-1A70-44A9-850F-DE6C4F6AA8FB} callerid=ocsetup.exe
- на 64 битной системе:
msiexec /x {BDD79957-5801-4A2D-B09E-852E7FA64D01} callerid=ocsetup.exe
В Windows Server 2012 базу WID можно удалить гораздо проще — с помощью Powershell:
Remove-WindowsFeature Windows-Internal-DB
Сами файлы базы данных (.mdb и .ldb) придется удалить вручную – пути к ним указаны в начале статьи.
Определить версию установленную версию WID можно по файлу:
- Для Windows Server 2008: %WINDIR%SYSMSISSEEMSSQL.2005MSSQLLOG
- Для Windows Server 2012: %WINDIR%WIDLogerror.log
Содержит он примерно такую информацию:
2014-03-22 12:38:11.11 Server Microsoft SQL Server 2012 - 11.0.2100.60 (X64)
Feb 10 2012 19:39:15
Copyright (c) Microsoft Corporation
Windows Internal Database (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) (Hypervisor)
2014-03-22 12:38:11.12 Server (c) Microsoft Corporation.
2014-03-22 12:38:11.12 Server All rights reserved.
2014-03-22 12:38:11.12 Server Server process ID is 1644.
2014-03-22 12:38:11.12 Server System Manufacturer: 'VMware, Inc.', System Model: 'VMware Virtual Platform'.
2014-03-22 12:38:11.14 Server Authentication mode is WINDOWS-ONLY.
2014-03-22 12:38:11.14 Server Logging SQL Server messages in file 'C:WindowsWIDLogerror.log'.
2014-03-22 12:38:11.14 Server The service account is 'NT SERVICEMSSQL$MICROSOFT##WID'. This is an informational message; no user action is required.
2014-03-22 12:38:11.14 Server Registry startup parameters:
-w 65535
-T 1617
-K
-e C:WindowsWIDLogerror.log
-l C:WindowsWIDDatamastlog.ldf
-d C:WindowsWIDDatamaster.mdf