Группа: Основатель
Сообщений: 13983
Из: Киев
Спасибо сказали: 4553 раз
Рейтинг: 3682.7
Исправления платформы, позволяющие запустить 1cv77 в клиент-серверном варианте на СУБД MS SQL 2005/2008 без понижения режима совместимости.
Реализация в виде прокси-dll, в которой исправляются известные проблемы платформы: невозможность работы, при запуске на mssql 2005/2008 (без патчинга bkend.dll); невозможность работы без понижения режима совместимости до mssql 2000, при запуске на mssql 2005/2008; невозможность работы в ОС Win Vista/7/2008 в режиме клиент-сервера (без манипуляций с файлами odbc-драйвера);
Поддерживаемые клиентские ОС: Windows 2000; Windows XP; Windows 2003; Windows Vista; Windows 7; Windows 2008; Windows 2008 R2;
Поддерживаемые SQL-сервера: MS SQL 2000; MS SQL 2005; MS SQL 2008;
Состав поставки: BkEnd.dll - proxy-dll; BkEndUtls.dll - служебная библиотека;
Порядок установки: Установить платформу из оригинального установщика; Установить и настроить HASP-ключ (обязательное условие, а то к вам придут врачи); Переименовать оригинальный файл BkEnd.dll в BkEnd0.dll (0 - это ноль); Скопировать файлы BkEnd.dll и BkEndUtls.dll из поставки в каталог, куда установлена 1с (например, C:\Program Files\1Cv77\BIN);
Для счастливых обладателей dbf-версии ничего не меняется.
Для обладателей sql-версии, у которых база данных размещается на MS SQL 2005/2008, необходимо соблюсти следующие требования для sql-логина (учетка, под которой 1с подключается к sql): обладание, как минимум правами db_owner; права на VIEW SERVER STATE;
С первым требованием все и так ясно, второе - требует пояснений. Для определения количества соединений к текущей базе данных, 1с обращается к системной таблице sysprocesses. Если у логина отсутствуют права на VIEW SERVER STATE, то будут видны только соединения, осуществленные под своей учеткой, что не совсем хорошо - нужно видеть все соединения с текущей базой, чтобы получать адекватые сообщения об ошибках. Большинство "специалистов" запускает 1с под учеткой SA (или другой, но с соответствующими суперправами), следовательно, у них такой проблемы не стоит. Зато имеется другая проблема - так называемый фоновый процесс сброса грязных страниц из кэша буфера данных, при выполнении которого, не удается запустить 1с в монопольном режиме.
В MS SQL 2005/2008 системная таблица (уже представление, оставленное для обратной совместимости) sysprocesses помечена устаревшей и в следующих редакциях MS SQL будет удалена. Компания Microsoft рекомендует использовать текущие аналоги - так и поступаем Для определения соединений к текущей базе данных (в этом исправленном релизе платформы 1с) больше не используется системная таблица sysprocesses (если ms sql 2005/2008, для ms sql 2000 используется).
Для того, чтобы дать права на VIEW SERVER STATE нужно выполнить простой скрипт:
USE master GO
GRANT VIEW SERVER STATE TO <Логин> GO
Все остальные настройки по-умолчанию.
Общие рекомендации не использовать это решение без достаточного тестирования в вашем окружении; не класть OrdNoChk.prm в каталоги Программы и ИБ; вызывать реструктуризацию, если база данных до этого использовалась с родной BkEnd.dll (в хранимых процедурах есть код, который не проходит по ограничениям SQL2005/2008);
Пока честные пользователи пытаются перейти с 1cv77 на 1cv8.x, необходимо иметь крепкий тыл в виде настроенной инфраструктуры, которая развернута на современном оборудовании и современном ПО. Однако, необходимо соблюсти лицензионную чистоту как по отношению к 1с, так и к Microsoft. Данным решением это получается сделать: бинарники 1c остаются нетронутыми, ПО от Microsoft актуально и современно.
У кого нет острой необходимости менять MS SQL 2000 на более свежие версии, тем нет надобности прибегать к этому решению.
Использование Вами данного решения идет по принципу "AS-IS".
Критика и конструктивные предложения принимаются.
History log Реструктуризация теперь завершается инструкцией CHECKPOINT, вместо ALTER DATABASE SET SINGLE_USER; Изменена схема поиска хинтов; Изменены формальные признаки для поиска хинтов; Реструктуризация проекта; Отключена проверка порядка сортировки (если в каталоге программы или ИБ будет лежать OrdNoChk.prm, то используются родные механизмы платформы); Оптимизирована работа с постоянными объектами проекта; Для версии sql2000 и ниже используются родные механизмы, без вмешательств; Внес ошибку, когда устранял проблему SELECT GetDate(); Устранил ошибку (добавил новых );
Взято [необходимо зарегистрироваться для просмотра ссылки].
Группа: Пользователи
Сообщений: 3
Спасибо сказали: 0 раз
Рейтинг: 0
Цитата(Kutuzov @ 18.02.13, 11:04)
ГЫГЫ, если Я не ошибаюсь то 7.7 закончила свое развитие в 2003 году
То, что 7.7 закончила своё развитие не означает, что закончила существование. Все, кто её приобрел, имеют возможность обновлять релизы по договорам. Так, например, зарплата и кадры имеют релиз: 7.70.331 от 29.12.2012г.
Группа: Ахтунги
Сообщений: 1
Спасибо сказали: 0 раз
Рейтинг: 0
От души спасибо! Помогло на серверной базе MSQL Была проблема, не мог загрузить базу из-за ошибки - порядок сортировки отличается от системного. А вот парольчик поставили на архив... А я то дурачок по жизни, прочитать сообщение выше не смог. Сидел подбирал пароль, переустановил даже Winwods на сервере 1С и на рабочем компьютере, но не помогло. Потом решил проверенным способом его узнать: начал клянчить у всех подряд и добрые люди подсказали, что пароль можно посмотреть в правилах. Но не обижайтесь на меня, дурачок я.
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!