Медленный запрос с MS Sql serve | |
---|---|
Vova_ukr_lg Автор Сообщений: 43 Дата регистрации: 10.10.2007 |
Здравствуйте. После замены основного сервера на нем медленно выполняются запросы VFP к MS sql.
Возможно что с драйверами или настройками MS sql server. На компьютере установлен Windows server 2012 r2 standart. на него сначала установили SQL server 2017 developer и запросы выполнялись нормально( возможно ошибаюсь), но т.к. не рботали корректно внешние объекты через advantage, sql server переустановили на ms sql 2012(11.0.2100). Запускаю на этом сервере следующие команды
Происходит подключение и выполняется выборка данных, но очень медленно, в таблице около 15к записей. меняю адрес сервера на тестовый и запускаю - ситуация аналогичная. Если этот же скрипт запустить на тестовом компьютере и подключатся к тестовой базе и к базе на новом сервере - выполняется с нормальной скоростью. Проверял с драйверами "Sql server" и "Sql server native client 11.0", но результат одинаковый. в чем может быть причина? |
Re: Медленный запрос с MS Sql serve | |
---|---|
PaulWist Сообщений: 14618 Дата регистрации: 01.04.2004 |
1. Какие протоколы доступны на сервере и клиенте?
2. Что видно в профайлере, на какой стадии происходят тормоза. ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Медленный запрос с MS Sql serve | |
---|---|
Vova_ukr_lg Автор Сообщений: 43 Дата регистрации: 10.10.2007 |
возможно не понял по протоколами
протоколы для MSSQLSERVER: общая память - включено именованны каналы - включено TCP/IP - включено в native client также включены перечисленные выше. в профайлере выполняется exec [sys].sp_datatype_info_100 1 exec [sys].sp_datatype_info_100 12 exec [sys].sp_datatype_info_100 -2 exec [sys].sp_datatype_info_100 -3 а после этого мой запрос выполняется и на нем висит, но и само подключение к SQL необычно долго 2-3 секунды. выполнение делалось на компьютере на котором установлен ms sql server |
Re: Медленный запрос с MS Sql serve | |
---|---|
PaulWist Сообщений: 14618 Дата регистрации: 01.04.2004 |
1. Сервак виртуальный или железный? DNS настроен?
2. Определение таблицы приведите. 3. Duration запроса какой? ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Медленный запрос с MS Sql serve | |
---|---|
Vova_ukr_lg Автор Сообщений: 43 Дата регистрации: 10.10.2007 |
1. Железный, dns - не прописывался.
2. Таблица
Прикрепил скриншоты профилировщика. |
Re: Медленный запрос с MS Sql serve | |
---|---|
PaulWist Сообщений: 14618 Дата регистрации: 01.04.2004 |
1. БД поднималась их BackUp-a или БД и табличка создавалась с "нуля" на MSSQL 2012?
2. Какой уровень совместимости БД 80,90,100,... 3. Время тратится на выполнение sp_datatype_info_100 ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) Исправлено 1 раз(а). Последнее : PaulWist, 14.04.20 08:39 |
Re: Медленный запрос с MS Sql serve | |
---|---|
Vova_ukr_lg Автор Сообщений: 43 Дата регистрации: 10.10.2007 |
1. Из BackUp
2. Совместимость SQL Server 2012(110) Но проблема скорее всего не в MS SQL на основном сервере, а что-то с драйверами или чем-то другим блокирующем запрос из Visual FoxPro. При запуске этого запроса на основном сервере(на котором проблема), но с адресом sql server на тестовый - проблема остается. Если же скрипт запустить на тестовом сервере, но с подключением к базе на основном(на котором проблема), то запрос выполняется нормально. |
Re: Медленный запрос с MS Sql serve | |
---|---|
PaulWist Сообщений: 14618 Дата регистрации: 01.04.2004 |
Ну создай табличку руками перелей туда данные и сделай выборку, будет разница или нет.
------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Медленный запрос с MS Sql serve | |
---|---|
Vova_ukr_lg Автор Сообщений: 43 Дата регистрации: 10.10.2007 |
создал отдельную базу, в ней создал таблицу и залил записи.
запускаю скрипт, с момента запуска и до установления подключения - 3 сек, после на выборку 10 записей уходит около 12сек. |
Re: Медленный запрос с MS Sql serve | |
---|---|
PaulWist Сообщений: 14618 Дата регистрации: 01.04.2004 |
В строке подключения вместо DNS имени поставить IP-адрес. Оставить протоколы на сервере и клиенте TCP/IP - включено остальные выключить общая память именованны каналы ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) Исправлено 1 раз(а). Последнее : PaulWist, 15.04.20 09:21 |
Re: Медленный запрос с MS Sql serve | |
---|---|
alextash Сообщений: 2281 Откуда: НСК Дата регистрации: 03.05.2006 |
А если запрос выполнить на самом сервере?
|
Re: Медленный запрос с MS Sql serve | |
---|---|
Vova_ukr_lg Автор Сообщений: 43 Дата регистрации: 10.10.2007 |
запрос на сервере как раз и не работает, т.е. запускается из foxpro, но на машине сервере. в sql management studio - работает |
Re: Медленный запрос с MS Sql serve | |
---|---|
pap Сообщений: 69 Откуда: Уральск Дата регистрации: 14.01.2006 |
Похожая проблема.
Первый запрос к SQL после Загрузки VFP выполняется очень долго. Потом этот же запрос выполняется нормально. |
Re: Медленный запрос с MS Sql serve | |
---|---|
PaulWist Сообщений: 14618 Дата регистрации: 01.04.2004 |
1. select @@version
2. Обновить статистику по таблицам 3. План запроса "Первый запрос к SQL после Загрузки VFP" в xml-формате "в студию". 4. Сервер при первом запуске компилирует и строит план запроса, на это уходит время. При последующих запросах используется уже готовый план/планы. ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Медленный запрос с MS Sql serve | |
---|---|
pap Сообщений: 69 Откуда: Уральск Дата регистрации: 14.01.2006 |
версия Microsoft SQL Server 2014 - 12.0.2000.8 (Intel X86) Feb 20 2014 19:20:46 Copyright (c) Microsoft Corporation Express Edition on Windows NT 6.1 <X64> (Build 7601: ) (WOW64)
Прикрепил надеюсь это то о чём вы говорили. |
Re: Медленный запрос с MS Sql serve | |
---|---|
pap Сообщений: 69 Откуда: Уральск Дата регистрации: 14.01.2006 |
При Сохранение плана запроса вышло сообщение - нет индекса по полю в данном случае "DATAR"
Создал индекс по полю В VFP стало работать нормально. Попробовал несколько раз. Выход из VFP,Вход в VFP, подключение, выполнить программу. Может в отсутствие индекса была проблема. |
Re: Медленный запрос с MS Sql serve | |
---|---|
PaulWist Сообщений: 14618 Дата регистрации: 01.04.2004 |
Да, у тебя запрос вида
1. серверу не хватает индекса по datar, поэтому он был вынужден сканировать всю таблицу (кластерный индекс). 2. Теперь, что бы избежать Nested Loop, необходимо создать индекс вида
3. Ну и дату лучше передавать в универсальном виде yyyymmdd (сегодняшняя выглядит так '20200422') ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) Исправлено 1 раз(а). Последнее : PaulWist, 22.04.20 09:38 |
Re: Медленный запрос с MS Sql serve | |
---|---|
pap Сообщений: 69 Откуда: Уральск Дата регистрации: 14.01.2006 |
Спасибо!
|
Re: Медленный запрос с MS Sql serve | |
---|---|
Vova_ukr_lg Автор Сообщений: 43 Дата регистрации: 10.10.2007 |
Всем спасибо за помощь, сегодня по ряду других причин пришлось переустановить систему. Данный вопрос закрылся после переустановки, остались вопросы другого плана, но это уже по настройке Windows.
|
© 2000-2024 Fox Club  |