ms sql server (ru)

  • Усечение лога транзакций в MS SQL Server 2005/2008/R2

    В Microsoft SQL Server 2005/2008/R2 усечение лога транзакций происходит совсем не так, как это было в 2000-й версии.

  • Выгружаем пользователей AD в базу MS SQL

    Здравствуйте!

    Продолжаю публикации скриптов. Сегодняшний наш пациент был разработан в процессе создания биллинга звонков. У каждого юзера в Active Direcotry есть поле, в котором прописан его внутренний номер телефона. Этот же номер фигурирует в биллинге, но нам конечно хочется видеть не что-то вроде "1316", а "Иванов Владислав Александрович". 

    В сети полно примеров и скриптов, позволяющих достать пользователей из AD в csv-файл. По логике, мы можем потом взять этот csv и импортировать в MS SQL с помощью SSIS-скриптов. Однако это мне это не понравилось, т.к. на выходе у нас получается аж два скрипта, работающих на разных технологиях + один промежуточный файл. И это только для одного домена AD. А у меня их 14.

  • Поиск строки в базе MS SQL Server

    Иногда, когда изучаешь софт, бывает необходимо найти некоторое значение в базе данных Microsoft SQL Server.

    Вот вам скрипт, который выполняем в Query Editor над базой. В строчке "set @search_string = 'what.you.are.searching.for';" в кавычках пишем, что мы ищем.

  • Transaction log truncating in MS SQL Server 2005/2008/R2 In Microsoft SQL Server 2005/2008/R2 truncation of transaction log is different than in SQL Server 2000.
  • Searching the string in MS SQL Server database Sometimes, in troubleshooting and/or learning new software you need to find specific string or value in SQL database.

    Here is the script to run in Query Editor over the base to find some string. In "set @search_string = 'what.you.are.searching.for';" in quotes you must type in what you search.

    The script is compatible at least with SQL Server 2005/2008... hopefully with later versions also.
  • Изменение сервисной учетной записи для MS SQL Server 2012 и последующие трудности Изменение сервисной учетной записи для MS SQL Server 2012 и последующие трудности

    Предположим, что вам необходимо изменить учетную запись для службы MS SQL Server 2012. Раньше она была - System, а теперь надо работать под доменной учетной записью.

    Сама процедура смены учетной записи несложная. Лучше всего запустить Sql Server Configuration Manager и в разделе SQL Server Services изменить необходимую службу.

  • Пошаговое развертывание AlwaysOn - MS SQL 2012 Пошаговое развертывание AlwaysOn - MS SQL 2012

    До появления Microsoft SQL Server 2012 и механизма AlwaysOn, администраторы БД имели только одну не совсем удобную технолонию зеркалирования баз данных в SQL Server от Microsoft (Database Mirroring). Причем (как показала практика тестирования, и об этом не написано в документации) - это НЕ синхронная репликация базы и логов транзакций.

    Если вкратце - то мы изучали поведение базы данных при интенсивной записи и различных неисправностях. Какие сбои мы смотрели:

    • Штатное выключение мастер-сервера без уведомления зеркального сервера.
    • Нештатное выключение мастер-сервера.

    Как ни странно, именно штатное выключение показало, что есть некоторое различие между зеркалируемыми базами.

    Поэтому я бы не советовал использовать Database Mirroring в продуктивных решениях, а обратил бы внимание на технологию AlwaysOn.

  • Массовая запись в базу MS SQL скриптом на Powershell Массовая запись в базу MS SQL скриптом на Powershell

    При тестировании отказоустойчивой конфигурации Microsoft SQL Server 2012 (подробнее: Пошаговое развертывание AlwaysOn - MS SQL 2012) мне нужно было сгенерировать массовую запись данных в базу.

    Т.к. я совсем не знаю T-SQL, решил написать небольшой скрипт на Powershell для решения этой задачи.

    Нам понадобится:

    • Непосредственно база данных
    • Таблица в ней для службных нужд
  • Предоставление доступа к PaaS SQL базам данных в Azure Предоставление доступа к PaaS SQL базам данных в Azure

    Если вам надо предоставить доступ пользователям к PaaS SQL базам данных в Azure, можно использовать эти скрипты ниже (GUI-функционал при работе с PaaS SQL в Azure сильно ограничен).

  • Transparent Data Encryption / TDE на SQL Server: включение, ключи и сертификаты, бэкапы, восстановление Transparent Data Encryption / TDE на SQL Server: включение, ключи и сертификаты, бэкапы, восстановление

    Прозрачное шифрование данных (TDE) позволяет шифровать файлы данных SQL Server, База данных SQL Azure и Хранилище данных SQL Azure; это называется шифрованием хранящихся данных.

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

    Одним из решений может стать шифрование конфиденциальных данных в базе данных и защита ключей, используемых при шифровании, с помощью сертификата. Это не позволит использовать данные ни одному человеку, не имеющему ключей, но такой тип защиты следует планировать заранее.

  • Найти сервера с установленным MS SQL Server с помощью Powershell Найти сервера с установленным MS SQL Server с помощью Powershell

    Вот скрипт, который умеет искать сервера в вашем домене, на которых установлен Microsoft SQL Server.

    Скрипт умеет обрабатывать выключенные\неотвечающие сервера с помощью пингов WMI, что полезно, когда ICMP по какой-то причине заблокирован. Кроме этого, тут используется Powershell Remoting, поэтому сначала удостоверьтесь, что он включен.