(Возврат на основную страницу)

Содержание номера за Апрель 2003 

Editorial

Представляя SQL Server Yukon корпорации Microsoft...

СУБД следующего поколения. Yukon — это кодовое название следующего выпуска Microsoft SQL Server, который сейчас еще находится в разработке.

SQL Server Yukon предоставит организациям возможности, охватывающие проектирование БД и управление ими, отказоустойчивость и масштабирование, средства защиты и возможности бизнес-анализа (business intelligence) и в то же время позволит контролировать расходы.

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

Управление корпоративными данными

Существенные усовершенствования управления корпоративными данными предоставляют организациям любого размера следующие возможности.

Производительность разработки

Более глубокая интеграция SQL Server Yukon с технологией .NET и инструментальными средствами Microsoft позволят разработчикам повысить производительность и гибкость, предоставив им следующие возможности.

бизнес-анализ

Усовершенствованные возможности бизнес-анализа в Yukon позволят организациям:

DB Design & Warehousing

Автоматическое закрытие БД

Стив Джонс (Steve Jones)

Автоматическое закрытие (autoclose) является одной из опций, которые вы можете  устанавливать для БД наряду с автоматическим сокращением (autoshrink), автоматическим созданием статистики (auto create statistics), автоматическим обновлением статистики  (auto update statistics) и т. д.

Эта опция, по существу, закрывает файл БД, после того как последний пользователь отсоединится от нее. Ресурс высвобождается, но, когда пользователь вновь соединится с сервером, БД открывается вновь. Обратите внимание: я сказал БД, а не сервер.

Так вот: эта опция никогда не должна устанавливаться на производственной БД!!!

У меня есть главное правило: я не доверяю тому, кто говорит «никогда». Однако в этом случае поверьте моему слову. Вам не потребуется устанавливать эту опцию для производственной БД.

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

Programming

экзотические соединения в SQL. Часть 1
Крис Кубли (Chris Cubley), MCSD

Когда разработчик думает о соединениях, он представляет себе что-то похожее на "a.SomethingID = b.SomethingID". Этот тип соединения — объединение по эквивалентности (equijoin) — жизненно важен для SQL-программирования, но затрагивает только малую часть возможностей, предоставляемых соединениями.

Это первая статья из серии, посвященной различным типам «экзотических» соединений в SQL. Здесь рассматривается использование оператора BETWEEN в соединениях, имеющих дело с данными, основанными на диапазонах (range-based).

Проблемы SQL Server 2000 SP3 и xp_cmdshell
Эндрю Новик (Аndrew Novick)

Неприятности, доставленные червем SQL Sapphire, также известным как SQL Slammer, послужили стимулом обновления большинства сайтов до SQL Server 2000 Service Pack 3 (SP3). Он включает в себя исправление, предотвращающее заражение червем. И хотя установка новейшего пакета обновления — вещь полезная, выполнение ее без предварительного тестирования чревато риском вывести из строя работающие приложения. И это именно то, что случилось с одним из моих клиентов…

Хотя этот сайт и не был заражен, администратор БД все же решил выполнить обновление при помощи пакета обновления, вместо того, чтобы просто применить соответствующие исправления (hotfix). Я понимаю вставшую перед ним дилемму. Первоначальное обновление (MS02-039), закрывающее уязвимость, используемую SQL Sapphire, не включало установщик, что вызывало у многих администраторов БД и программистов, включая меня, нежелание применять его. (В настоящее время этот бюллетень переработан и его обновленную версию можно найти по адресу:
http://www.microsoft.com/technet/treeview/default.asp? url=/technet/security/bulletin/MS02-061.asp.
Дополнительную информацию об этом черве и инструментах, которые могут быть использованы для обеспечения адресной безопасности, можно найти на сайте SQL Server по адресу http://www.microsoft.com/sql.)

Установка пакета обновления обычно довольно безопасна. Тем не менее каждый пакет обновления вносит достаточное количество изменений, могущих привести к выходу из строя одного или нескольких свойств приложений, с которыми вы работаете. Ценой успеха является проведение регрессионного (regression) тестирования. Пропуская этап тестирования, вы рискуете, что приложение не будет работать после обновления. В случае с системой моего клиента два свойства просто перестали работать.

Свойства, переставшие работать, зависят от использования расширенной хранимой процедуры xp_cmd-shell для запуска внешних программ. Мои подозрения сводились к тому, что причина заключается в изменении способа, которым осуществляется авторизация для использования xp_cmdshell после применения пакета обновления. Нужно сказать, что я оказался довольно близок к истине.

Other

Атаки на SQL Server: хакинг, кракинг и методы защиты

Сэт Фоги, Сайрус Пэйкари (Seth Fogie, Cyrus Peikari)

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

Из-за своей критической природы сервер БД является одной из наиболее популярных целей для хакеров. Ирония в том, что, хотя большинство пользователей сегодня опасаются хакеров, они так и не осознают, насколько легкой добычей могут стать их серверы БД. Эта статья представляет описание основных методов атак на серверы БД (также называемые серверами SQL) и показывает, как защитить себя.

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

Что такое сервер SQL?

СУБД — это программа, которая обеспечивает доступ клиентов к информации. Существует много разновидностей этого типа приложений, начиная от дорогостоящего, уровня крупных организаций Microsoft SQL Server, до свободно распространяемого с открытым кодом mySQL. Несмотря на особенности реализации, большинство СУБД имеют несколько общих черт.

Во-первых, СУБД используют один и тот же язык программирования — SQL (Structured Query Language), за упрощенный синтаксис также называемый языком четвертого уровня. Он лежит в основе того, как клиент передает свои запросы серверу. Используя SQL в его простейшей форме, программист может выбирать, добавлять и обновлять информацию в БД. Однако SQL также может быть использован для создания и разработки целых БД, выполнения различных функции над возвращаемой информацией и даже исполнения других программ.

Как лучше поддерживать резервный SQL Server

В этой статье приведено определение резервного (standby) сервера и рассказано, как его следует поддерживать.

SQL Server предоставляет множество средств копирования данных между различными БД и серверами: DTS (Data Transformation Services), массированное копирование (bulk copy), репликация (replication), кластеризация (сlustering), резервное копирование/восстановление (backup/restore), передача журналов (log shipping). Зачастую начинающие администраторы БД часто путают, какие из них применять для поддержки резервного сервера.

В SQL Server Books Online резервный сервер определяется так: «Резервный сервер — это второй сервер, который может быть переведен в оперативный режим, если основной производственный сервер выйдет из строя. Резервный сервер содержит копию всех баз данных основного сервера. Резервный сервер может также использоваться в случае, если основной сервер становится недоступным в результате планового технического обслуживания. Например, резервный сервер может быть использован, если основной сервер нуждается в аппаратном или программном обновлении».

Как следует из приведенного определения, резервный SQL Server содержит копию производственной БД, которая должна быть синхронизована (насколько это возможно) с исходной БД на основе транзакций. Как же можно поддерживать тождественную и транзакционно согласованную копию постоянно меняющейся производственной БД? Ответ заключается в организации резервного копирования/восстановления журнала транзакций или передаче журналов. Остаток этой статьи будет посвящен обсуждению достоинств и недостатков всех методов, обычно используемых администраторами БД.

Как переместить SQL Server с одного компьютера (сервера) на другой

Нараяна Вайас Кондреди (Narayana Vyas Kondreddi)

Эта статья познакомит вас с парой методов, которые можно применить для перемещения/миграции SQL Server с одного компьютера на другой.

Перемещение SQL Server с одного компьютера на другой — не очень сложная задача, но зачастую приводит в замешательство малоопытных администраторов БД. Конечно, необходимо тщательно спланировать эту работу для уверенности, что SQL Server перемещен на новую машину полностью и должным образом, с минимальным временем простоя и без потерь данных.

Прежде чем погрузиться в детали, давайте рассмотрим, какие причины могут вызвать необходимость перемещения SQL Server.

Перемещение всего SQL Server с одного компьютера на другой отличается от простого переноса одной или нескольких БД. Удостоверьтесь, что на новом сервере выполнены те же настройки уровня сервера, что и на старом, что он содержит те же учетные записи, членство в ролях и т. д. Если вас интересует только перемещение БД, то можете применить процедуры резервного копирования/восстановления или отсоединения/присоединения (используя хранимые процедуры sp_detach_db и sp_attach_db). Дополнительную информацию по перемещению БД вы найдете, воспользовавшись ссылками, приведенными в конце статьи.

А теперь давайте сосредоточимся на перемещении всего SQL Server с одной машины на другую.

(Возврат на основную страницу)

Hosted by uCoz