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

 

Содержание номера за Январь 2009 год

SQL Server

Январь 2009
№ 1 (97)

 

DB Design & Warehousing

Ашиш Кумар Мехта

Спецификации аудита баз данных в SQL Server 2008

Other

Кевин С. Гофф

Чертова дюжина: 13 советов для работы с SQL Server 2008 и SSRS 2008. Часть 2
 

По материалам статьи Динеш Асанка

Репликация DDL в SQL Server 2000 и 2005
 

Одноранговая репликация транзакций в Microsoft SQL Server 2005
 

А. Гладченко

Использование динамических фильтров совместно с динамическими снимками

 

Спецификации аудита баз данных в SQL Server 2008

Ашиш Кумар Мехта (Ashish Kumar Mehta)

 

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

Спецификация аудита баз данных

Объект спецификации аудита базы данных (Database Audit Specification) также принадлежит подсистеме аудита SQL Server (SQL Server Audit). Администратор БД может создать одну спецификацию аудита базы данных для каждого аудита каждой БД SQL Server.

Спецификация аудита БД образует набор дей­ствий аудита, выполняемых на уровне базы данных, наступление которых инициирует компонент расширенных событий (Extended Events). Также в спецификацию аудита базы данных можно добавлять или группы действий аудита, или события аудита. События аудита — это атомарные действия, которые может осуществлять механизм SQL Server. Тогда как группы действий аудита — это предопределенные группы стандартных действий. И события, и группы действий аудита принадлежат области базы данных SQL Server. Эти действия передаются подсистеме аудита, которая обеспечивает их регистрацию в целевом объекте. Пользователи, принадлежащие роли db_owner, могут модифицировать любые спецификации аудита базы данных.

Как использовать подсистему аудита SQL Server

Чтобы создать объект аудита, администратор БД может воспользоваться средой SQL Server Management Studio (SSMS) или средствами языка Transact SQL. После того как соответствующий объект создан, аудит необходимо включить, поскольку по умолчанию SQL Server его блокирует.

До тех пор пока аудит не включен, целевой объект не будет получать данные. Чтобы прочесть содержимое журнала событий безопасности Windows или журнала событий приложений Windows можно воспользоваться утилитой Event Viewer операционной системы Windows. Можно использовать для чтения целевого файла утилиту Log File Viewer, входящую в состав SQL Server Management Studio, или встроенную функцию FN_READ_AUDIT_FILE сервера SQL Server.

Шаги, из которых состоит процедура создания и использования объекта аудита, перечислены ниже:

•    Создать объект аудита и определить целевой объект, в котором будет накапливаться информация аудита.

•    Можно создать спецификацию аудита сервера или спецификацию аудита базы данных.

•    Подключить спецификацию аудита. По умолчанию SQL Server блокирует созданный объект аудита.

•    Проанализировать зарегистрированные события аудита с помощью утилит Windows Event Viewer, Log File Viewer или с помощью встроенной функции FN_READ_AUDIT_FILE.

 

Чертова дюжина: 13 советов для работы с SQL Server 2008 и SSRS 2008. Часть 2*

Кевин С. Гофф (Kevin S. Goff)

* См. Кевин С. Гофф. Чертова дюжина: 13 советов для работы с SQL Server 2008 и SSRS 2008. Часть 1 // SQL Server для профессионалов. 2008. № 12.

 

Репликация DDL в SQL Server 2000 и 2005

По материалам статьи Динеш Асанка (Dinesh Asanka)

 

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

 

Одноранговая репликация транзакций в Microsoft SQL Server 2005

По материалам статьи Динеш Асанка (Dinesh Asanka)

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

SQL Server 2000 предоставляет три типа репликации:

•    Репликация моментальных снимков (snapshot replication).

•    Репликация транзакций (transactional replication).

•    Репликация слиянием (merge replication).

В SQL Server 2005 к вышеперечисленным методам репликации добавился новый:

•    Одноранговая репликация транзакций (Peer­to­peer transactional replication).

Данная статья посвящена описанию нового метода одноранговой репликации транзакций.

Возможности репликации в различных выпусках SQL Server 2005

Все редакции SQL Server 2000 (за исключением SQL Server CE) поддерживали все типы репликации. В SQL Server 2005 ситуация несколько изменилась. Возможности репликации в различных редакциях SQL Server 2005 отражены в табл. 1.

Подписчики, отличные от SQL Server, публикация данных из Oracle и одноранговая репликация транзакций — новые возможности репликации в SQL Server 2005, но они доступны не во всех выпусках. Как видно из таблицы, одноранговая репликация транзакций доступна только в Enterprise и Developer редакциях SQL Server 2005.

Выпуск SQL Server 2005 Developer Edition включает в себя всю функциональность выпуска Enterprise. Однако этот выпуск предназначен только для разработки и тестирования, и не может использоваться в эксплуатационной среде. Следовательно, для того чтобы воспользоваться преимуществами одноранговой репликации транзакций, необходимо иметь выпуск Enterprise. Розничная цена процессорной лицензии для редакции Enterprise примерно в четыре раза выше, чем для редакции Standard, так что вопрос стоимости может быть одним из важных факторов в принятии решения.

Использование одноранговой репликации транзакций

Предположим, что у нас есть обычное приложение электронной коммерции. Для того чтобы избежать простоев и снизить нагрузку на отдельные серверы, база данных этого приложения располагается более чем в одном офисе. Поскольку это online­приложение и данные меняются (добавляются, изменяются, удаляются) в каждом офисе, то все модификации данных в одном офисе должны реплицироваться на серверы во всех остальных офисах. Предположим, что у нас есть базы данных в офисах A, B и C.

Чтобы реализовать подобную схему синхронизации данных в SQL Server 2000 мы должны использовать репликацию слиянием. Офис А — издатель, офисы B и C — подписчики.

Очевидным недостатком такого метода является то, что в нем присутствует «единая точка отказа» в конфигурации репликации. Если B откажет, то репликация между A и C будет продолжать работать и пользователи, подключенные к серверам A и C, не заметят никаких осложнений в работе. Однако если откажет узел A, то B и C будут «изолированы» от системы и изменения на них не будут видны.

Репликация SQL Server 2000 использует иерархию «издатель­подписчик». Успешное функционирование данной конфигурации требует, чтобы издатель был постоянно доступен.

В одноранговой (peer­to­peer) топологии репликации SQL Server 2005 каждый узел действует и как издатель, и как подписчик. Изменения (вставки, обновления и удаления) могут выполняться на всех узлах. Репликация распознает, что на заданном узле произошли изменения, но позволяет этим изменениям пройти по всем узлам только один раз.

Если один из узлов недоступен (например, А), осталь­ные узлы (B и C) продолжают участвовать в репликации. Когда узел A снова становится доступен, он может синхронизироваться с другими узлами (B и C) и получить те изменения, которые произошли после его отказа. Это возможно благодаря тому, что все узлы (A, B и C) функционируют и как издатели, и как подписчики.

Совершенствование репликации в SQL Server 2008 (кодовое название Katmai)

В новой версии MS SQL Server 2008 (Katmai) произведены некоторые изменения, облегчающие настройку и управление одноранговой репликацией транзакций.

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

Также в новом инструменте есть возможность создания связей репликации только между некоторыми узлами, в то время как старая форма представления топологии в виде таблицы требовала связи каждого узла с каждым.

Табл. 1. Типы репликации, поддерживаемые различными редакциями SQL Server (источник: BOL)

Возможности репликации

Выпуски Enterprise / Developer Editions (32- и 64-разрядные)

Выпуск Standard Edition (32-разрядный)

Выпуск Workgroup Edition (32-разрядный)

Репликация слиянием

Да

Да

Да

Репликация транзакций

Да

Да

Да

Репликация моментальных снимков

Да

Да

Да

Подписчики, отличные от SQL Server

Да

Да

Нет

Публикация данных из Oracle

Да

Нет

Нет

Одноранговая репликация транзакций

Да

Нет

Нет

 

Использование динамических фильтров совместно с динамическими снимками

А. Гладченко

Динамические фильтры в репликации позволяют использовать возвращаемые системными функциями SUSER_SNAME() и HOST_NAME() значения для выделения собственных разделов данных каждому подписчику. Кроме этих функций, динамическую фильтрацию можно построить на определяемых пользователем функциях — UDF.

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

Поскольку динамический фильтр подразумевает наличие разных наборов данных, которые передаются подписчикам, создаваемый для первоначальной синхронизации моментальный снимок отличается от стандартного снимка. В таком снимке отсутствует файл BCP, который содержит данные. Данные передаются после применения схемы и указанного в свойствах статей публикации набора реплицируемых объектов. Стандартный моментальный снимок в сжатом виде доставляется подписчику, распаковывается, после чего данные из BCP файла с помощью команды BULK INSERT загружаются в таблицы подписчика. Создаваемый же для содержащей динамический фильтр публикации снимок будет очень маленьким, т. к. не содержит данных, но применяться будет существенно дольше стандартного снимка. Данные будут загружаться таким же образом, как реплицируется вставка, и вставляться будут все значения из таблиц издателя, на основании которых построена публикация. Для больших и даже для средних баз данных такая первоначальная синхронизация или повторная инициализация подписчика может занять много времени.

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

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

 

 К статьям этого номера почти нет исходных текстов. Дополнительно мы предлагаем описание и ссылки для скачивания утилит, которые могут быть полезны администраторам и разработчикам.

 

About Nvu
 
Nvu (pronounced "N-view," for a "new view") is a free, open source software program that allows you to build websites and web pages using a simple WYSIWYG editor (what-you-see-is-what-you-get).  Nvu makes creating web pages as easy as using a word processor and rivals such programs as Adobe's Dreamweaver and Microsoft's Expression Web, only for free!  With Nvu's built-in site manager, connecting to your website and making changes is a snap.

Building Your First Website with Nvu
 
Building a website with Nvu is super easy.  You can have a site up and running in no time with these three simple steps:
1.  Get a Domain Name.  You can do this at the same time you do #2 if you like.  Dotster provides both domain name registration and web hosting.  (Use coupon code 'Nvu' for 15% off.)
2.  Get a Hosting Provider.  If you don't want to set up your own server, you can use a 3rd party hosting service.  These services have gotten incredibly affordable and there are many good companies to choose from.  We'd recommend using Dotster as they are a quality provider and a sponsor of this site.  You can also save 15% off your entire order by using the coupon code 'Nvu' at their site.  
3. Use Nvu to Create Web Pages.  Once you have a server, you simply use the built-in FTP site manager in Nvu to connect to your site and start creating web pages.  It's as easy as using a word processor.  We'd recommend you check out the many tutorial videos users have created on YouTube to help you get started.

Nvu's History
 
The Nvu Open Source project was started several years ago by Linspire, Inc.  At that time, Linspire was committed to bringing Desktop Linux to the masses, and realized that an easy-to-use web authoring system was needed for Linux to continue its expansion to the Desktop. Linspire contributed significant capital, expertise, servers, bandwidth, marketing, and other resources to bring Nvu to life, not just for Linux, but also for Microsoft Windows and Apple Mac users.
 
Linspire contracted with Daniel Glazman from Disruptive Innovations to be the lead developer and maintainer for the Nvu project. Daniel was the chief architect for Mozilla Composer and brought a tremendous amount of experience and expertise to the Nvu project.
 
Nvu was started from the Mozilla Composer code base, as the Mozilla Internet suite was broken up into individual pieces (browser, email, etc.). Nvu picked up where Composer left off, adding additional features, functionality and ease of use.
 
Linspire abandoned the Nvu project when it was sold to Xandros in 2008.  Fortunately, Fabien Cazenave picked up the project and started updating Nvu under the name Kompozer.  Both Nvu and Kompozer versions can be found on our Download page.
 
Nvu is open source and covered under the MPL/LGPL/GPL tri-license.
For more information, visit the FAQ page.(file://.psf/.Mac/Users/kevincarmony/Desktop/nvu/faq.html
 
http://72.167.48.209/screenshots/nvu-1.0-win32-full.zip (7.5 MB)
 

 

SQLServerToolKit
SQLServerToolKit provides DBAs with much needed information at their fingertips.
 
This version is being distributed as CharityWare. If you decide that SQLServerToolKit is right for you, please donate $50 or more directly to the charity listed to the right.
 
Для Sql Server 2000
http://webpages.charter.net/fullsun/sstk.zip (7.5 Mb)
 
Для SQL Seerver 2005 - ожидается вскоре
 

 

EMS SQL Manager for SQL Server Lite
EMS provides a free lite version of their SQL Manager tool with limited administration functions. The SQL Monitor is fairly simple and only works on SQL Server 2005. The feature I like most about this tool is when I am browsing or editing data in a table, I can view the data in a grid or form. The form shows the contents of one row vertically. This is very helpful for reading long columns.
 
EMS SQL Manager for SQL Server is a high performance tool for Microsoft SQL Server development and administration. SQL Manager works with any MS SQL Server versions from 7 to the newest one and supports the latest SQL Server features including new data types (datetimeoffset, hierarchyid, geometry, geography and more), table types and table-valued parameters, logon triggers, backups with compression and other. It offers plenty of powerful SQL tools such as Visual Database Designer that allows creating SQL Server database in few clicks, Visual Query Builder and advanced SQL editor to build complicated SQL Server queries and many more useful features for efficient SQL Server administration. SQL Manager for SQL Server has a state-of-the-art graphical user interface with well-described wizard system, so clear in use that even a newbie will not be confused with it.
 
http://www.download.com/EMS-SQL-Manager-2005-Lite-for-SQL-Server/3000-10254_4-10439252.html (13 MB)

 

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

Hosted by uCoz