Отправляет email-рассылки с помощью сервиса Sendsay

MS SQL Server

  Все выпуски  

MS SQL Server - дело тонкое...


Информационный Канал Subscribe.Ru

#115<<  #116

СОДЕРЖАНИЕ

1.СОВЕТЫ
1.1.Тюнинг подсистем I/O для SQL Server
1.1.1.Недостаточное количество жёстких дисков
1.1.2.Увеличение числа свободных блоков подключения
2.ССЫЛКИ НА СТАТЬИ
2.1.Отечественные статьи
2.2.Новые технические статьи Microsoft
2.2.Англоязычные статьи
3.ФОРУМ SQL.RU
3.1.Самые популярные темы недели
3.2.Вопросы остались без ответа

СОВЕТЫ

Тюнинг подсистем I/O для SQL Server
Автор: Александр Гладченко

В статье рассматриваются два рецепта устранения проблем подсистем ввода-вывода сервера с установленной ОС Windows NT/2000 и обслуживающего MS SQL Server.

Недостаточное количество жёстких дисков

Одной из возможных причин, следствием которой становится плохая производительность сервера, является недостаточная пропускная способность подсистемы ввода - вывода (I/O). Хотя на пропускную способность подсистемы I/O влияет много факторов, наиболее частой причиной потери производительности является недостаточное количество жёстких дисков. Ситуация, когда для разворачивания SQL Server используется обыкновенный персональный компьютер, очень типична для большого количества российских фирм, а использование IDE дисков, являющихся более дешёвым решением по сравнению с дисками SCSI, становится повсеместной практикой. К тому же, как бы не расширялся в последнее время рынок не дорогих RAID контроллеров, избыточность дисков по-прежнему остаётся для многих не позволимой роскошью. Следствием этого является то, что когда подсистема I/O перестаёт успевать обработать нагрузку создаваемую SQL Server, исполнение запросов к серверу замедляется, а блокировки держатся намного дольше. Одним из косвенных признаков того, что подсистемы I/O стала "узким местом", является снижение утилизации процессора (CPU).
Чтобы наверняка определить, является ли подсистемы I/O "узким местом", можно воспользоваться оснасткой "Производительность" (Performance Monitor), обратившись к набору счётчиков "Физический диск" (Physical Disk), двумя наиболее показательными среди которых являются: "Среднее время записи (чтения) на диск" (Avg. Disk sec/Write и Avg. Disk sec/Read). Эти счётчики характеризует среднее время в секундах, затрачиваемое на одну операцию чтения или записи данных на диск. Если среднее значение одного их этих счётчиков для одного диска выше 0,02 секунды, это говорит о том, что дисковые операции слишком интенсивны. Типичная продолжительность одной, произвольной операции чтения современного диска должна быть приблизительно 0,006 секунды.
Если Ваша подсистема I/O стала "узким местом", придётся всё-таки рассмотреть вопрос или об увеличении числа дисков и разнесения на них файлов баз данных и журналов транзакций, или применения RAID - массивов.

[Содержание]

Увеличение числа свободных блоков подключения

Если при анализе системного журнала Event Viewer Вы обнаружили появления сообщения, Например:

Event ID: 2022
Source: Srv
Description: Server was unable to find a free connection 144 times in the last 60 seconds

Это говорит о том, что сервер не способен вовремя обработать все сетевые запросы, которые поставлены в очередь сетевым уровнем потока I/O. Автору статьи пришлось наблюдать такую ситуацию при репликации шести публикаций на порядка двадцати подписчиков. Сервер исполнял роли издателя и дистрибутора. Дисковая подсистема успешно справлялась с обработкой задач репликации. Ошибки наблюдались во время интенсивного подключения агентов репликации слиянием к издателю.
Решении этой проблемы, согласно рекомендаций Майкрософт, состоит в добавлении двух ключей реестра в ветку:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters

· MaxFreeConnections - этот ключ задаёт максимальное число свободных блоков подключения.
  Value Name: MaxFreeConnections
  Data Type: REG_DWORD
  Value data: Any Value Up to 100 (in decimal)

· MinFreeConnections - этот ключ задаёт минимальное число свободных блоков подключения. Применяется только для   Windows NT 4.0. Для W2K не имеет никакого эффекта.
  Value Name: MinFreeConnections
  Data Type: REG_DWORD
  Value data: Any Value Up to 32 (in decimal)

Представленный ниже список показывает заданные по умолчанию значения MinFreeConnections и MaxFreeConnections для каждой из стандартных установок оптимизации сервера:

· Minimize Memory Used
  MinFreeConnections = 2
  MaxFreeConnections = 2

· Balance
  MinFreeConnections = 2
  MaxFreeConnections = 4

· Maximize Throughput for File Sharing
  MinFreeConnections = 4
  MaxFreeConnections = 8

· Maximize Throughput for Network Applications
  MinFreeConnections = 4
  MaxFreeConnections = 8

Ориентируясь на стандартные значения, Вы можете путём последовательного, не значительного увеличения значений добавленных Вам новых параметров, подобрать их такое значение, что приведёт к исключению возможности появления Event ID: 2022.

ОБРАТИТЕ ВНИМАНИЕ: Вы должны перезапустить компьютер для того, чтобы изменения вступили в силу.

Дополнительную информацию Вы можете найти в следующих статьях Microsoft Knowledge Base:
How to Troubleshoot Event ID 2021 and Event ID 2022
Receiving Multiple Instances of Event ID 2022 Q245080

[Содержание]

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

Отечественные статьи

Обработка денег в C#
Представляемая статья описывает особенности работы с денежными величинами и логику разработки специализированного типа данных в C#...

[Содержание]

Новые технические статьи Microsoft

WebCast: Troubleshooting Microsoft SQL Mail
SQLDescribeParam Returns Errors If the Query Involves an Outer Join
SQL Server 2000 User-Defined Functions White Paper
PRB: SQL Server Agent Fails to Start on Windows 9x When You Change the sa Password
PRB: SQL Server 7.0 MSDTC Administrative Console Unavailable on Windows 2000 from Program Menu
PRB: sp_grantlogin "NT AUTHORITY\SYSTEM" Fails on Microsoft Windows NT 4.0
PRB: Scheduled DTS Package Fails With "Permission Denied: CreateObject"
PRB: Overlocalized Sort Order Strings in Access/Jet ODBC Driver
PRB: Need to Map to Default Admin Account and Use NULL for Password In Order to Query Linked Server to Access Database
PRB: Legacy DB-Library Application May Fail to Connect After You Install SQL Server Client Tools
PRB: Full-Text Searches for Data That is Enclosed in Parenthesis() Inside HTML Tags is Not Being Returned
MS02-039: Buffer Overruns in SQL Server 2000 Resolution Service Might Enable Code Execution
INFO: Upsize SQL Server 2000 Desktop Engine to SQL Server
INFO: Understanding Microsoft's Oracle ODBC Driver Versions
INF: Using SQL Server 2000 with FIPS 140-1 Ciphers
INF: SQL Server 7.0 Security Update for Service Pack 4
INF: SQL Server 7.0 Security Update for Service Pack 3
INF: SQL Server 2000 Security Update for Service Pack 2
INF: SET SHOWLPLAN_ALL and the Microsoft SQL Server ODBC Driver for SQL Server 2000
INF: Readme.txt for SQL Server 7.0 Service Pack 1
INF: Potential Causes of the "SQL Server Does Not Exist or Access Denied" Error Message
INF: Installation Order for SQL Server 2000 Enterprise Edition on Microsoft Cluster Server
INF: How to Obtain the Latest SQL Server 2000 Service Pack
INF: How to Author MSDE 2000 Setup Packages with Microsoft Visual Studio Installer 1.1
INF: Disaster Recovery Articles for Microsoft SQL Server
HOW TO: Use Replication with SQL Server 2000 Desktop Engine (MSDE 2000)
HOW TO: Troubleshoot a SQL Server Desktop Engine 2000 Installation and Upgrade
HOW TO: Odbcping.exe to Verify ODBC Connectivity to SQL Server
HOW TO: Obtain and Install SQL Server 2000 Desktop Engine (MSDE 2000)
HOW TO: Manually Remove SQL Server 2000 Default, Named, or Virtual Instance
HOW TO: Create a DTS Custom Task by Using Visual Basic .NET
HOW TO: Configure Memory for More Than 2 GB in SQL Server
HOW TO: Cluster SQL Server 2000 Analysis Services in Windows 2000
HOW TO: Change the SQL Server Service Account Without Using SQL Enterprise Manager in SQL Server 2000
General Repository Error When Updating Metadata
FIX: xp_sendmail Generates UNICODE CSV File Format
FIX: Xp_readmail May Cause System to Stop Responding in Windows 95 or Windows 98
FIX: xp_grantlogin and xp_revokelogin May Fail on Orphaned Windows NT Accounts
FIX: Writeback Fails with "Relational data provider reported error: []." Error Message
FIX: VBDSOWriteEnableCube: Debug Assertion Caused by a Data Type Not Addressed in the Sample Code
FIX: Using SQL Server 2000 Merge Modules May Result in Confusing Message
FIX: Uppercase Characters are not Sorted Before Their Corresponding Lowercase Characters When You Use the Nocasepref Sort Order
FIX: Upgrade Wizard GUI Allows Adding of New File Groups to Model and TempDB Databases
FIX: Upgrade to SQL Server Fails When MSDE Installed from MOD
FIX: Unhandled Exception Error Querying with the Data Mining Provider from ADO+ and C#
FIX: Unable to Connect to SQL Server 2000 When Certificate Authority Name Is the Same As the Host Name of the Windows 2000 Computer
FIX: Unable to Choose Article Resolver When You Use SQL Server 2000 Distributor and SQL Server 7.0 Publisher
FIX: Transactional Publications with a Filter on Numeric Columns Fail to Replicate Data
FIX: Transaction Log Restore Fails with Message 3456
FIX: Text Truncated in Replication Property Page with Japanese Locale
FIX: SYBASE CT-Library Clients Cannot Connect to Microsoft SQL Server 7.0
FIX: SQLTables() with a Server-Side Cursor Returns No Data
FIX: SQLSetCursorName Fails When "Use ANSI Quoted Identifiers" Is Cleared
FIX: Sqlservr.exe Non-Trusted Connection Through OPENROWSET Allows Access to Service Account
FIX: SQLMail Extended Stored Procedures May Fail with an Access Violation on SQL Server 2000 SP2 when SQL Server is Run As a Windows NT Service
FIX: SQLDMO GetProcessInputBuffer Returns Incorrect Result
FIX: SQL Server ODBC Driver Ignores Authentication Setting
FIX: SQL Server Driver Fails to Connect over TCP/IP Using Three Parameters in Address Keyword
FIX: SQL Server CE Subscribers May Receive Duplicate Changes on Synchronization
FIX: SQL Server CE Subscribers May Encounter Unnecessary Network Traffic on Synchronization
FIX: SQL Server CE Is Missing Oledb.lib File for eMbedded Visual C++ 4.0
FIX: SQL Server 7.0 Microsoft Search Fails to Start With Error 1332
FIX: SQL Server 2000 May Be More Aggressive with Lazy Writes Than SQL Server 7.0
FIX: SQL Mail 2000 Needs Microsoft Outlook 2000 Client
FIX: SQL Enterprise Manager May Experience an Access Violation When It Monitors Remote Servers Over Slow Connections
FIX: SQL Enterprise Manager May Experience an Access Violation in the COleUtilEnumConnections::Release Function
FIX: Service Pack Installation May Save Standard Security Password in File
FIX: RPC Clients Unable to Login to SQL Server with Windows Authentication
FIX: Replication Removed from Database After Restore WITH RECOVERY
FIX: Real-Time Cube Unable to Re-Establish SQL Server Connection After Network Errors Occur
FIX: Query Results in Message Body of xp_sendmail are Empty If You Use ansi_attachments Option
FIX: Query Method Used to Access Data May Allow Rights that the Login Might Not Normally Have
FIX: Query Analyzer: Empty Row is Returned with COMPUTE on SMALLINT Data
FIX: Processing All Dimensions May Fail From OLAP Manager or DTS Package
FIX: Potential English Query Security Issue
FIX: Posting 4 Digit Dates to SQL Server Errorlog, SQL Executive Log, and Windows NT Application Log
FIX: Point in Time Recovery May Recover Database if the Transaction Log That is Applied Does Not Contain Any Transactions
FIX: Permissions on the Temp Folder Change After You Use the Archive/Restore Add-In
FIX: Passwords May Be Retrieved from Enterprise Manager and from a DTS Package with No Owner Password
FIX: Password Fails to Meet Password Policy Requirements
FIX: OLAP: Cannot Upgrade Client Win98 Computer Containing Office 2000
FIX: OLAP Manager May Return Error After You Install MDAC 2.6
FIX: ODBC Driver for SQL Server 2000 Incorrectly Returns SQL_SUCCESS on SQLDescribeParam()
FIX: Nullability Changes Not Handled by SQL Server with Linked Server Queries to DB2
FIX: Null Parameter for DTS Lookup Causes MMC to Exit
FIX: Non-OCR/Non-Display TIFF Data Indexed by SQL Server Full-Text
FIX: Microsoft Search Service May Cause 100% CPU Usage if BUILTIN\Administrators Login Is Removed
FIX: Microsoft Search Service Cannot be Stopped During Large Population
FIX: Merge Snapshot Does Not Recognize FTP for Jet Subscribers
FIX: Merge Non-Convergence for SQL Server CE Subscriber
FIX: Memory Leak with xp_sendmail Using Attachments
FIX: Long Comment in .SQC File May Cause AV in Nsqlprep.exe
FIX: Log Shipping: Cannot Change Role From Secondary to Primary When Database Names Are Different
FIX: Local Cube Creation Fails If Dimension Member Key and Member Names Are from Different Tables
FIX: Linked Index Server Query Through OLE DB Provider with OR Clause Reports Error 7349
FIX: Invoking SQL-DMO Methods By Using "By Reference" Parameters May Cause a Memory Leak
FIX: Installation Fails When Windows Computer Name Is Mixed or Lowercase
FIX: Insert with OPENXML Statement Generates Duplicate Key Error
FIX: Incorrect Values with Queued Updating Replication When Money Values Are Between 0 and 1
FIX: Incorrect Result Occurs with Unary Operator When You Execute Query on the Server
FIX: Import of Text File Results in Error "Column Delimiter not found"
FIX: If You Use the sp_reinitmergesubscription Stored Procedure with @UPLOAD_FIRST Set to TRUE Data Loss May Occur for SQL Server CE Subscribers
FIX: How to Migrate Repository from Meta Data Format to SQL Server Database Format
FIX: Handled Access Violation on INSERT Through Cursor
FIX: Full-Text Search Population of a Word Document Stored in SQL Server Causes CPU Spin with SQL Server 2000 Service Pack 2
FIX: Full Text RANK Results May Vary After Catalog Repopulation
FIX: Full Text Query May Return 0 Rows When Valid Results are Present
FIX: Full Population May Not Complete if Microsoft Search Service Is Stopped and Restarted
FIX: Errors in Application Center Event Viewer About Analysis Services Performance Counter
FIX: Error Occurs when you Exit Internet Explorer or Excel When You Use a Pivot Table Control with a Visual Basic User Defined Function
FIX: Error Message: "The specified index already exists" May Occur When Re-initializing Subscription with SQL Server CE Edition
FIX: Error "The System Cannot Find the File Specified" When You Open a DTS Package
FIX: DTSTransferObjects with Events Generates an Error Message and an Access Violation in Visual Basic
FIX: DTS Package Created on Uplevel (2.5/2.6) MDAC May Fail on Computer with Downlevel (2.1) MDAC
FIX: DTS Error Message Repeated Multiple Times When You Import from a Text File
FIX: Denial of Service Attack with NULL Bytes in RPC Request
FIX: DBCC CHECKTABLE May Fail if Table has a Text/Image Column and Long Clustering Key
FIX: Data Transfer Using ODBC Driver for SQL Server Fails
FIX: Data Mining Messages Are Displayed in English After You Apply Fix
FIX: Complex Linked Server Query May Cause Handled AV in COleDbParams::ClearParamBuf
FIX: COM May Not Be Uninitialized for Worker Thread When You Use sp_OA
FIX: Cannot Remove Microsoft SQL Server 2000 Desktop Engine After You Upgrade to MSDE 2000 SP2
FIX: Automatic SQL Cluster Failover Does Not Work with Windows NT 4.0 Service Pack 4
FIX: Attempt to Set SQL Server Startup Account to SQL Server Login without Rights Gives the Login Sysadmin Privileges
FIX: ASP Error 0115 Occurs When Connecting Through HTTP to Analysis Server on Windows NT 4.0
FIX: Application Using Microsoft Oracle ODBC Driver Crashes When TNS Does Not Exist
FIX: Analysis Services HTTP Connections Return "Access Denied" Error Messages
FIX: After Upgrade to OLAP SP2 Reconnection to Server May Cause "Cannot save object in DSO" Error Message
FIX: ADO Applications Report a Syntax Error When Column Names Contain Spaces
FIX: Access Violations May Occur with SQL Mail When You Use XP_SENDMAIL
FIX: Access Violation Under High Cursor Stress
FIX: "Incorrect Syntax near the Keyword 'by' " Error Message with Column Names of "C", "CA" or "CAS"
BUG: WMI MSSQL_Table.ExportData Always Uses Standard Security
BUG: Upgrade of an Empty Table Resets Identity Value to Seed
BUG: Sqlmaint Does Not Delete Expired Backup Files on Windows 95, 98 or ME Computers
BUG: SQL Server Query Analyzer Displays Incorrect Error Number When Connected to a Paused SQL Server
BUG: SQL 6.5 Security Manager Incorrectly Maps Users from Non-Default Domain
BUG: sp_getqueuedrows Stored Procedure Does Not Return Any Rows Although Queued Rows Exist
BUG: Service Manager of SQL Server 2000 Does Not Show MSDE 1.0 Services
BUG: SCM.EXE Command Line Arguments Not Documented in SQL 7.0 Books Online
BUG: OLE DB Provider for OLAP Does Not Return Certain Children in PivotTable Service
BUG: Multi-Protocol Connection Fails with SQL 6.5 and Integrated Security Using 7.00.623 Netlib
BUG: MSDE Installation Fails on Systems That Have SQL Server 2000 Service Pack 1 or 2 Installed
BUG: Linked Table Shows Incorrect Field Size
BUG: Inserting/Updating Dates Before "01-01-1900" Into SQL Using JDBC-ODBC Creates Errors
BUG: DTS Designer May Stop Responding When You Use Microsoft Jet 4.0 OLE DB Provider
BUG: Distribution Task Fails to Synchronize Access .MDB with Err
BUG: Desktop Engine and Personal Edition Fails When You Upgrade MSDE 1.0 & Desktop Edition 7.0
BUG: BackOffice Setup Erroneously Reports that Full-Text Search is Installed
"Numeric Value Out Of Range" Error Message When You Execute Batch SQL Statements

[Содержание]

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

Conflicting Instructions
Steve Jones
Have you ever tried to do something and had problems? No big deal, fire up the Books Online and then do a quick search, and then change your solution.
Open Source ASP Enterprise Manager in Design Phase
Andy Warren
A few weeks back Steve Jones sent me over a link about a product called ASP Enterprise Manager. I looked at it briefly but was too busy to really look into it, so tagged for follow up and kept trying to clear my inbox. Then not long after that I got an email from Wes Grant, the guy who is writing it asking a question about how EM gets the security information. Over the course of the email thread I got some information about the project that I wanted to pass on to all of you
Querying XML files using SQL 2000
David Poole
One of the many useful features gained by SQL Server 2000 is the ability to handle XML documents. This means that any computer language capable of opening an XML files and calling SQL Server stored procedures can make use of this new ability.
Using a CSV with an IN sub-select
Bill Graziano
One of the most asked questions involves a bit of code like this: Select * From Products Where ProductID in (@SomeCSVString). I've always said the only way to do this was through dynamic SQL. Actually there's a better way in SQL Server 2000. It doesn't involve dynamic SQL and it's really easy to use
SQL Server 2000 Optimization Tips
Sergey Vartanyan
There are not so many differences in the internal architecture between SQL Server 7.0 and SQL Server 2000, as between SQL Server 6.5 and SQL Server 7.0. SQL Server 2000 has the same features as SQL Server 7.0: autogrow features, new storage engine, complete row level locking and so on. So, you can use all optimization tips from my previous article for SQL Server 7.0
Manage Multiple SQL Server Installations and Databases with OSQL
Randy Dyess
At one point in time I was tasked with running over 70 databases on more than a dozen servers without any of the costly third-party tools that exist to accomplish such tasks and I often get asked how can you handle such large numbers of databases. This is a small article that will show you how to use the handy OSQL command line utility provided with SQL Server to execute repetitive tasks against large numbers of databases or manage large numbers of servers. The OSQL command line utility allows you to execute Transact-SQL statements, system procedures, and script files against multiple servers and databases by using ODBC connections to those servers and databases. The syntax of the OSQL utility allows you to specify which server, database, login, password, input file, output file, as well as formatting functions you want to run with your SQL script. By creating a small bat file containing this information for the servers and database you manage and creating a SQL script file, you can easily perform repetitive SQL tasks with one or two mouse click
Data Import Functionality Using SQL Server
Regular Columnist : Jayram Tallamraju
Applications that provide services like data analysis, projections and any other data services on client specific data are required to support, data import/upload feature. Frequently clients of the application, upload data files to update the application with client specific data. Supporting data import functionality is common requirement for most of the financial applications. This is more the case with web-based applications supporting many clients with ASP architecture. Building robust functionality with maximum re-use of existing infrastructure and investment with little or no development is the goal for many businesses. This article is about using SQL Server DTS packages to achieve this goal. With minimum development, all the functionality required for data imports can be achieved with DTS programming in SQL Server.
SQL Worm Scanner from eEye Digital Security
The Retina SQL Worm Scanner is a tool created by eEye that is able to scan up to 254 IP addresses at once and determine if any are vulnerable to the recent SQL Worm (AKA: Spida, Digispid.B.Worm). If an IP address is found to be vulnerable to the SQL Worm attack, then the SQL Worm Scanner will flag the IP address. Administrators can then double-click on the IP address to be taken to a website with information on how to fix the vulnerability. Reconfiguring your SQL server effectively secures your server against infection from the SQL Worm.

[Содержание]

ФОРУМ SQL.RU

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

А софт для телекомпании никто разработать не хочет?
Новость No.2 - FTP SQL.RU
Пароли по сети чистым текстом
Линк к гадскому ORACLE... Выполнение "его" процедур?!?
Протокол, по которому будет проходить соединение...
Методы анализа
varchar -> binary
Хранение дат за любой период
Новая версия вопроса
Celeron или PIII
Хочется настроить сквозную авторизацию IIS->SQL
Нам нужен программист... очень
Перебор строк курсора - можно... поаккуратнее, посовременнее?
Mozno li derzat MDF/LDF files na drugom servere?
работа с таблицей как с очередью
чудеса архитектуры
Конфигурация сервера для MSSQL 2000
Зачем сканировать таблицу
Помогите с репликациями!!! [new]
Проблема определения следующего ID
Неполадки со входным параметром входной процедуры
DBCC TRACEON
Как статические данные в условии where превратить в динамические [new]
Разобрать строку
Пустышка в поле типа DATETIME
Как бы запуск DTS покрасивше сделать
[Отчёты] поделитесь опытом кто может.
Named Pipe и TCP/IP - вопрос по подключению юзеров. [new]
Пароли из syslogins (sysxlogins)
Облом с настройкой SQLMail
ADO и миллисекунды [new]
ASP+ADO форматы данных.
Работа с MS SQL через Delphi
Что такого хитрого делает INSERT?
Повторяющееся данные?
Как прочитать текстовый файл в @переменную T-SQL ???
Replication - Distributor !!!
Алтернативные среды разработки?
Как сделать процедуру , которая принимает ID и возвращает значение Bit (существу

[Содержание]

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

index servers и запросы SQL ?(+)
Глюк с SQLDMO Import/Export или...?
Прооблема с Import/Export в SQLDMO с charset!!!!
Win 2000 Advanced Server
Percent NULL .....
Кадровый состав типовой фирмы.
Кривая sysdepends
Падает коннект с удаленной базой
Error 0 Severity 19
Перенос объектов DTS

[Содержание]

#115<<  #116

Вопросы, предложения, коментарии, замечания, критику и т.п. присылайте Александру Гладченко на адрес: mssqlhelp@pisem.net

sql.ru Описание рассылки

МИНИФОРМА
ПОДПИСКИ




http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное