Интеграция Sharepoint 2007 и SQL Server 2008

На курсах часто возникает вопрос об интеграции SQL Server 2008 и SharePoint 2007. Возможна ли она и насколько необходима?

Да. такая интеграция возможна. Она даст вам следующие новые возможности системы, которые могут быть полезны в решениях SharePoint:

  • сжатие резервных копий баз данных
  • сжатие журнала транзакций при зеркалировании баз данных
  • поддержка прозрачного шифрования баз данных
  • управление нагрузкой на ресурсы через Resource Governor

Более подробную информацию на эту тему вы можете посмотреть здесь.

Windows 7 serial number

Где взять серийный номер для беты Windows 7 ? Этот вопрос постоянно возникает на курсах.  Все там же - серийный номер можно получить на сайте Microsoft  и после прекращения раздачи бета-версии.

Для получения номера загляните сюда.

Powershell 1.0 – основы для администраторов. Часть 4

 

В этой, заключительной, части цикла я приведу примеры работы с типовыми задачами. Просто запустите команды по приведенному образцу, адаптируя их под свои системы, и посмотрите, как они работают.

 

Работа с файловыми системами

 

Get-PSDrive – посмотреть все диски WPS

Get-PSDrive -psprovider filesystem – посмотреть только диски файловой системы

Get-WmiObject Win32_logicaldisk | Select-Object deviceid,size, freespace – посмотреть букву диска, размер и свободное пространство на всех дисках (здесь используется обращение к WMI классу Win32_logicaldisk)

Get-ChildItem c:\ – просмотр каталога (то же что dir)

Get-ChildItem c:\windows -filter "*.dll" – просмотр каталога с фильтром

Get-ChildItem c:\windows –recurse - просмотр с вложенными каталогами

Get-ChildItem c:\windows | Measure-Object -Property length -min -max -average –sum – подсчет статистики по каталогу

Copy-Item c:\documents\file1.pdf c:\a\f1.pdf – копирование файла

Move-Item с:\documents\f1.pdf c:\a\f1.pdf – перемещение файла

Rename-Item f1.pdf f2.pdf – переименование файла

Remove-Item c:\a\f1.pdf – удаление файла

Get-Item с:\a\f1.pdf - просмотр свойств файла

 

Работа с документами

Get-Content c:\a\f1.csv - чтение файла

Get-Content c:\a\f1.csv | Measure-Object - вывод количества строк в файле

Get-Process | Out-File c:\a\processes1.txt – вывод результата работы команды в файл

Get-Service | ConvertTo-Html name,status –title "Servicelist" -body "List of services" |Set-Content с:\servicelist.htm – вывод результата работы команды в html файл

 

Работа с реестром

Set-Location hklm:\software – перейти в ветку реестра

Get-ChildItem hklm:\software – просмотр ветки реестра

New-Item –path hklm:\software -name test – создать новую ветку в реестре

Copy-Item hklm:\software\test hklm:\software\test_old - скопировать ветку реестра

Remove-Item "hklm:\software\test" –Recurse – удалить ветку реестра с вложениями

 

Автостарт

Get-Wmiobject Win32_StartupCommand – просмотр списка команд в автостарте windows

Общие папки

Get-WmiObject Win32_Share – просмотр списка общих папок

 

Работа с процессами

Get-Process – просмотр списка процессов

gps | Format-Table -GroupBy Name – вызов списка процессов с помощью псевдонима и с форматированием вывода

Get-Process –id 4011 – просмотр конкретного процесса

Start-Process powershell.exe -Credential (Get-Credential) – запуск процесса

Stop-Process -name iexplore – остановка процесса

Get-Process | where { $_.WS -gt 10MB } | stop-process – остановка процесса с условием

 

Работа с сервисами

 

Get-Service | Where-Object {$_.status –eq "running"} – просмотр запущенных сервисов

Get-Service | Where-Object {$_.status –eq "stopped"} – просмотр остановленных сервисов

Get-Service | sort Status | Format-Table -GroupBy Status – форматированный вывод списка сервисов

get-service iisadmin | % { $_.DependentServices } – вывод зависимых сервисов

Start-Service IISADMIN – старт сервиса

Stop-Service IISADMIN –force – старт сервиса вместе с зависимыми

Set-Service IISADMIN -startuptype "manual" – задание режима запуска сервиса

 

Установка нового сервиса

New-Service -Name "NewAppServer"

-binaryPathName c:\soft\appserver.exe

-Description "New App Server”

-DisplayName "New Application Server"

Start-Service NewAppServer

 

Работа с железом

 

Get-WmiObject Win32_Computersystem

Get-WmiObject Win32_OperatingSystem

Get-WmiObject Win32_OperatingSystem | select serialnumber

Get-WmiObject win32_Bios

Get-WmiObject Win32_BootConfiguration

Get-WmiObject Win32_WindowsProductActivation

Get-WmiObject Win32_OSRecoveryConfiguration

Get-WmiObject win32_processor

Get-WmiObject Win32_MemoryDevice

Get-WmiObject Win32_VideoController

Get-WmiObject Win32_SoundDevice

Get-WmiObject Win32_Diskdrive

Get-WmiObject Win32_Tapedrive

Get-WmiObject Win32_CDRomdrive

Get-WmiObject Win32_NetworkAdapter

Get-WmiObject Win32_USBController

Get-WmiObject Win32_Keyboard

Get-WmiObject Win32_PointingDevice

Get-WmiObject Win32_Printer

Get-WmiObject Win32_Printjob

 

Работа с Event Log

Get-EventLog –list – просмотр списка журналов

Get-EventLog Application – просмотр журнала

Get-EventLog Application -newest 30 – просмотр новых записей в журнале

 

Работа с учетными записями

Get-WmiObject Win32_Account - все записи

Get-WmiObject Win32_UserAccount - только пользователи

Get-WmiObject Win32_Group – только группы

 

Работа с ACL

 

Get-Acl hklm:/software/test – просмотр ACL для ветки реестра

Get-Acl c:\a – просмотр ACL для папки

Get-Acl c:\a\f1.txt – просмотр ACL для файла

PowerShell 1.0 – основы для администраторов. Часть 3

 

Модель навигации

 

В WPS реализована универсальная модель навигации по различным объектам по образцу навигации по диску. Например, чтобы перейти в реестр, надо выполнить такую команду:

 cd hklm:\

Дальше можно воспользоваться командой dir для просмотра.

Наберите команду Get-PSdrive и вы получите список всех логических дисков WPS. Команда Get-PSProvider покажет всех установленных провайдеров для логических дисков. WPS 1.0 содержит следующие диски:

  • Файловая система (A, B, C и т.д.)
  • реестр (HKCU, HKLM)
  • переменные среды (env)
  • хранилище сертификатов (cert)
  • функции PowerShell (function)
  • переменные PowerShell (variable)
  • псевдонимы PowerShell (alias)

 

Команды для навигации по дискам:

Get-ChildItem (псевдонимы dir, ls) - просмотр папки

Get-Content (type, cat)  - прочитать элемент

New-Item (ni) - создать элемент

Get-Location (pwd) - просмотр текущего местоположения

Set-Location (cd) - смена расположения

 

Работа с путями

Одна точка (.) означает текущий каталог, две точки (..) – родительский.

Команда test-path проверяет существование пути.

Команда resolve-path работает с символами заместителями в адресе и выводит все подходящие пути, например:

Resolve-path c:\a* - выведет все каталоги, начинающиеся с буквы a.

 

Можно задать новый диск, для какого-нибудь сложного пути, чтобы легче его вызывать. Например:

New-PSDrive -Name Mydocs -PSProvider FileSystem –Root "c:\Sample\Docs\"

И затем обращаться к нему так:

Dir mydocs:

Этот новый диск будет виден только в текущей сессии WPS , при этом он остается недоступен другим приложениям.

 

Консоль

Встроенная консоль небогата возможностями. Основные - клавиши Tab для автозавершения и F7 для вывода истории команд. Параметры окна консоли можно настроить в меню Свойства.

Режим работы консоли – командный или интерпретатора. Командный режим основной, в режим интерпретатора консоль переходит, когда мы вводим параметры команды по шагам, отвечая на выводимые приглашения.

 

В заключительной части цикла я приведу примеры применения WPS.

PowerShell 1.0 – основы для администраторов

Этой публикацией я открываю небольшой цикл, в котором расскажу о командной строке – Windows PowerShell 1.0. Я ставлю перед собой задачу дать начальное представление, что это такое и как устроено, и показать простые примеры использования, которые могут пригодиться администраторам в реальной работе. Я намеренно оставляю за кадром архитектуру PowerShell и возможности программирования на нем (скрипты, использование .NET объектов), сосредоточившись исключительно на интерактивном применении простых команд.

 

Часть 1

 

Windows PowerShell - что это такое? 

  • Windows PowerShell (далее WPS) - это продвинутая командная строка, подобная UNIX shell, но с поддержкой .NET, COM и WMI.
  • Команды, которые вы вызываете в WPS, называются commandlets (в русской документации они называются командлеты, я же далее буду называть их команды)
  • Команды поддерживают конвейеры (pipelines), т.е. могут передавать результат своей работы другим командам в рамках одной строки вызова

 Где взять?

В Windows 2008 поставляется в дистрибутиве, но требует отдельной установки через добавление роли. Для других ОС нужно скачать дистрибутив с сайта Microsoft. Поддерживаемые ОС:

  • Windows XP with Service Pack 2
  • Windows Server 2003 with Service Pack 1
  • Windows Vista

WPS является .NET приложением и требует наличия .NET 2.0 в системе. WPS может работать в двух режимах – интерактивном и скриптовом. Мы будем рассматривать работу в интерактивном режиме.

Первые команды

Откройте консоль WPS и наберите следующие команды (WPS регистронезависим):

get-process  - вы получите список всех процессов в системе

get-service ms* – вы получите список всех сервисов, имена которых начинаются с ms

get- и нажмите клавишу tab – вы воспользовались функцией автозавершения (нажимая клавишу несколько раз, вы перебираете возможные варианты команд)

Get-Eventlog – эта команда требует ввода параметров, ответьте на приглашение LogName: и введите  Application – будет выведен системный журнал событий Application

 

Структура команд

Команда WPS состоит из трех элементов – глагола, существительного и списка параметров (опционально). Глагол и существительное разделены дефисом, например:

get-process

Список параметров передается через пробел, например:

Get-childitem c:\ (будет выведено содержимое корневого каталога)

Если параметр содержит пробел, его надо заключать в кавычки:

Get-childitem “c:\Program Files”

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

Get-ChildItem C:\mydata *.doc

Get-ChildItem -Path C:\mydata -Filter *.doc

Get-ChildItem -Filter *.doc -Path C:\mydata

Get-ChildItem *.doc C:\mydata  - эта строка даст ошибку

 

Параметр без значения называется свитчем, и по смыслу является функцией:

Get-ChildItem с:\mydata\docs –recurse

Автозавершение  также работает с параметрами. Попробуйте это на примере get-childitem +tab. Также при задании параметров поддерживаются стандартные символы заместители (*, ?, интервалы [a-v] и т.п.) , например:

Get-process ?i*

 

В следующей части я расскажу про псевдонимы и работу с конвейерами.

.NET Framework Configuration Tool в Windows 2008

На курсах часто возникает вопрос - где в Windows Server 2008 находится .NET Framework Configuration Tool?

Дело в том что, начиная с версии 2008, эта утилита в состав сервера не включается, а поставляется в составе .NET Framework 2.0 Software Development Kit (SDK). Т.е. чтобы она появилась в системе, надо установить на сервере  этот SDK.

Установленная утилита позволит вам управлять настройками .NET Framework всех версий (1.1-3.5).

Скачать .NET Framework 2.0 SDK можно здесь.

Windows Internal Database – управление и удаление

На курсах Sharepoint часто возникают вопросы касательно Windows Internal Database (WID).

Что такое Windows Internal Database?

При локальной, чаще всего тестовой, установке таких продуктов как Windows Sharepoint Services 3.0, WSUS, AD RMS в качестве базы данных используется встроенная база Windows Server 2003/2008 – Windows Internal Database (WID). Эта база пришла на смену WMSDE и представляет собой специальный вариант базы SQL Server Express с измененными свойствами. В частности, она может использоваться только локально  и только теми приложениями, с которыми она поставляется. Также она не имеет ограничений на размер файлов. Соответственно, для обычного применения она не годится.

Как управлять Windows Internal Database?

Для этого надо установить Management Studio Express (MMSE) нужной версии и подключиться к экземпляру сервера MICROSOFT#SSEE. В качестве протокола (Network Protocol) при регистрации экземпляра в MMSE  надо обязательно указать Named Pipes, т.к. WID работает только через него. Параметры подключения:

  • Server name: ‘\\.\pipe\mssql$microsoft##ssee\sql\query’ 
  • Server Type:  Database Engine
  • Authentication: Windows Authentication
  • options -> network protocol:  Named Pipes

Для подключения через sqlcmd.exe выполните такую команду:

sqlcmd -S \\.\pipe\MSSQL$MICROSOFT##SSEE \sql\query –E

Как удалить Windows Internal Database?

Если вы удалили какой-то сервер, который использовал WID, то WID по умолчанию не удаляется, и при этом она недоступна через Add or Remove Programs. Если WID вам больше не нужна, вы можете ее удалить, напрямую вызвав msiexec с ключами

  • на 32-bit системе: msiexec /x {CEB5780F-1A70-44A9-850F-DE6C4F6AA8FB} callerid=ocsetup.exe
  • на 64-bit системе: msiexec /x {BDD79957-5801-4A2D-B09E-852E7FA64D01} callerid=ocsetup.exe

Удаление приложения обычно не удаляет файлы базы .mdb и .ldb, которые расположены в папке %windir%\SYSMSI\SSEE. Их можно удалить вручную.

Что нужно делать с Windows Internal Database?

Обычно над WID выполняют операции бэкапа, перемещения и сжатия файлов. Хотя можно делать и другие операции, но надо быть осторожными, т.к. непродуманные действия могут нарушить работу тех серверов, которые обслуживает WID. Потому, будьте разумны и аккуратны)).

Подготовка к установке Microsoft SQL Server 2008

Установка SQL Server 2008 требует предварительной подготовки. В этой заметке я расскажу о том, что должно быть установлено на сервере ПЕРЕД установкой SQL Server 2008.

Системные компоненты

  • .net  framework 3.5 SP1 – обратите внимание именно sp1, а не просто версия 3.5
  • Windows Installer 4.5 – скачивается с сайта Microsoft
  • Windows Powershell 1.0. Идет в составе Windows Server 2008, но отключен по умолчанию. Включается через добавление feature в Server Manager. Это нужно сделать ДО НАЧАЛА установки SQL Server 2008. Для остальных платформ (windows server 2003 или Windows XP) отдельный инсталлятор скачивается с сайта Microsoft

Особенности установки SQL Server 2008 при установленной Visual Studio 2008

При установке может возникнуть ошибка - Не удалось выполнить правило "Предыдущие выпуски Microsoft Visual Studio 2008"(Rule "Previous releases of Microsoft Visual Studio 2008" failed.)

Ошибка возникает, если вы устанавливаете компоненты BIDS (они нужны для BI проектов – analyses, integration и reporting ), и на сервере уже установлена отдельно Visual Studio 2008. В этом случае ее перед установкой нужно либо обновить до версии Visual Studio 2008 SP1, либо удалить. Иначе вы не сможете установить BIDS.

Подробнее эта ситуация описана в базе знаний Microsoft, статья 956139 – "Visual Studio 2008 с пакетом обновления 1 (SP1) может потребоваться для установок SQL Server 2008( Actions that are required before you install SQL Server 2008 on a computer that has Visual Studio 2008 or the prerelease version of SQL Server 2008 installed)"