SQL.RU
 client/server technologies
 Главная | Документация | Статьи | Книги | Форум | Блоги | Опросы | Гостевая | Рассылка | Работа | Поиск | FAQ |
   
#342<<  #343  >>#344

СОДЕРЖАНИЕ

1.СТАТЬИ
1.1.Основы ввода-вывода Microsoft SQL Server. Часть 2 (продолжение)
2.ССЫЛКИ НА СТАТЬИ
2.1.Статьи на русском языке
2.2.Англоязычные статьи
3.ФОРУМ SQL.RU
3.1.Самые популярные темы недели
3.2.Вопросы остались без ответа
4.КНИГИ
4.1.Программирование баз данных Microsoft SQL Server 2005. Базовый курс
4.2.Освоение Microsoft SQL Server 2005
 


СТАТЬИ

Основы ввода-вывода Microsoft SQL Server. Часть 2 (продолжение)

По материалам статьи Bob Dorr: Microsoft SQL Server I/O Basics. Chapter 2

Ошибка 832

Сообщение об ошибке 832 возникает, когда зафиксирован сбой контрольной суммы в оперативной памяти. Более подробная информации о реализации в оперативной памяти механизма контрольных сумм будет изложена в главе о дополнительных возможностях, появившихся в Microsoft SQL Server 2005.

Ниже представлен пример текста ошибки 832.

    A page that should have been constant has changed (expected checksum: «VALUE», actual checksum: «VALUE», database «DBID», file «FILE», page «PAGE»). This usually indicates a memory failure or other hardware or OS corruption.

Сообщение 832 указывают на серьезную проблему со стабильностью процесса, например, это может быть наложенная запись (scribbler), которая может привести к нарушению целостности данных или даже к их потере.

Ошибка 833

SQL Server 2000 с установленным SP4 и SQL Server 2005 показывают предупреждения о задержках ввода-вывода (stalled I/O), которые будут описаны ниже. Вот пример такого предупреждения 833, которое может встретиться в файле регистрации ошибок SQL Server.

    SQL Server has encountered «##» occurrence(s) of I/O requests taking longer than «##» seconds to complete on file [«FILE»] in database [«DB NAME»] («DBID»). The OS file handle is «HANDLE». The offset of the latest long I/O is: «PHYSICAL OFFSET»

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

  • Сбои в работе антивирусной защиты;

  • Перегрузка из-за компрессии;

  • Потеря сети;

  • Сбои в работе дублирующих путей ввода-вывода.

Дополнительные возможности, появившиеся в Microsoft SQL Server 2005

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

Контрольная сумма

В SQL Server 2005 появились контрольные суммы страниц данных, блоков журнала и резервных копий. Для получения более подробной информации о возможностях контрольной суммы и о способах её использования, обратитесь к разделу ALTER DATABASE статьи о PAGE_VERIFY в Документации по SQL Server 2005.
Повышение возможностей аппаратных средств наряду с всё большим распространением использования антивирусной защиты, кэширующих механизмов и других, промежуточных фильтр - драйверов, повышает сложность подсистемы ввода-вывода и увеличивает число возможных причин отказа. Microsoft SQL Server 2005 и Microsoft Exchange Server реализуют механизм контрольных сумм, позволяющий повысить защиту данных.
Алгоритм контрольной суммы, используемый SQL Server 2005, аналогичен алгоритму, используемому в Microsoft Exchange Server. В алгоритме SQL Server добавлены циклы, позволяющие обнаружить перестановки секторов.
В Microsoft Exchange Server проверка контрольной суммы была добавлена несколько лет назад, и весьма успешно. В библиотеке Microsoft Knowledge Base можно легко найти подробную информацию об ошибке 1018, которая индицирует в Exchange Server расхождение контрольной суммы. Вот один из примеров таких статей в Базе знаний Exchange Server KB151789:

    "Когда Вы запустили транзакцию в базе данных Jet, информационное хранилище или хранилище каталога запишет её в файл журнала транзакций (Edb*.log в Mdbdata или Dsadata). После этого транзакция будет передана базе данных Jet. В этот момент, ядро Jet вычисляет значение контрольной суммы для страницы, которое будет сохранено в заголовке страницы, и затем оно будет запрашиваться, когда файловая система будет записывать 4КБ страницу данных в базу на диске.

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

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

Запись

Страницы данных SQL Server обычно сохраняются на диске в результате исполнения контрольной точки или процесса отложенной записи.

  • SQL Server принимает решение о том, когда выполнить очередную контрольную точку, основываясь на задаваемом с помощью sp_configure параметре глобальной конфигурации "recovery interval" и на количестве используемого в тот момент места в журнале транзакций.

  • SQL Server 2005 принимает решение о необходимости записи на диск грязных страниц из кэша буферного пула, основываясь на данных о вытеснении памяти и времени последнего обращения к страницам.

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

Обратите внимание: Для базы данных model включён режим проверки контрольных сумм (аудит страниц - page audit). Поэтому все созданные в SQL Server 2005 новые базы данных будут иметь активированный режим защиты данных с помощью вычисления контрольных сумм.

Чтение

Когда осуществляется чтение с диска страницы или блока журнала, рассчитывается значение контрольной суммы (page audit) и сравнивается со значением контрольной суммы, которое храниться на странице или в блоке журнала. Если эти значения отличаются, считается, что данные повреждены, и генерируется сообщение об ошибке.
SQL Server использует логику упреждающего чтения, чтобы избавиться от задержек при исполнении запроса, вызванных ожиданием ввода-вывода. Дизайн упреждающего чтения старается выполнять физические чтения и сравнения контрольных сумм вне запроса, что позволяет снизить влияние сверки контрольных сумм на производительность запроса.

Расхождения контрольных сумм

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

ПРОДОЛЖЕНИЕ СЛЕДУЕТ

[В начало]

ССЫЛКИ НА СТАТЬИ

Статьи на русском языке

Автономное распределение нагрузки, часть 1: Cisco Content Switching Module
Алан Бивенс, Чеким Чуор, Донна Диленбергер, Грэг Фэррис, Джон Фентон, Весли Чоу
Интегрированные системы управления системой и рабочей нагрузкой доказали свою ценность и используются для мониторинга и управления корпоративными приложениями и системами. В то время как системы могут многое знать о приложениях, обычно, они не обладают большой способностью управлять скоростью, с которой эти приложения принимают работу. В отличие от них распределители нагрузки могут управлять этой скоростью, но обычно они имеют мало информации о способности приложения успешно обработать запрос.

.NET: Service Oriented Architecture (SOA)
interface.ru
Service Oriented Architecture (SOA) - это новая парадигма проектирования распределенных интегрированных систем. Согласно SOA любые части информационных систем имеющие функциональность рассматриваются как службы (service providers, провайдеры служб), которые предоставляют свою функциональность другим частям системы посредством вызовов их функций. Службы являются компонентами, которые могут быть найдены и вызваны через локальную сеть или Internet. При этом различные службы могут организовываться (orchestrate) для совместного выполнения определенной задачи. SOA обеспечивает концептуальные архитектурные шаблоны и платформы для таких систем. Обычно архитектура таких систем и потоки данных в них близки к структуре бизнес-подразделений, использующих их, и взаимодействий между ними. В некоторой степени происходит соединение информационных технологий и бизнес-процессов на концептуальном уровне. Такое слияние положительно влияет на понимание информационных систем представителями бизнеса (концепция службы более наглядна чем термины "репликация", или "удаленный вызов процедуры"), и на понимание бизнес-процессов разработчиками системы. В качестве платформы для SOA-приложений обычно используются web-службы. Однако, не все информационные системы, построенные на основе web-служб, соответствуют SOA, и SOA не обязательно должна базироваться на технологии web-служб. Концепция SOA впервые была описана в 1996 году, но только в последние годы на волне интереса к web-службам стала широко известной. К этой волне популярности приложило руку и Microsoft - в 1999 году Steve Ballmer озвучил концепцию "software as service", получившую свое воплощение в технологии .NET и web-службах. Поддержка web-служб встраивается во многие продукты Microsoft - BizTalk Server, MapPoint Server, SQL Server 2005 (Yukon), Office 2003.

Certificate revocation check - проверка аннулирования сертификата
Alexander Gladchenko
Проверка аннулирования сертификата может порождать некоторые задержки в работе SQL Server 2005 Management Studio или других утилит и программ, работающих с SQL Server и в результате работы которых могут задействоваться подписанные сертификатами установленные вместе с SQL Server компоненты. Дело в том, что далеко не каждый сервер/компьютер может подключиться через интернет к центрам сертификации для проверки действительности сертификата…

SQL Server 2005 - отличная оценка уровня безопасности от ESG
stbgrus
Аналитики из группы Enterprise Strategy Group (ESG) в конце 2006 года выпустили новый отчет, где сравнили основные СУБД по их уровню защищенности. Главное "резюме", которое сделали ребята из EPG: по уровню производства безопасных и надежных серверов баз данных Microsoft сейчас находится на несколько лет впереди и Oracle, и MySQL.

Релевантность полнотекстового поиска: подход на основе построения терминологической базы документов
С.И.Моисеенко, А.Майстренко
В основе предлагаемого подхода лежат две базовые идеи: 1. Использование возможностей SQL-запросов к реляционным базам данных при осуществлении поиска. 2. Любой текст можно описать посредством предметного указателя (мы избегаем здесь использовать английский аналог предметного указателя - index, чтобы это не вызывало аналогии со структурами хранения информации во внешней памяти).

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

Построение индексов - часть 6: построение секционированного индекса (Partitioned Index)
Lyudmila Fokina
Существуют две основных категории секционированных индексов: 1. Выровненные (когда базовая таблица и индекс используют одинаковые функции секционирования). 2. Невыровненные (когда базовая таблица и индекс используют одинаковые функции секционирования (включая случай, когда базовая таблица вообще не секционирована, а индекс секционирован).

Сообщение об ошибке "Not associated with a trusted SQL Server connection" при попытке подключения к SQL Server 2000
Microsoft
При попытке установить подключение к SQL Server 2000 появляется следующее сообщение об ошибке: Login failed for user <учетная_запись>. Reason: Not associated with a trusted SQL Server connection.

Древовидные структуры в SQL
joe celko
Обзор некоторых общих вопросов, касающихся древовидных структур и иерархии в sql

[В начало]

Англоязычные статьи

8.0 Factors that Affect Batch Cache-ability
Sangeetha Shekar
During batch compilation we make a determination regarding the cache-ability of the batch. Each statement in the batch is evaluated either as not-cacheable, cacheable, cache even though zero cost, set cost on re-use or not-cacheable due to sensitive information. A batch is marked cacheable if at least one statement in the batch is cacheable.

9.0 Memory Pressure Limits
Sangeetha Shekar
The procedure cache responds to memory pressure like all other cache stores built using the common caching framework. The eviction of cache entries under memory pressure is based on the cost of the entry (plan). When memory pressure conditions are reached, in one clock round zero cost entries are removed from the cache store and the cost of other entries reduced (by a factor of two). This is a standard least recently used (LRU) algorithm.

10.0 Plan Cache Flush
Sangeetha Shekar
In SQL Server 2005, certain database maintenance operations or certain dbcc commands such as "dbcc freeproccache" or "dbcc freesystemcache" will clear the plan cache for the instance of SQL Server. Clearing the plan cache causes a recompilation of all subsequent execution plans and cause a sudden, temporary excessive CPU usage and decrease in query performance. To help identify database operations flushing the plan cache as the cause of the sudden temporary decrease in query performance, SP2 includes an informational message in the ERRORLOG: "SQL Server has encountered %d occurrence(s) of cachestore flush for the '%s' cachestore (part of plan cache) due to some database maintenance or reconfigure operations". This message is logged every five minutes as long as the cache is flushed within that time interval.

11.0 Temporary Tables, Table Variables and Recompiles
Sangeetha Shekar
In order to determine if table variables or temporary tables is the best fit for your application, let us first examine some characteristics of table variables and temporary tables:

12.0 Plan Cache Trace Events and Performance Counters
Sangeetha Shekar
The performance statistics trace event introduced in SQL Server 2005, gives persisted plan and runtime statistics information. With the information part of the trace event data when combined with the information available through the plan cache DMV sys.dm_exec_query_stats the performance history of any query can be reconstructed. The advantage of capturing this information via trace along with other plan cache trace events is that the trace data can be persisted by saving it to a trace file on the disk. The trace file contains a chronological list of trace events fired including query plans that can be analyzed for poor plans causing performance problems.

When To Use Cursors
Andy Warren
Most SQL Server DBAs have been taught that cursors are bad and should not be used. However there are some cases and places where they might be useful. SQL Server guru Andy Warren brings us an example of where they may be handy.

Working with Exceptions in ADO.NET
Joydip Kanjilal
ADO.NET is a very rich data access technology with a plenty of powerful features - improved performance, an optimized SQL Provider, seamless support for XML and ability to work in connected and disconnected mode, to name a few. Handling exceptions properly is one of the prime concerns when working with any data access technologies. The new version of ADO.NET includes powerful support for working with exceptions efficiently. This article throws light on how to handle exceptions efficiently when working with ADO.NET and highlights the best practices that can be followed in this context.

DataTable Enhancements in ADO.NET 2.0
Joydip Kanjilal
ADO.NET 2.0 has added many new powerful features to the DataTable class. Some of these features include the ability to load a DataReader instance into a DataTable instance by using the Load method of the DataTable class, the DataTableReader, built-in serialization support, etc. This article highlights these new features added to the DataTable class in ADO.NET 2.0.

SQL Server 2005 Is the One to Beat
Joanne Cummings
Super-fast performance, robust toolset and better security options make Microsoft's latest database management system a must for most shops.

Tour de SQL Part III: Performance Tuning
Eric Johnson
SQL Server 2005 gives you new tools to help your database performance stay ahead of the pack.

Tour de SQL Part II: Administrative Features
Eric Johnson
Every year, the Tour de France is won or lost in the mountains. In this stage of our tour of SQL Server 2005, we look at the critical administrative features that make or break the new database.

Tour de SQL Part I: Versions
Eric Johnson
Join us on a journey through the lush fields and tricky backroads of SQL Server 2005.

Accessing data from SQL Server using C# in ASP.NET
wherecanibuyit.co.uk
This article describes how to access a Microsoft SQL Server database programmatically from within C#, using ASP.NET 2.

Some problems I encountered when using SQL Server Express 2005
wherecanibuyit.co.uk
I was trying to install SQL Server 2005 Express, and got this problem when trying to access the database:

Invalid Descriptor Index Error when Using BCP with SQL Server
wherecanibuyit.co.uk
I was trying to use BCP to import a lot of data into Sql Server. I thought I had my formatfile set up correctly. I was using these commands:

MS SQL Server 2005 full-text indexing
wherecanibuyit.co.uk
I am stingy, so instead of buying Visual Developer Studio 2005 and SQL Server, I made my database-driven website using the free versions: Visual Web Developer Express and SQL Server Express. However, I still wanted to be able to search my database of product reviews using a full-text search, because I was sure that Microsoft had put a lot of work into developing this, and so it must be infinitely better than any crummy search mechanism I could cook up myself. Here's how I did it, and what I found...

Hacking SQL Server
Ted Malone
SQL Injection is a fairly new method of hacking your database. Learn how it's done-and how to protect yourself.

Loading text data into your database using ADO
Index Server Faq
For smaller amounts of text data you can insert data using TSQL insert and update statements. Since SQL 7, you do not need to insert data into the text datatype as a two step process; it can now done in a single insert. If you are inserting larger amounts of data into your tables you are FTI you will need to use the Stream Object of ADO or the AppendChunk method. I find the AppendChunk method too clunky to consider using, I prefer to use the stream object.

You may experience a 45-second delay when you run a full-text query in an instance of SQL Server 2005 that is running on a server without Internet access
Microsoft
Consider the following scenario. You run a full-text query in an instance of Microsoft SQL Server 2005 that is running on a server. The server does not have Internet access. In this scenario, you may experience a 45-second delay.

How to enable replication agents for logging to output files in SQL Server
Microsoft
You can configure the SQL Server replication agents such as, the Snapshot Agent, Log Reader Agent, Queue Reader Agent, Distribution Agent, and Merge Agent to capture more information about error messages and procedure calls to a text file. For example, you can capture the additional information about error messages and procedure calls to troubleshoot agent failures.

Error and Warning Groups
Gert Drapers
One of the things we did at the end of the product cycle, when we decided that we need to allow you to filter out warnings, is to clean up all error and warning messages and concisely group them in to specific buckets. Understanding these buckets will go a long way helping you interpret the cause of the warnings and errors.

Processing appears to stall or become sluggish on multi-processor machines running Analysis Services 2005
Wayne Robertson
Over the past several months PSS has received several reports of processing for cubes in SQL Server 2005 Analysis Services hanging or becoming unbearably slow. Most of the reports have involved high end 64-bit servers with 4 or more processors and 8GB or more RAM. In many instances the processing can be "jump started" again by connecting and issuing a simple MDX query.

MDM Master Data Management Hub Architecture - Population and Synchronization
Roger Wolter
If you have been following this series you should now have a good understanding of the architectural issues around deciding what your MDM hub database looks like and what kind of data is kept in it. In this post we'll discuss how to populate the hub with good clean data and how to ensure that the data stays clean and consistent. This involves populating the hub database with data from the source systems initially and (with the exception of a pure repository model hub) keeping the source systems synchronized with the hub database as the source systems make changes to the data.

PowerShell and SMO
Allen White
I started seriously trying to learn the new Windows PowerShell scripting language this week. I started with the TechNet Webcast: An Overview of Windows PowerShell (Level 200) that Don Jones did in December. I worked with Don at Microsoft on the MCITP:Database Developer Objective Domain, and he's got a great presentation style, so that complicated things become clear quickly. I then started searching for sites that specifically used SMO and PowerShell together.

Mastering OLAP Reports: Parameters for Analysis Services Reporting, Pt. II
William Pearson
A common enterprise reporting requirement among information consumers is the capability to filter reports at run time for specific information they need. This is typically managed via parameterization, also known as "prompting", where the filter criteria is requested (and hence the consumer is "prompted") when the report is run. Depending upon the parameter type (the most common are type-in and picklist), the filters are typically enacted when the consumer types or selects a value, or a series of values.

Set-based approach to finding consecutive records
Rob Farley
I'm sure I've written about this before, but it comes up so regularly in the newsgroups that I thought I'd write an answer here.

Index Build strategy in SQL Server - Part 3: Offline Serial/Parallel Partitioning
Lyudmila Fokina
There are two main categories of partitioned index build:

Who Put Data Quality in My CRM? News from Microsoft and Group 1
Jill Dyche
In which two worlds--data quality and CRM--finally collide, and Jill relishes the soft, chewy center. (Yeah, we know, it's a mixed metaphor, but you'll get the point when you read the blog.)

Writing Secure Transact-SQL
Bart Duncan
There are plenty of good sources of information about how to deploy SQL Server in a secure fashion. However, these resources are often targeted at database administrators tasked with securing already developed applications. In addition, there is a rich body of information that discusses writing secure .NET and ASP.NET code, including .NET code that accesses SQL Server. However, many of these resources focus on the data access code that runs on the application servers rather than the Transact-SQL (T-SQL) code that executes within SQL Server. Developing T-SQL code that runs securely on SQL Server is the primary focus of this column.

How do I use GETDATE() within a User-Defined Function (UDF)?
ASP FAQ
SQL Server 2000 added the support for user-defined functions, but there are a few limitations which can be roadblocks at first. One is that you cannot use a non-deterministic function within a UDF, e.g. GETDATE(). So, let's say you are trying to create a function that returns this moment, but a day in the future (e.g. tomorrow at this exact time). You would think about it this way:

What do I need to know about SQL Server 2000 SP4?
ASP FAQ
Before you install: Make sure you do all of your reading beforehand, including the links offered in Article #2531.

How to improve concurrency in a SQL Server 2005 application by using built-in functions
Microsoft
This article describes how to improve concurrency in a Microsoft SQL Server 2005 application by using built-in functions instead of by using system tables. An example of a built-in function is the OBJECT_ID function. Examples of system tables are the sysobjects system table and the sys.objects system table. SQL Server 2005 uses views to access the underlying system tables. These views may select a plan that performs a table scan or a clustered index scan. The scan reduces concurrency when the views access the system table. For example, you can use the sysobjects system table to drop a table as shown in the following Transact-SQL statement.

SQL Agent Recurring Job Schedules in Seconds
sqldev.net
The SQL Agent user interface for creating job schedules only allows you to create recurring job schedule as small as 1 minute recurrence intervals.

sp_waitstats
sqldev.net
Analyze SQL Server 2000 resource utilization using wait states. This stored procedure provides an overview of the resource utilization of your SQL Server instance, based on the wait statistics information captured using: DBCC SQLPERF(WAITSTATS). The stored procedure aggregates the wait times per wait type (resource).

Replicating SQL Server 2000 across Heterogeneous Databases
sqlteam.com
This article was submitted by Sujoy Paul. He writes "The plethora of mission critical databases in most companies has made it imperative to harness the valuable data by integrating across various database vendors and on different platforms. The seamless integration of the complexities involved is made possible by using replication across heterogeneous sources. MSSQLServer 2000 enables the usage of both snapshot and merge replication to take place across heterogeneous databases by OLEDB and ODBC. This article explains the usage of replicating data from MSSQLServer 2000 database to Access database."

The easy fix to mysterious SQL collation errors
Jonathan Rabson
I'm doing this query that's the same SELECT statement for two tables with a UNION ALL connecting them. While each query works great on its own, when I try to run them together (with the UNION ALL) I get this error message:

SQL Server 2005 Command Line Tool "SQLCMD" - Part I
Muthusamy Anantha Kumar
Microsoft shipped the SQL Server 2005 command line tool "SQLCMD" along with SQL Server. This SQLCMD replaces the old ISQL command line utility and the OSQL utility. This series will illustrate the various ways of using the SQL Server 2005 command line utility "SQLCMD".

Quick Tip: Performing an FTP rename
Nigel Rivett
A common requirement is to process files from an FTP directory. Often this is done by processing every file in the directory and moving each file to an archive directory after processing. Therefore, on the next run, the "live" directory will only contain unprocessed files and the "archive" directory will provide a record of the files processed.

Creating a SSIS Custom Source Component
Paul Mu
In this article author Paul Mu shows us how you can create a custom component for the new SQL Server 2005 Integration Services environment.

A Security Overview of Microsoft Visual Studio 2005 Team Edition for Database Professionals
Richard Waymire
Microsoft Visual Studio 2005 Team Edition for Database Professionals (DB Pro) is the most recent addition to the Microsoft Visual Studio Team Suite of products. The mission of this product is to bring developers of database application code (Transact-SQL for Microsoft SQL Server 2000 and Microsoft SQL Server 2005) into the application development life cycle. For more product information about Visual Studio 2005 Team Edition for Database Professionals, see the Database Professional Team Center for Visual Studio Team System.

SQL Linked Server Query failed with "Login failed for user …"
SQL Protocols
SQL Server 2005: "Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'". SQL Server 2000: "Login failed for user "(null)". Reason: Not associated with a trusted SQL Server connection".

Troubleshoot Connectivity Issue with SQL Server Express 2005
SQL Protocols
Recently, we answered a lot of customer questions about how to make a successful connection to SQL Express 2005 through MSDN forum and our blogs. Here, I collect basic info about it and a brief guide of making local and remote connection to SQL Server Express 2005.

Configure Aliases Programmatically Using WMI
SQL Protocols
In my previous post, I provided some sample C# code that allows you to configure SQL Server connection properties remotely through Windows Management Instrumentation. But WMI can also be used to configure client connection properties on a remote machine. Below I will provide some sample C# code to manage client side Aliases.

Restrict IP Address to prevent invalid login attack to SQL Server
SQL Protocols
Recently, we in customer scenario, amount of attacks come through making connection to SQL Server 2005 and trying invalid sa login. Under such a situation, SQL Server report error " login failed for user sa [CLIENT..]". It is quite annoying to get a lot of this kind of error under an attack and consequently impact the performance of SQL Server.

More GNE (General Network Error) messages when running SQL Server after installing service pack 1 for Windows Server 2003 and TCP registry key SynAttackProtect
SQL Protocols
We found this issue after SQL Server 2005 Beta2 when w2k3sp1 (Windows 2003 server service pack 1) was one of our default OS for test. Lately, quite a few customers have reported seeing this issue during connection scalability test of SQL Server 2005 or on SQL Server 2000 production server, after upgrade base OS to w2k3sp1. This issue results from a subtle winsock behavior change caused by that w2k3sp1 server has enabled SynAttackProtect by default. This key is configurable through "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\SycAttackProtect{DWORD}". As documented in SQL Server 2005 Book-On-Line, one way to resolve this issue is to disable it by set SynAttackProtect value to 0. Note that, event though we document this solution in SQL Server 2005 BOL, it applies to both SQL Server 2005 and SQL Server 2000. In this post, I want to explain what is really happening under the cover and help you to understand the risk to turn this key off.

Checklist and tips for Connectivity Questions
SQL Protocols
In order to better assist troubleshooting connectivity related issues, the more specific you describe the problems, the faster we can help you out. Please take a few minutes to answer the following questions and post them along with your specific repro steps.

Getting netmon sniff on local machine
Sapna Jeswani
To be able to do this, you need more than one network interface cards on the local machine.

Error Messages of SQL Server 2005 Start Up Failure
MING LU
SQL Server 2005 could fail to bring up due to various causes, there are several great blogs that talk about different reason:

"No process is on the other end of pipe" caused by bad certificate
MING LU
In this blog, I am focusing on one specific error message which I think a little confusing for you to troubleshoot the connectivity issue against SQL Server 2005.

Troubleshooting Netlib that Comes with MDAC2.8 SP1/NET1.0, SNAC, SQL Server 2005 and NET 2.0 with ETW Tracing
Nan Tu
Ever have issue with GNE (general network error)? Using ETW tracing can help. For feature description about ETW tracing for data access components, please refer to http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsql90/html/data_access_tracing.asp. Note that all commands used in this blog are shipped with OS by default since WINDOWS 2000.

SQL Server 2005 Remote Connectivity Issue TroubleShoot
MING LU
With shipping SQL Server 2005, we heard from customer feedback about suffering make successful remote connection against SQL 2k5, plus, if running SQL Server on XP/WIN2K3/VISTA behind firewall, such problem occurs more frequently and harder for customer to get clue of behind reason.

Building T-SQL Custom WSDL generator
Jimmy Wu
We've gotten feedback from customers who have asked if it is possible to write a custom WSDL generator in T-SQL. For those customers who do not wish to enable SQL CLR support, the following sample T-SQL SP can be used as a starting point for generating your own custom WSDL. Please be advised that this sample is just as that, a sample. It is NOT production level code and is provided as a technical demonstration that it is possible.

Understanding Kerberos and NTLM authentication in SQL Server Connections
MING LU
In this post, I focus on how NTLM and Kerberos are applied when connecting to SQL Server 2005 and try to explain the design behavor behind several common issues that customers frequently hit.

"Cannot Generate SSPI Context" error message, Poisoned DNS
Xinwei Hong
Incorrect DNS can lead to various network connectivity issues. In this post, I explain how it affects your connection to SQL Server. In some cases, you may see the well-known "Cannot Generate SSPI Context" error message.

Connection Alias
Xinwei Hong
SQL Server client stack has a facility to let user define connection aliases. Connection Alias can usually help user make connection eaiser, faster and with more convenience. However, if it's not used properly, it sometimes results in connectivity issues which might be difficult to isolate.

32 bit tools on a x64 server
Louis Davidson
Ok, I readily admit I don't know everything about SQL Server. But today I learned something that I would have thought I would have seen somewhere. I was having issues getting an SSIS package to build some offline cubes (on my 32 bit workstation, and tested initially on a 32 bit server) to work on a 64 bit server.

Running a master db residing stored procedure in current database context
Mladen Prajdic
I recently wanted to create a stored procedure that would be only in master database and get some information_schema stuff for the current database.

Message 18456 from a distributed query
Microsoft
When you run a distributed query against a Microsoft SQL Server linked server on a Microsoft Windows NT 4.0-based computer, you receive the following error message: Server: Msg 18456, Level 14, State 1, Line 1 Login failed for user '\'

Secondary Logon (Run As): Starting Programs and Tools in Local Administrative Context
Microsoft
Windows secondary logon allows administrators to log on with a non-administrative account and still be able to perform administrative tasks (without logging off) by running trusted administrative programs in administrative contexts. In this scenario, system administrators require two user accounts: a regular account with basic privileges, and an administrative account (this can be a different administrative account for each administrator or a single administrative account shared among administrators).

You may not be able to connect to a SQL Server that is running on a Windows Server 2003 computer by using Windows authentication
Microsoft
After you log on to your computer that is running Microsoft Windows Server 2003 by using a Windows user account that has local administrator credentials on your computer, if you try to connect to an instance of Microsoft SQL Server that is running on the computer by using Windows Authentication, the connection may not be successful.

What Microsoft Visual Studio 2005 Team Edition for Database Professionals Can Do for You
Tony Loton
This article provides an overview of the latest addition to the Microsoft Visual Studio Team System: Visual Studio 2005 Team Edition for Database Professionals. (17 printed pages)

Fixing damaged pages using page restore or manual inserts
Paul Randal
Here's an interesting scenario that cropped up today. You have a database on a RAID array that failed and has zero'd out a page. How can you get the data back?

CPU Pressure is Huge, But Where is the Wait?
Linchi Shea
SQL Server waits enable you to identify where SQL Server is spending a lot of time doing nothing but waiting. This allows you to quickly zoom in and focus on the problem areas that are most relevant to the root cause, and will most likely help cut down time you may otherwise waste on, for instance, irrelevant perfmon counters or SQL trace events. No doubt these waitstats are extremely useful, and I've had good successes using them in a number of projects.

32-bit vs. x64
Linchi Shea
When it comes to the issue of 32-bit vs. x64, you can easily walk away from a presentation with an impression that going to x64 will most likely give your SQL Server application a performance boost. I'd like to show you--with some test data--that you should be careful with that impression.

Some VLDB Availability Tidbits
Linchi Shea
When dealing with VLDB availability, I found it useful to keep in mind a set of simple and general guidelines. Let me highlight them here.

Beware of Shifting SAN
Linchi Shea
Let's say you are trying to determine the performance impact of a neat database design change you have just devised on an application. So you run some tests with the existing design and the tests run for several hours. Coming back the next day, you make the change and re-run the same tests. The test results look fantastic. Now, before you jump up and down announcing to the world how great your new design trick is, double check whether your change is the only variable responsible for the performance improvement.

Msql -- A Little Wrapper Goes a Long Way
Linchi Shea
Have you ever run into a situation where you'd like to search many of your SQL Server instances to look for a specific piece of information? Ideally, you should maintain an inventory database of all your SQL Server instances so that all you need to do is query that database. In case you don't have such an inventory (shame on you!) or the inventory is not kept updated to the minute (which is quite understandable!), I have a little tool for you.

AWE and 3GB: An Empirical Picture
Linchi Shea
Haven't we heard enough about AWE and 3GB? Yes, I bet you have, and I won't bore you with regurgitating any second-hand information or rehashing any Microsoft documentation or whitepapers. Instead, I'll give you my test results to highlight how much buffer pool memory a 32-bit SQL Server 2005 instance can consume for each combination of the following three configuration parameters:

Performance Impact of Enabling Page Checksum and Default Trace
Linchi Shea
"Should I keep the database page checksum and the default trace enabled on SQL Server 2005?" That is a frequently-asked best practice question. Out of box, these two options are enabled. Although you can argue about the pros and cons of enabling or turning off these options, it is mostly an empirical question that should be answered with solid test data.

Performance Impact of Querying SQL Server 2005 Scheduler-Related DMV's
Linchi Shea
In their excellent whitepaper "How to Diagnose and Correct Errors 17883, 17884, 17887, and 17888", Bob Dorr and Sameer Tejani put forward the following warning regarding querying about the activity of the SQL Server 2005 schedulers:

VSTS4DBP: Database name does not get included in TFS builds
Jamie Thomson
I found a bug in datadude yesterday and, with a little help, I was able to come up with a workaround so figured I'd post here in case anyone else comes up against it.

MDM Master Data Management Hub Architecture - Maintenance and operation
Roger Wolter
If you have been following this series, you have learned how to design an MDM hub database, how to load it with master data and how to keep the data synchronized with your operational systems. In this post I'll discuss the tools and processes you will need to design to keep it running smoothly.

MDM Master Data Management Hub Architecture - Reading Material
Roger Wolter
I did some searching for other MDM material so I thought I would pass on what I found:

SOA and Data
Roger Wolter
It has been about a year since I started my current job which is trying to evangelize the architectural aspect of data in SOA. I thought this would be an appropriate time to share some of what I have learned.

Trouble Shooting Query Performance Issues Related to Plan Cache in SQL 2005 RTM and SP1
Sangeetha Shekar
If after upgrading from SQL 2000 to SQL 2005 RTM and/or SP1, you notice decreased OLTP database application throughput, bloated plan cache or out of memory errors, you will need to gather machine configuration information and system performance data in order to perform a detailed analysis. Below, we will outline the steps to take to gather relevant data in order to determine if the problem is plan cache related.

2.0 Diagnosing Plan Cache Related Performance Problems and Suggested Solutions
Sangeetha Shekar
Plan cache related performance problems usually manifest in decrease in throughput (or increase in query response time), and some times out of memory errors, connection time outs. None of these symptoms however point to plan cache related performance problems specifically. In order to determine and further isolate the cause of the slowdown the following steps are recommended:

3.0 Changes in Caching Behavior between SQL Server 2000, SQL Server 2005 RTM and SQL Server 2005 SP2
Sangeetha Shekar
In SQL Server 2000 and 2005, the cost of a query depends on 3 factors: number of disk IO requests, number of context switches during query compilation (in 4 ms quantums) and the number of memory pages, both from single and multi-page allocations. In SQL Server 2005, the original cost of the query is a power of two, the exponent being the sum of the contributions of disk IO's, context switches and memory pages to the cost.

SQL Server Security: Fixed Database Roles
Brian Kelley
Brian is back with a new security article, this time working through the details of the fixed database roles. There are some important concepts here. In particular if you're not totally clear on the difference between dbo and db_owner, read this article.

SSIS: ForEach Looping through a recordset
Louis Davidson
I was trying to find a way to repeatedly run the same MDX CREATE GLOBAL CUBE statement 70 times, building 70 different offline cubes for sales rep type folks to carry around for a client, and I just couldn't get it. I have some experience with SSIS, mostly from writing a tutorial on how to do RSS feeds with SSIS earlier that I am not sure anyone read :), but not with the ForEach container. I had spent the past few days attempting to get the cube building thing actually working, struggling mostly with the whole 64 bit issue. I was staring at having 70 ExecuteSQL tasks, each with very similar text, and that was not cool at all.

Index Build strategy in SQL Server - Part 3: Offline Serial/Parallel Partitioning (Aligned partitioned parallel index build)
Query Processing Team
In case of parallel build we scan and sort partitions in parallel and the actual number of sort tables existing at the same time will depends on the actual number of concurrent workers. Partitions are being chosen by workers one by one and when one worker completes with one partition it takes the next partition which is not yet taken by another worker. Each worker builds 0 - N partitions (we do not share one partition among multiple workers). Why can it be 0? If DOP > # of partitions, then we do not have enough partition to give out to all the workers(s). Which partition a worker is going to work on? This is non-deterministic per execution. First come first serve.

New Index Locking Granularity in SQL Server 2005 Gives You More Options
Brad M. McGehee
While most DBAs are familiar with how locking works with tables, few DBAs are familiar with how SQL Server 2005 applies locking to indexes. That's right, indexes, just like tables, are subject to locking. And as most DBAs already know, inappropriate locking (in tables or indexes) can negatively affect the performance of SQL Server.

Calculate columns and averages with SQL Server's HAVING clause
Arthur Fuller
Arthur Fuller gives a brief overview of SQL Server's HAVING clause and provides code examples that demonstrate how to use it. For instance, he shows how to use HAVING to test aggregates based on a child table.

[В начало]

ФОРУМ SQL.RU

Самые популярные темы недели

Ваше мнение об упражнениях SELECT на http://sql.ipps.ru
Кто на чем пишет клиентов под SQL Server?
Tool Вы знаете что твориться на ваших 10-30+ серверах ?
Конфигурация внешних RAID массивов под большие объемы данных > 1TB
Как восстановить базу ...?
Производительность GUID
Перестала выполняться храним. процедура
SQL2
"Баковское" округление на T-SQL (как Math.Round в .NET)
sp_releaseapplock
Импорт/экспорт таблиц. Перенос данных таблиц с одной БД в другую
импорт/экспорт/Excel
Где я ошибаюсь?
Падает сервер 2005
Бесплатные курсы по SQL Server 2005
2xRAID1 vs RAID5?
Как безболезненно удалить лишние SP
Найти разницу 2-х строк
Error: 605, Severity: 21, State: 1
1Сv8 + SQL 2005 - помогите найти причину "тормозов"

[В начало]

Вопросы остались без ответа

Считывание в Image с правами только чтение.
Безопасность SQL Server 2000
Разная кодировка при экспорте в DBF. Почему?
Помогите MS DTC has cancelled the distributed transaction.
Кто-нибудь пробовал через SMO переименовывать ФК?
Помогите создать запрос
Слетели счетчики производительности
SQL 2005 x64 и память
Фильтрация пустых полей в профайлере MS SQL Server 2005
Проблема написания запроса к БД MS SQL (Everest)
Вьюшки в 2005 из Access XP.
sql 2005 integration services - transactions
Замедление drop/create # + exec sp_executesql (исследование)

[В начало]

КНИГИ

Программирование баз данных Microsoft SQL Server 2005. Базовый курс

Роберт Виейра

832 стр., с ил.; ISBN 978-5-8459-1202-2, 0-7645-8433-2; формат 70x100/16; твердый переплет; серия ...для начинающих (от Wrox); 2007, 1 кв.; Диалектика. Книга в типографии

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

[В начало]

Освоение Microsoft SQL Server 2005

Майк Гандерлой, Джозеф Джорден, Дейвид Чанц

1104 стр., с ил.; ISBN 978-5-8459-1208-4, 0-7821-4380-6; формат 70x100/16; твердый переплет; серия Mastering; 2007, 1 кв.; Диалектика. Планируемая дата выхода - 2007, 1 кв.

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

[В начало]

#342<<  #343  >>#344
Rambler's Top100 Рейтинг@Mail.ru  Administrator: Обратная связь 
Copyright: SQL.Ru 2000-2013