Столкнулся с проблемами запуска 7ми серверов на виртуальной машине win2003 r2, а также опыт работы BDE на win2008 r2 64bit
После долгого блуждания по гуглу и экспериментов на паре рабочих объектов родилась маленькая статейка - аля вырезки из статей с редактированием под условия работы с RKEEPER


BDE по-умолчанию нам предлагаются настройки, которые были актуальны в прошлом веке, но на сегодняшний день их явно недостаточно. Необходимо сразу увеличить численное значение ряда параметров настройки. Эти параметры можно менять как в реестре (они расположены в "HKEY_LOCAL_MACHINE\SOFTWARE\Borland\ Database Engine\Settings\SYSTEM\INIT"), так и с помощью программы BDEAdmin, которая инсталлируется вместе в BDE и чаще всего ее можно найти в каталоге "C:\Program Files\Common Files\Borland Shared\BDE\". После запуска BDEAdmin зайдите на вкладку Configuration и выберите "System\INIT". Для запуска от одного до трех RKESERVER на одном компе, оставить настройки BDE по-умолчанию, если более серверов то изменяем согласно следующему описанию (ни кто не запрещает экспериментировать):

AUTO ODBC - В значении True при каждой инициализации в BDE автоматически импортируются все установленные в системе драйверы ODBC. Оставляем по-умолчанию.

DATA REPOSITORY - Имя текущего словаря данных. Не трогаем.

DEFAULT DRIVER - Локальный драйвер, используемый по умолчанию в драйвере STANDARD. По-умолчанию PARADOX, оставляем как есть.

LANGDRIVER - Драйвер языковой поддержки. При использовании стандартных локальных драйверов это значение перекрывают те, которые определены непосредственно в конфигурациях драйверов Paradox, dBASE, FoxPro, ASCII. Оставляем как есть.

LOCAL SHARE- Устанавливает режим совместного использования файлов приложениями, работающих через BDE и другие программы. В значении True совместное использование разрешено. Рекомендуется установить в True. Из справки назначение данного параметра можно понять следующим образом: LOCAL SHARE следует устанавливать в True, если с базой будет работать не только BDE, но еще и сторонние приложения. Однако это утверждение скрывает реальный механизм действия данной настройки, и чаще всего пользователи просто игнорируют данный параметр. А зря. Фактически данный параметр, установленный в True, отключает кэширование данных, выполняемое BDE, благодаря чему данные записываются в базу немедленно, после каждого вызова Post, что значительно уменьшает риск повреждения данных, и позволяет организовать более надежную многопользовательскую работу с базой в локальной сети. Естественно, модификация данных будет выполняться медленнее, однако и повреждения базы будут происходить гораздо реже. Кстати, не представляю, как вообще BDE может нормально работать в локальной сети с LOCAL SHARE=FALSE. Для корректной работы как минимум нужно, чтобы кэширование данных выполнялось на том же компьютере, где лежит база. Т.к. RKSERVER монопольно работает с базой, оставляем LOCAL SHARE=FALSE

LOW MEMORY USAGE LIMIT - Максимальный объем памяти (в Кбайтах), который BDE пытается использовать в первом Мбайте оперативной памяти. По-умолчанию 32, оставляем как есть.

MAXBUFSIZE - Максимальный размер кэша данных в кб. Он должен быть не меньше значения параметра MINBUFSIZE, не более физической памяти компа и кратен 128. Рекомендую поставить не менее 4096 кб (не забываем, должно быть кратно 128), максимум 32768

MAXFILEHANDLES - Максимальное число используемых файлов. максимальное количество файлов, которые могут быть открыты BDE одновременно (в их число входят *.db, *.px, *.val и др.). По умолчанию MAXFILEHANDLES=48. Ставим значение для данного параметра не менее 96 (максимум 256)

MEMSIZE - Максимальный объем используемой BDE памяти в Мбайтах. Размер оперативной памяти (в мегабайтах), который разрешено использовать BDE. По умолчанию MEMSIZE=16. Этого обычно хватает, но увеличение данного параметра должно привести к ускорению SELECT-запросов с большим объемом выборки. Рекомендуемое значение для данного параметра - 30% от объема ОЗУ, но не более 205. Ставим значение - 128 Мб

MINBUFSIZE - Минимальный размер кэша данных в кб. Он должен быть не больше значения параметра MAXBUFSIZE и кратен 128. Оставляем значение - 128 кб, можно и 1024 не критично.

MTS POOLING - Управляет режимом объединения ресурсов MTS (Microsoft Transaction Server). Обеспечивает лучшую производительность, но не для нас. Оставляем FALSE

SHAREDMEMLOCATION - Содержит адрес памяти, который пытаются использовать Менеджер памяти и Менеджер буфера. При возникновении конфликтов (замечены конфликты со звуковой картой) адрес необходимо поменять вручную (1000,2000 ... 7000; есть еще значения 5BDE, 6BDE). Задается только второе слово адреса. Оставляем по-умолчанию если нет конфликтов (актуально при ошибках запуска Менеджера ресторана RKEEPER)

SHAREDMEMSIZE - Максимальный объем памяти, используемый Менеджером памяти и Менеджером буфера. Размер совместно используемой области памяти. По умолчанию SHAREDMEMSIZE=2048, однако для нормальной работы требуется большее значение. Увеличение в редких случаях может привести к конфликтам, тогда при этом может потребоваться изменение параметра SHAREDMEMLOCATION. Ставим значение - 16384 Мб, но можно и больше, например 32768 Mb

SYSFLAGS - Не используется

VERSION - Номер внутренней версии BDE. Только для чтения

------------------------------------------------------------------------------
Ниже перечислены проблемы, которые возникают в процессе работы с BDE и приведены способы их устранения:

* Для корректной работы BDE требуется правильная установка. Для установки BDE (без SQL Links) можно воспользоваться архивом "C:\Program Files\Common Files\Borland Shared\BDE\bdeinst.cab". В нем лежит файл BdeInst.dll, который является инсталлятором BDE. Перед началом установки следует удалить предыдущую версию BDE (переименовать ветку реестра "HKEY_LOCAL_MACHINE\SOFTWARE\Borland\Database Engine" и каталог, в которой BDE был ранее установлен). Начать процесс инсталляции можно с помощью команды "regsvr32.exe BdeInst.dll". При этом, возможно, BDE ругнется на отсутствие места на жестком диске и предложит выбрать каталог установки. В результате установки в указанном каталоге появятся все необходимые для работы BDE файлы, включая BDEAdmin.exe и BDEADMIN.HLP. Сугубо "программерские" файлы (BDE32.HLP, LOCALSQL.HLP, *.txt) установлены не будут! Описанный способ установки BDE хоть и является рабочим, но он не разрешен компанией Borland, поэтому является нелегальным! Легальная установка возможна только с помощью инсталляторов, имеющих разрешение (сертификат) от Borland на установку BDE (например, InstallShield Express). Эти инсталляторы корректно устанавливают BDE, настраивают алиасы и вносят необходимую информацию в реестр Windows.

* Эпизодически появляется ошибка "Insufficient memory for this operation". Она появляется при слишком большом числе подключений. Например, при стандартной конфигурации BDE данная ошибка появится, если установить более 10 подключений к базам данных и для каждого подключения открыть хотя бы одну таблицу (для того, чтобы убедиться в этом, запустите 11 экземпляров программы SQL Explorer (она лежит в каталоге "$(DELPHI)\dbexplor.exe") и попробуйте в каждом из них открыть какую-либо табличку Paradox - должна произойти указанная ошибка). Для исправления данного ограничения необходимо увеличить параметр SHAREDMEMSIZE. По умолчанию это значение равно 2048 (ограничение на 10 подключений). Если изменить данную переменную на 4096, то BDE станет поддерживать одновременно 21 подключение. Рекомендуется изменить данный параметр на следующие значения 8192, 16384, 32768.

* Каталог, указанный в настройках BDE как значение параметра NET DIR (BDE Administrator | вкладка Configuration | в дереве Drivers -> Native -> PARADOX, первый параметр в правой части окна), должен быть доступен на чтение и запись текущему пользователю Windows. В Windows 7, например, корневой каталог диска C: защищен от записи для пользователя, не являющегося локальным администратором. Указываем любую другую папку с доступом на чтение/запись.

---------- Добавлено в 00:49 ---------- Предыдущее сообщение было размещено в 00:44 ----------

Помидоры не кидать, благодарность тоже пью