Материал просмотрен 564 раз(а)

Столкнулся с проблемкой. Напишу себе небольшой манчик, как я поборол эту тему, чтобы не забыть. А если кому-то поможет – то вдвойне рад буду. В общем ситуация такая:  перестал работать программный продукт “Е-Фарма” для аптечного пункта. Выдает ошибку, мол, не может присоединиться к SQL-серверу.

Мануальный старт сервера не дал ничего. Весьма непросто, кстати, найти нужный сервак в каталогах, когда есть папка в Program Files\Microsoft SQL Server 2005\MSSQL, ..\MSSQL.1 и ..\MSSQL.2, причем свежесть файлов сегодняшним числом в каждой папке.

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

Сообщения об ошибке

Сообщения об ошибке

Кроме этой ошибки вылазили ещё 3417. Гугление показало, что проблема с master base. Восстановить её вроде как можно repair-ом из установленного SQL SMS. Но я подумал, что можно просто переустановить сервер, тогда воссоздаётся новый master. А затем уже в SMS (Server Management Studio) приаттачиваем все старые базы (Е-фармовские) к серверу и довольствуемся этим!

Наигравшись с Е-фармой можно потратить часик на  торрент-треккер Zona 2014 – для просмотра фильмов. Чтож, вернёмся к нашим баранам. Качаем MS SQL Server 2005 Express (http://download.microsoft.com/download/1/2/0/1209df9b-d603-410b-99ae-bba9ea98aa9a/SQLEXPR_RUS.EXE) и SMS (http://download.microsoft.com/download/a/6/c/a6c820bb-9043-4ef6-8a7b-a0cd327cf8c5/SQLServer2005_SSMSEE.msi), ставим их штатным образом.

Затем открываем Management Studio и коннектимся к локальному серверу баз данных

mssqlsms

mssqlsms

Теперь подключаем базу данных Е-Фармы из каталога C:\EFarma\Database, пути могут различаться, смотрим по ярлыку на рабочем столе. В частности у меня оказалось несколько каталогов с копиями и бэкапами ЕФармы.

Приаттачиваем

Приаттачиваем

Запускаем Е-Фарму. Пароль тривиальный 1:1

Выбираем наш сервер

Выбираем наш сервер

Выбираем наш сервер (имя хоста\SQLEXPRESS\имя базы).

Подправляем авторизацию

Подправляем авторизацию

Выставляем на Windows авторизацию. Всё начало работать! Дольше времени пытался разрулить ошибки SQL-сервера.

Общая картина такова, что проблема возникла не с продуктом, а с сервером базы данных, где он хранил информацию. Поэтому приоритетная задача – вытащить базу данных программы (лежит в произвольном месте, но как правило в каталоге программы в папке Database), переустановить сервер и подключить к нему эту базу обратно используя SMS.