Медленный доступ к базе данных Access после миграции сервера

Я поставлю этот вопрос перед фактом, который я знаю об этом вопросе, но, к сожалению, он мне не помог, так как "не запускать базу данных по сети" просто не вариант.

На прошлой неделе мы перенесли наш файловый сервер с Server 2000 на виртуальную машину x64 Server 2008 R2 Standard. У нас есть база данных, которая предоставляет контактную информацию для заинтересованных сторон и деловых партнеров. Это собственная база данных, написанная нашим аналитиком. Поскольку мы перенесли сервер, эта база данных работала намного медленнее, чем обычно.

Тем не менее, я искал причину на прошлой неделе, поскольку это важная база данных для нас. Мы движемся к использованию другой системы, но я бы хотел, чтобы этот вопрос решался с этим раньше, чем позже.

Релевантная информация

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

  • В данный момент на сервере не работает антивирус

  • Все клиентские антивирусы настроены не проверять сетевые диски

  • Мы сделали исключение антивируса для msaccess.exe для тестирования, но не повезло

  • Я попытался сбросить брандмауэр на файловом сервере без удачи

  • Я не заметил никаких проблем с доступом к файлам (на самом деле, большинство моих сотрудников сказали, что они заметили увеличение)

Я хотел бы услышать любые предложения относительно того, почему люди думают, что Server 2008 R2 замедляет работу базы данных.

2 ответа

Решение

Рискуя быть табу и ответить на мой собственный вопрос (и получить выговор за продолжение использования MS Access по сети), мы добились успеха в устранении проблемы.

Проблема была решена путем выполнения следующих действий:

1) Все таблицы были повторно связаны, чтобы быть UNC-путем, а НЕ путем относительно сопоставленного диска (т.е. \\server\share\database.mdb и NOT T: \ database.mdb)

2) Код базы данных был перекомпилирован

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

Простой и понятный MS Access - ужасный продукт, который MS никогда не должен был разрабатывать или продавать. Тем не менее, по какой-то причине, вы застряли, используя его (на данный момент). Вы не хотите это слышать, но настоящий ответ таков:

  1. Прекратите использование базы данных по сети.
  2. Прекратите использовать MS Access и используйте реальный сервер базы данных.

Доступны пути миграции между Access и MSSQL, и они не так сложны, если ваш dba знает, что он делает. Вы даже можете использовать MS Access в качестве внешнего интерфейса для подключения к источникам ODBC на сервере SQL.

Другие вопросы по тегам