Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Вопросы и ответы по MS SQL Server" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
MS SQL Server - дело тонкое...
#061<< #062 |
СОВЕТЫ
Кто такой - DBA? - Краткий обзор
Я получаю этот вопрос уже больше чем несколько раз. Обычно он исходит от кого-то, кто желает стать
DBA или только начинает свой путь на этом поприще, но я думаю, что администраторы также часто
задаются вопросом, чем же является DBA и почему он так необходим. Почему не возможно эту работу
поручить только системному администратору? Или старшему разработчику? Есть большое количество
серьезных причин, по которым и я думаю, что DBA выполняет важную, узкоспециализированную
работу в компании. Кто такой - DBA?
Существует большое количество различных режимов работы DBA и не существует хорошего описания
содержания его работы. Из того, что я видел, есть несколько основных типов DBA: Кто должен заботится о системе?
В разных компаниях это может выполняться по-разному. Вообще, в малых компаниях, DBA мог бы
исполнять все перечисленные выше роли и применять сервисные пакеты, обновления и т.д. В больших
фирмах, DBA не успеет делать дополнительно что-нибудь на NT/UNIX, а сможет только обслуживать
само приложение (SQL/Oracle/DB2, и т.д.). В моей компании, я обслуживаю всё, что связано с SQL, включая
сервисные пакеты для SQL. Сервисные пакеты для NT/2000 и заплаты применяются sysadmin-ом. Он
также заменяет/добавляет жесткие диски, память и т.п. Исполняет резервирование на ленты. Я просто
гарантирую, что SQL Server будет работать в требуемом режиме и довожу до сисадмина, нуждаюсь ли
я в чём-либо. Подготовка к DBA-DOM Изучайте реляционную теорию баз данных. Читайте об этом, и о том, что люди думают по этому поводу. IMHO (по моему скромному мнению), нет никакого "правильного" пути, но существует большое количество особенностей в любом отдельно взятом дизайне. Учитесь столько, сколько Вы можете, и затем принимайте решение, которое соответствует вашей ситуации. Я имею большой опыт в организации сети также как и в программировании, и я думаю, что это действительно мне помогает. Я понимаю, как построена операционная система, и я имею представление, что происходит внутри компьютера. Знание того, как данные перемещаются по сети, также поможет спроектировать лучшую систему и избежать многих проблем. В сегодняшнем мире, я думаю, понимание принципов сетевых соединений является очень важным. В MS мире умение программировать систему требуется только если Вы хотите быть системным программистом. В *nix мире, знание того, как разрабатываются системные утилиты полезно, но я не думаю, что это обязательно требуется. Заключение Всё, что изложено в этой статье - это моё мнение и мои эмоции, основанные на личном опыте и изучении соответствующих материалов. Я уверен - некоторые люди, не согласятся со мной, но я хочу иметь обратную связь, чтобы вносить изменения в эту статью. Я особенно хотел бы получить замечания и дополнения от non-SQL Server DBAs. Если Вы знаете кого-то, кто является Oracle, DB2 или другого типа DBA, пожалуйста перешлите ему(ей) эту статью, и попросите, чтобы они послали мне своё мнение об этой статье Steve Jones
Хранимая процедура "For Each Table"
Микрософт предлагает для использования с SQL Server очень удобную системную хранимую процедуру
по имени sp_msForEachTable. Эта SP предназначена для того, чтобы позволить администратору базы
данных исполнять многие простые операции над таблицами с помощью всего одной команды. Вот полный код новой SP:
drop proc sp__foreachtable create proc sp__foreachtable
/*** Built from the Microsoft original sp__msForEachTable
@command1 nvarchar(2000), @replacechar nchar(1) = N'?',
as
/* Preprocessor won't replace within quotes so have to use str(). */
if (@precommand is not null) /* Create the select */
exec(N'declare hCForEach cursor global for select (object_name(id))
declare @retval int
if (@retval = 0 and @postcommand is not null) return @retval Примеры Использования
sp__foreachtable 'dbcc showcontig(?)' /*** SQL 2000 only ***/ Ограничения использования Есть ещё множество возможностей для усовершенствования этой процедуры. Предлагаемый Вам сценарий не обрабатывает имена таблиц, которые можно использовать, а также команды, которые ожидают, что им будет передан object_id, а не имя таблицы - именно поэтому пример с DBCC SHOWCONTIG подходит для использования только в SQL 2000. Примечание к работе ряда хранимых процедур "ForEach"
Ряд хранимых процедур 'ForEach' включает sp_msForEachTable (представленную выше),
sp_msForEachDB - которая работает на уровне базы данных, и sp_msForEachWorker - которая является
утилитой, называемой "other two". Дополнительная литература sp__ForEachTable способна к более сложной работе чем простые примеры, показанные в этой статье. Поскольку она в основном построена на основе аналога SP от Микрософт (sp_msForEachTable), Вы можете читать о её расширенных возможностях в Books Online для получения дополнительной информации. Эта SP была проверена на SQL 7 и SQL 2000. ПОЛЕЗНОСТИ Вышел в свет очередной номер журнала SQL Server Magazine ONLINE, №5, 2001г.
Диалоги об XML Новости проекта SQL.RU Опубликован альтернативный проекту Устава вариант "Соглашения об участии" в Russian SQL User Group (Русская группа пользователей SQL, RSUG). Все желающие приглашаются к обсуждению. Новые технические статьи Microsoft
BUG:
SQL Server XML Bulk Load Object Retains First Schema Information and Uses it
For Subsequent Invocation of the Execute Method (Q298990) ФОРУМ SQL.RU: САМЫЕ ПОПУЛЯРНЫЕ ТОПИКИ НЕДЕЛИ
Нужна
ли блокировка в следующем случае? ФОРУМ SQL.RU: ВОПРОСЫ ОСТАЛИСЬ БЕЗ ОТВЕТА
Как
выполнить DTS Package из Visual C ? |
#061<< #062 |
|
http://subscribe.ru/
E-mail: ask@subscribe.ru | Отписаться | Рейтингуется SpyLog |
В избранное | ||