|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » MSFT SQL Server - MS SQL 2008 + 1C, переиндексация таблиц |
|
MSFT SQL Server - MS SQL 2008 + 1C, переиндексация таблиц
|
Пользователь Сообщения: 54 |
Профиль | Отправить PM | Цитировать Добрый день!
Ситуация следующая: имеется - windows server 2008 enterprise SP2 32-разрядный. Xeon E5410 2.33GHz (2 процессора), 16 Gb оперативки - MS SQL Server 2008 - 1С 8.2.15.301 - Дисковая полка с 4 HDD 7200 rpm в raid10, где лежат базы 1С Все было прекрасно, но после перехода на 1С 8.2 начались дикие тормоза в 1С. Покопавшись в интернете, наткнулся на массу схожих проблем, но в большинстве случаев совет по решению один: накатываем win serv 2008 x64 и 64-битную версию 1С. В моем случае это неприменимо, т.к. денег на 64-битную 1С-ку не дают. Причем 1С тормозит не только на удаленных машинах, но и на сервере, что вызывает подозрения в том, что дело в MS SQL Server. Стал копать, наткнулся на некий процесс оптимизации таблиц в SQL: - Переиндексация таблиц БД командой DBCC DBREINDEX (table_name) - Дефрагментация индексов БД командой DBCC INDEXDEFRAG (db_name, table_name, index_name) И далее пример: CREATE PROCEDURE DBReindex AS SET NOCOUNT ON DECLARE @TableName char(32) DECLARE SysCur CURSOR FOR SELECT name FROM sysobjects WHERE type='U' OPEN SysCur FETCH NEXT FROM SysCur INTO @TableName WHILE @@FETCH_STATUS=0 BEGIN DBCC DBREINDEX (@TableName) FETCH NEXT FROM SysCur INTO @TableName END CLOSE SysCur DEALLOCATE SysCur |
|
Отправлено: 13:40, 05-10-2012 |
Ветеран Сообщения: 2101
|
Профиль | Отправить PM | Цитировать Цитата art.andr:
Вам нужно в SQL Management Studio раскрыть БД 1С, хранимые процедуры в БД, создать новую, в теле процедуры удалить то что там будет по умолчанию написано, и вставить текст вашей процедуры. Эта процедура делает перестройку индексов для таблиц БД. Затем в SQL Management studio в SQL Server Agent создать задание, которое будет запускать на исполнение созданную процедуру. Так нужно сделать для каждой БД. Под рукой 2008 нет, поэтому пошагово расписать не могу. Но общий смысл такой. Но то что вы прочитали - что нужно ставить 2008 R 2 + 64 bit 1С - это полная фигня. Такая связка, конечно влияет на производительность, но никогда это не было 100%-м решением проблем производительности БД. |
|
------- Отправлено: 07:46, 08-10-2012 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2007 - Сравнение таблиц. | a715 | Microsoft Office (Word, Excel, Outlook и т.д.) | 1 | 16-06-2011 22:52 | |
MySQL - Ломание таблиц в РНР | Andji | Программирование и базы данных | 6 | 30-01-2010 17:06 | |
Расположение таблиц | Qwe1 | Вебмастеру | 4 | 19-06-2005 02:13 | |
Верстка без таблиц | NoOne | Вебмастеру | 12 | 08-06-2005 17:26 | |
Переиндексация информации о сайте. | Domashenko Alexey | Вебмастеру | 1 | 28-08-2003 11:15 |
|