Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];

Вниз

Тормоза MS SQL Server-a   Найти похожие ветки 

 
ААР   (2005-07-11 11:38) [0]

Добрый день!

У меня вопрос не по Дельфи, а скорее по конфигурированию MS SQL.
Проблема состоит в очень медленном выполнении запросов по сети (на самом сервере все "летает"). Причем с быстродействием сети это вряд ли связано: в ней присутствует, например, еще MySQL, который работает нормально, да и сеть 100-Mbit... Возможно, кто-нибудь знает какие-нибудь настройки MS SQL, которые можно "покрутить"?

Заранее спасибо.


 
evvcom ©   (2005-07-11 11:48) [1]

Источники данных ODBC - Tracing. Трассировка отключена?


 
ААР   (2005-07-11 11:52) [2]

Трассировка отключена


 
evvcom ©   (2005-07-11 12:01) [3]


> настройки MS SQL, которые можно "покрутить"?

А чего там крутить? Если на сервере запрос выполняется быстро, то проблемы либо в сети, либо в клиенте. Если аналогичные по объему данные на клиент доставляются из MySQL гораздо быстрее, то с сетью вроде как тоже порядок. Остается MS SQL клиент. На всех клиентах запросы из MS SQL тормозят?


 
ААР   (2005-07-11 12:30) [4]

Клиентом как раз выступает дельфийская программа. На компьютере с сервером она работает быстро. А на моем, например, на открытие 5 записей уходит примерно полсекунды, в общем долго. Но такое же примерно время уходит на 500 записей. У меня подозрение, что это каким-то образом связано с приемом/обработкой запроса от удаленной машины, а не с объемом выборки...


 
Fay ©   (2005-07-11 12:32) [5]

MDAC какой?


 
ААР   (2005-07-11 12:43) [6]

Честно говоря, не знаю, что такое MDAC :) Подскажите, где его искать, посмотрю... А какой должен быть?


 
Fay ©   (2005-07-11 12:58) [7]

2 ААР   (11.07.05 12:43) [6]
http://www.microsoft.com/downloads/details.aspx?FamilyID=6c050fe3-c795-4b7d-b037-185d0506396c&DisplayLang=en


 
ААР   (2005-07-11 13:03) [8]

Скачал MDAC 2.8, установил. Ситуация не изменилась.


 
Fay ©   (2005-07-11 13:04) [9]

2 ААР   (11.07.05 13:03) [8]
Версия cервера?
QA на клиенте нормально отрабатывает?


 
sniknik ©   (2005-07-11 13:11) [10]

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

"покрутить" надо в твоей программе, а не в MSSQL.


 
ААР   (2005-07-11 13:12) [11]

Ну MDAC, насколько я понял, ставится вместе с Windows (у меня XP). На сервере, кстати, Win2000 Advanced Server.


 
ААР   (2005-07-11 13:21) [12]


> Версия cервера?
> QA на клиенте нормально отрабатывает?


MS SQL 2000.
Analyzer на клиенте не пробовал, сейчас посмотрю... Может, действительно проблема в программе/используемых компонентах. Хотя вряд ли: на самом серваке та же самая программа не тормозит.


 
ААР   (2005-07-11 13:28) [13]

Хех, странно.

Я использовал Zeos Library (были тормоза), попробовал теперь через ADO - все зашибись. Это конечно хорошо, но непонятно, почему тогда "через Zeos" не тормозит на машине с сервером БД.

Спасибо за помощь.


 
sniknik ©   (2005-07-11 13:44) [14]

Zeos насколько помню реализует один из вариантов конекта возможного через адо, и по умолчанию эти варианты в них различатся. в Zeos по умолчанию серверный курсор в ADO локальный. в Zeos подобие связки с клиентрекордсетом для докачки в ADO нет... и т.д. (если я конечно правильно помню, тестил Zeos с год назад)
но, проверь, открой Zeos-ом немерянную таблицу (с милионом и больше записей примерно) откроется (должна) с тойже задержкой что на 5ти, с адо(с настройками по умолчанию) будеш ждать дольше, намного долше, прежде чем чтонибудь увидиш.


 
sniknik ©   (2005-07-11 13:52) [15]

и кстати Zeos в итоге использует тот же ADO (OLE DB) для конекта с MSSQL, просто настройки делает свои. (опять же если то что я помню было о Zeos ;о)))


 
Fay ©   (2005-07-11 14:00) [16]

2 sniknik ©   (11.07.05 13:52) [15]
Этого эффекта можно достичь и в dbGO. Нужно просто поставить клиентский курсор и получишь полный фетч(здец) 8)


 
ААР   (2005-07-11 14:16) [17]

Ну понятно. Похоже что так оно и есть: при установке в AdoQuery
CursorLocation=clUseServer такие же тормоза.

С уважением.


 
ААР   (2005-07-11 14:27) [18]

Пардон, осталась еще проблема. Точнее, появилась новая. При запросе через TADOQuery русский текст отображается кракозябрами. Как это можно поменять?


 
Fay ©   (2005-07-11 14:37) [19]

2 ААР   (11.07.05 14:27) [18]
1) скрипт таблицы с студию
2) таблицы всегда жили в этой базе, или были импортированы?


 
ААР   (2005-07-11 14:55) [20]

2) Таблицы были импортированы из MySQL 3.23
1) Скрипт:

 /****** Object:  Table [dbo].[letters]    Script Date: 11.07.2005 14:54:22 ******/
CREATE TABLE [dbo].[letters] (
[IdLetter] [numeric](6, 0) IDENTITY (1, 1) NOT NULL ,
[strFam] [varchar] (40) NULL ,
[strIm] [varchar] (40) NULL ,
[strOt] [varchar] (40) NULL ,
[strSerialDoc] [varchar] (10) NULL ,
[strNumberDoc] [varchar] (10) NULL ,
[dBirthDate] [smalldatetime] NULL ,
[strDocOrgan] [varchar] (72) NULL ,
[AccountId] [varchar] (25) NULL ,
[IdSystem] [numeric](6, 0) NULL ,
[Data] [smalldatetime] NULL
) ON [PRIMARY]
GO

(При работе через Zeos русские буквы отображались нормально)


 
Polevi ©   (2005-07-11 15:17) [21]

проверь, не работает ли на компьютере с SQL Server DNS сервер


 
ААР   (2005-07-11 17:28) [22]


> проверь, не работает ли на компьютере с SQL Server DNS сервер


Собственно, как проверить это, я не знаю, но в Control Panel
->Administrative Tools есть пунктик DNS. Это "оно"? А при чем тут DNS?


 
ААР   (2005-07-11 18:02) [23]

Проверил. DNS действительно работал, я его вырубил в службах. Но проблема осталась той же


 
Polevi ©   (2005-07-12 08:45) [24]

>ААР   (11.07.05 18:02) [23]
создай пустой проект с ADOConnection - попробуй подключиться к серверу - будет пауза ?


 
ААР   (2005-07-12 10:18) [25]


> создай пустой проект с ADOConnection - попробуй подключиться
> к серверу - будет пауза ?


Нет, эту проблему решили еще вчера. Теперь появилась проблема с кодировкой: видимо, при импорт из MySQL таблицы сохраняются в линуксовой кодировке, а в ADO по умолчанию cp1251, как я полагаю.

Импорт из MySQL в принципе не нужен, там 16 записей, можно вручную заколотить. Но теперь, когда я на MS SQL вручную создал новую таблицу, добавил в нее несколько строчек, русские буквы отображаются знаками "?". Операционка стоит Win2000 Adv Server, все кодовые страницы установлены, по умолчанию везде русский; в MS SQL все настройки вроде уже перебрал. Может быть, кто-то знает, что делать?

С уважением.


 
sniknik ©   (2005-07-12 11:17) [26]

> Может быть, кто-то знает, что делать?
кто-то наверняка знает, интернет большой... глупый вопрос. не по делу.

а по делу - как создается? и где отображаются вопросы? 100% вопросы это на преобразовании юникода.


 
Anatoly Podgoretsky ©   (2005-07-12 11:23) [27]

ААР   (12.07.05 10:18) [25]
Что то неправильно, у MS SQL все нормально не только с русским, но и с Юникод.


 
ААР   (2005-07-12 11:30) [28]


> кто-то наверняка знает, интернет большой... глупый вопрос.
> не по делу.
>
> а по делу - как создается? и где отображаются вопросы? 100%
> вопросы это на преобразовании юникода.


Хм, ну как. Захожу в Ентерпрайз, открываю базу, создаю таблицу, добавляю поля... Потом забиваю строку русскими символами (нормально отображается). Закрываю, открываю снова (через ентерпрайз опять же) - а там знаки вопроса...

Может, Винда?


 
sniknik ©   (2005-07-12 11:50) [29]

> Хм, ну как. Захожу в Ентерпрайз, открываю базу, создаю таблицу, добавляю поля... Потом забиваю строку русскими
> символами (нормально отображается). Закрываю, открываю снова (через ентерпрайз опять же) - а там знаки вопроса...

> Может, Винда?
ага, Бил Гейтс - собака, как же без него. ;о))

база должна быть создана с тем же коллатионом что и язык у юзера которым подключаешся. возможно они у тебя разные.

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


 
ААР   (2005-07-12 12:24) [30]

Все понятно, спасибо за участие :) Создаю базу с коллатион=Cyrillic_General_blabla, все Ок.

Я только не понял, как коллатион "по умолчанию" изменить.
Зашел в свойства сервера, на закладке Server Settings выставил Default language for user = Russian, потом зашел в Security->Logins, поменял язык у всех юзеров (а он один - sa, и еще builtin\administrators). Перестартовал все, включая SQL Server. Запустил ентерпрайз, создал базу, а она по умолчанию с коллатион=SQL_Latin1_General...


 
sniknik ©   (2005-07-12 13:16) [31]

сам дефаултный вообщето при установке сервера задается, по другому не менял, не было нужды, правда видел на http://sql.ru/ обсуждение на эту тему. поиши может найдеш.


 
sniknik ©   (2005-07-12 13:27) [32]

вот описание, пересозданием мастера

To rebuild the master database

Shutdown Microsoft® SQL Server™ 2000, and then run Rebuildm.exe. This is located in the Program Files\Microsoft SQL Server\80\Tools\Binn directory.

In the Rebuild Master dialog box, click Browse.

In the Browse for Folder dialog box, select the \Data folder on the SQL Server 2000 compact disc or in the shared network directory from which SQL Server 2000 was installed, and then click OK.

Click Settings. In the Collation Settings dialog box, verify or change settings used for the master database and all other databases.
Initially, the default collation settings are shown, but these may not match the collation selected during setup. You can select the same settings used during setup or select new collation settings. When done, click OK.

In the Rebuild Master dialog box, click Rebuild to start the process.
The Rebuild Master utility reinstalls the master database.

Note To continue, you may need to stop a server that is running.

проверяй сам. у меня даже утилиты такой нету ... (на данный момент 2005-й MSSQL стоит)



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.52 MB
Время: 0.05 c
14-1122941411
k2
2005-08-02 04:10
2005.08.21
Imagine Cup 2005


14-1122541307
Gydvin
2005-07-28 13:01
2005.08.21
Forex


14-1122653780
Alexander Panov
2005-07-29 20:16
2005.08.21
Фото от 24.06.2005г.


6-1115562063
Isaev
2005-05-08 18:21
2005.08.21
Dual-up


6-1115968072
Valera
2005-05-13 11:07
2005.08.21
ICMP CLIENT





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский