1С строка подключения к SQL

Проверялось на: Win 2000 Server, SQL Server 2000, 1C 18 релиз

Данная статья является дополнением к статье «Первые шаги», в которой было рассказано как по шагам произвести установку 1С, SQL Server, а также как произвести конвертацию вашей DBF базы. В этой статье будут подробно рассмотрены варианты подключения к SQL Server, вопросы безопасности, а также способ, позволяющий подключаться 1С в режиме авторизации Windows.

При установке SQL Server (либо после его установке) необходимо выбрать режим подключения (аутентификации, авторизация) пользователей к SQL Server. Для этого как в SQL Server 7.0 так и SQL Server 2000 существует два режима: смешанный и авторизация Windows. Вообще-то 1С поддерживает только смешанный способ подключения*. Причиной этого является довольно частое появление следующей ошибки: Login failed for user ‘%ls’. Reason: Not associated with a trusted SQL Server connection. Для 1С это сообщение означает, что вы выбрали способ авторизации Windows — в своих методических материалах в этом случае 1С рекомендует указывать смешанный режим подключения. Рассмотрим подробно оба режима. Данная информация взята мной из книги издательства «БХВ-Петербург» ‘MS SQL Server 2000. Наиболее полное руководство» автор Е. Мамаев, которую я вам рекомендую в качестве настольной по SQL Server 2000.

* — на самом деле режим авторизации «Windows only» также возможен (см. ниже по тексту раздел «1С и режимы авторизации»)

Смешанный режим подключения (Mixed Mode, SQL Server and Windows NT / 2000).

В этом режиме возможна авторизация как средствами SQL Server, так и средствами Windows NT / 2000. Рассмотрим вариант авторизации SQL Server (режим авторизации Windows будет рассмотрен далее).

В этом режиме авторизация пользователей производится самим SQL Server. Вся информация о пользователях хранится в системной базе Master. Для каждого пользователя указывается имя учетной записи, уникальный идентификатор SQL Server, пароль и другая информация.

Авторизация SQL Server применяется в основном клиентами, для которых недоступна регистрация в домене Windows NT. Например, пользователям Novell NetWare, Unix и т.д. При подключении к SQL Server через Internet регистрация в домене не выполняется, поэтому в данном случае также необходимо использовать авторизацию SQL Server.

Дополнительно к материалу книги хотел бы отметить еще один важный момент. 1С при подключении к SQL Server может использовать только один логин. Права данного логина (или пользователя) должны позволять 1С производить любые действия с базой данной. Такими правами по умолчанию владеют системные администраторы, а также владельцы базы данных. Чтобы уменьшить риск разрушения данных в других базах, стоит выбирать в качестве такого логина именно владельца базы данных. Если, по причине нарушения безопасности, с базой данных 1С что-то и случится, то это не коснется остальных баз данных, которые управляются данным сервером. Как назначить базе владельца базе данных рассказано в этой статье.

Режим подключения Windows (Windows Authentication Mode, Windows NT / 2000 only)

При авторизации Windows подлинность пользователя проверяется операционной системой. Пользователь автоматически получает права доступа к данным SQL Server сразу же после регистрации в домене. Такой метод предоставления доступа называется установлением доверительного соединения.

Важно! Доверительное соединение в SQL Server 2000 поддерживается только при наличии сетевых библиотек Multiprotocol и Named Pipes.

Операционная система работает с учетными записями (logins), которые содержат все данные о пользователе. Каждая такая запись имеет уникальный идентификатор (login ID) или, как его называют по-другому, идентификатор безопасности (SID, Security Identification), с помощью которого пользователь регистрируется в сети.

Аутентификация Windows NT предусматривает сохранение в системной базе данных Master в SQL Server 2000, только идентификационного номера учетной записи. Остальная информация хранится в базе данных домена. Изменение имени пользователя или его пароля никак не отразится на правах доступа к SQL Server.

Информация об учетной записи считывается SQL Server только при регистрации. Поэтому изменения, которые администратор произвел с ней, отразятся только во время очередной регистрации.

Авторизация Windows NT дает определенные преимущества. На пользователях автоматически отражаются все правила политики безопасности, установленные в домене. Также этот режим упрощает управление правами доступа при наличии нескольких серверов SQL Server. При выполнении запросов на несколько серверов не нужно производить отображение логинов SQL Server.

При авторизации Windows NT следует следить за доверительными отношениями. Если пользователь одного домена подключается к SQL Server в другом домене, то между этими доменами должны быть настроены доверительные отношения.

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

На этом завершим рассмотрение режимов авторизации.

Ссылки по теме.

Enterprise Manager

Server — Properties — Security (выбор режима авторизации)

Server — Security — Logins (управление учетными записями сервера)

Server — Databases — Database — Users (управление пользователями базы данных)

Books Online

Installing SQL Server — Authentication Mode (выбор режима авторизации: коротко)

Administering SQL Server — Managing Security (управление безопасностью)

Administering SQL Server — Managing Security — Authentication Modes (режимы авторизации: подробно)

1С и режимы авторизации

Как я уже говорил, 1С может подключаться к SQL Server только в случае смешанного режима авторизации. Вернее только этот режим поддерживается при подключении к SQL Server по протоколу TCP/IP. Рассмотрим чем это обусловлено. Прежде всего, подключение возможно только через одну учетную запись, которая указывается в режиме «Конфигуратор» через меню «Администрирование — Параметры базы данных SQL:». Причем данные поля должны быть обязательно заполнены — иначе выдается сообщение об ошибке (по крайней мере, в 18 релизе это так). В то же время 1С, используя ODBC, создает подключение с помощью функции SQLDriverConnect и для этого передает строку подключения следующего вида:

DRIVER=SQL Server;SERVER=%s;UID=%s;PWD=%s;DATABASE=master;APP=1CV7;UseProcForPrepare=0

Вместо символов %s подставляются имя сервера, пользователь и пароль. Но для подключения в режиме авторизации Windows необходима строка подключения:

DRIVER=SQL Server;SERVER=%s;Trusted_connection=yes;DATABASE=master;APP=1CV7;UseProcForPrepare=0

Поэтому любое имя пользователя, указанное в конфигураторе приведет к ошибке с кодом 18452, которая была приведена выше. Может быть и можно сделать так, чтобы введенное имя пользователя было связано с доверительным соединением. Например, я пробовал записать имя пользователя вместе с доменом — не получилось — выдавалась та же ошибка. Но все равно эти действия не имеют смысла — основная цель авторизации Windows подключение РАЗНЫХ пользователей, но никак не всех под одним логином. Это ограничение можно было бы обойти, если бы в параметрах базы можно было бы указывать пустые параметры. Но как я уже писал выше это не возможно. Здесь мы подходим вплотную к решению проблемы. Мы знаем какую функцию 1С используется для подключения к SQL Server, какая при этом формируется строка и какая строка нам нужна. Эврика! — мы просто меняем эту строку, а находится она в файле bkend.dll. Заменяем ее на строку:

DRIVER=SQL Server;SERVER=%s;UID=;PWD=; DATABASE=master;APP=1CV7;UseProcForPrepare=0

Важно чтобы длина строки оставалась прежней и чтобы она начиналась в файле с того же смещения. Для этого перед словом DATABASE добавляем 4 пробела. Вуаля!

Теперь вы можете поставить авторизацию Windows и наслаждаться. Можно делать такие вещи! — аж дух захватывает! Самый простой пример, ограничение определенным пользователям доступа к некоторым таблицам. Дальше дело за вашей фантазией!

Но это еще не все. Данную строку можно переписать по-другому:

DSN=DNS1C; DATABASE=master;APP=1CV7;UseProcForPrepare=0

Опять же нужно соблюсти смещения начала и конца строки. Данная строка позволяет подключаться к SQL Server через источник данных, настроенный на клиенте. Этот способ немного сложнее (нужно настраивать источника на каждом клиенте), но с помощью него можно решить другую проблему — хранение пароля подключения не в файле DBA (который как известно довольно легко расшифровывается), а хранение его средствами операционной системы. Для этого в конфигураторе нужно просто задать имя пользователя, а пароль оставить пустым — теперь-то он хранится в другом месте! Вуаля очередной раз. Плюс небольшой P.S. — в документации для SQL Server 2000 написано, что указание Trusted_connection обязательно, но я проверил это на своей системе — предыдущий метод сработал. Если у вас он работать не будет, то придется использовать данный метод.

Когда будете создавать новых пользователей, то у них не будет никаких прав на данные в базе 1С. Кроме того, что нужно будет выставить эти права, нужно будет также указать роли (для SQL Server 2000, для 7.0 не знаю как): db_datareader, db_datawriter , db_creator. Роль db_creator нужна, так как при старте 1С изменяет некоторые параметры БД (для этого используется ХП sp_dboption, которая в свою очередь использует команду ALTER DATABASE). При установке разрешений на доступ к таблицам и прочая можно запариться 😉 — для этого лучше сразу написать скрипт с применением команды GRANT для каждой таблицы, ХП и т.п. Вроде бы все. Не пробовал подключать более двух пользователей (разных). Два одинаковых на моем домашнем компе — работают :).

Обычным образом (то есть без использования хакерских методов) 1С может подключаться в режиме аворизации Windwos только (а может и не только) по протоколу Named Pipes. В этом случае система просто игнорирует имя пользователя и пароль, передаваемые при соединении. Почему это не делается в случае протокола TCP/IP для меня является загадкой. Чтобы такое подключение было возможно желательно, чтобы на сервере был установлен только протокол Named Pipes, либо чтобы он стоял первым в списке в утилитах SQL Server по настройке сетевых протоколов на клиенете и сервере. Если вам это не поможет (так, например, случилось со мной), то нужно просто создать алиас (в SQL Server 2000) с помощью утилиты Client Network Utility, указав что соединение будет производится по протоколу Named Pipes. После этого имя алиаса можно использовать в качестве имени SQL Server и без проблем работать по протоколу Named Pipes. Но. Есть большое «Но» в этом варианте. Использование протокола Named Pipes не рекомендуется по причине его низкой производительности. За мой срок работы с SQL Server я слышал разные комментарии по этому поводу большая часть из них подтверждала это, хотя были и противоположные замечания, в которых указывалось, что использование Named Pipes не снижает производительность работы с SQL Server. Хорошо бы найти четкие экспериментальные подтверждения этому и желательно авторитетные, для меня пока это лишь теоретические предположения.

Под конец хочу дать вам ссылку на еще одну интересную методику. вы найдете более красивое решение проблемы безопасности, которое не использует хак 1С (в прямом его смысле). Кроме того, этот метод позволяет более гибко настроить ограничения доступа к данным, причем так, что 1С при этом не будет «падать» (если вы будет пользоваться обычной методикой ограничения прав доступа, то 1С при попытке доступа будет «вываливаться» с сообщением об ошибке доступа к данным).

В ситуации когда необходимо перенести базу данных SQL с одного экземпляра MS SQL Server на другой, или изменить каталог хранения файлов базы данных, помогут операции отсоединения (Detach) и присоединения (Attach) баз данных MS SQL Server. Об этих операциях в MS SQL Server 2012 (справедливо и для более ранних редакций MS SQL Server) и пойдет речь в данной статье.

  1. Отсоединение базы данных в MS SQL Server 2012
  2. Присоединение базы данных в MS SQL Server 2012

Отсоединение базы данных в MS SQL Server 2012

Запускаем программу «SQL Server Management Studio». В Microsoft Windows Server 2012 R2 ее можно найти в списке всех программ.

Вводим имя сервера, данные для авторизации и нажимаем «Соединить» (Connect).

В обозревателе объектов (Odject Explorer) раскрываем вкладку «Базы данных» (Databases), кликаем правой кнопкой мыши по базе данных, которую необходимо отсоединить, и в контекстном меню выбираем «Задачи» (Tasks) — «Отсоединить…» (Detach…).

В появившемся окне отсоединения базы данных возможно очистить существующие соединения с базой установив флаг «Удалить соединения» (Drop Connections) (не рекомендуется, правильно будет попросить пользователей закрыть клиентские программы), а также обновить статистику для базы данных отметив соответственно флаг «Обновить статистику» (Update Statistics). Выбрав необходимые операции нажимаем «ОК».

После чего выбранная база данных исчезнет из списка баз данных экземпляра MS SQL Server.

Но файлы базы данных останутся на жестком диске в том каталоге, где они находились до отсоединения базы данных.

Присоединение базы данных в MS SQL Server 2012

После отсоединения базы с одного экземпляра MS SQL Server, перенесем файлы базы данных (по умолчанию — файл данных с расширением .mdf и файл журнала транзакций с расширением .ldf) на другой сервер с установленным MS SQL Server, или переместим эти файлы в другою директорию на этом же сервере. Затем снова подключимся к SQL серверу на который необходимо перенести базу данных с помощью программы «SQL Server Management Studio». В обозревателе объектов (Object Explorer) кликнем правой кнопкой мыши по вкладке «Базы данных» (Databases) и в контекстном меню выберем «Присоединить…» (Attach…)

В запустившемся окне присоединения базы данных, с помощью кнопки «Добавить…» (Add…) выберем файл данных с расширением .mdf (или файлы, если их несколько) нашей базы данных из каталога их нового расположения. В таблице сведений (Database details) мастер должен определить расположение файла данных, а также найти соответствующий файл журнала транзакций с расширением .ldf. Если все необходимые файлы определились мастером успешно, нажимаем «ОК» для запуска процесса присоединения базы.

После чего, наша база данных появится в списке баз данных конечного экземпляра MS SQL Server.

Помогла ли Вам данная статья?

Приветствую всех на сайте Info-Comp.ru! В этой статье я подробно, специально для начинающих программистов, расскажу о том, как создать базу данных в Microsoft SQL Server, а также о том, что Вы должны знать, перед тем как создавать базу данных.

Сегодняшний материал, как я уже сказал, ориентирован на начинающих программистов, которые хотят научиться работать с Microsoft SQL Server. Поэтому я и буду исходить из того, что Вам нужно создать базу данных для обучения, т.е. основной посыл этой статьи направлен на то, чтобы тот, кто хочет создать базу данных в Microsoft SQL Server, после прочтения статьи четко знал, что ему для этого нужно сделать.

Заметка! Профессиональный видеокурс по T-SQL для начинающих.

Что нужно, для того чтобы создать базу данных в Microsoft SQL Server?

В данном разделе я представлю своего рода этапы создания базы данных в Microsoft SQL Server, т.е. это как раз то, что Вы должны знать и что у Вас должно быть, для того чтобы создать базу данных:

  1. У Вас должна быть установлена СУБД Microsoft SQL Server. Для обучения идеально подходит бесплатная редакция Microsoft SQL Server Express. Если Вы еще не установили SQL сервер, то вот подробная видео-инструкция, там я показываю, как установить Microsoft SQL Server 2017 в редакции Express;
  2. У Вас должна быть установлена среда SQL Server Management Studio (SSMS). SSMS – это основной инструмент, с помощью которого осуществляется разработка баз данных в Microsoft SQL Server. Эта среда бесплатная, если ее у Вас нет, то в вышеупомянутой видео-инструкции я также показываю и установку этой среды;
  3. Спроектировать базу данных. Перед тем как переходить к созданию базы данных, Вы должны ее спроектировать, т.е. определить все сущности, которые Вы будете хранить, определить характеристики, которыми они будут обладать, а также определить все правила и ограничения, применяемые к данным, в процессе их добавления, хранения и изменения. Иными словами, Вы должны определиться со структурой БД, какие таблицы она будет содержать, какие отношения будут между таблицами, какие столбцы будет содержать каждая из таблиц. В нашем случае, т.е. при обучении, этот этап будет скорей формальным, так как правильно спроектировать БД начинающий не сможет. Но начинающий должен знать, что переходить к созданию базы данных без предварительного проектирования нельзя, так как реализовать БД, не имея четкого представления, как эта БД должна выглядеть в конечном итоге, скорей всего не получится;
  4. Создать пустую базу данных. В среде SQL Server Management Studio создать базу данных можно двумя способами: первый — с помощью графического интерфейса, второй — с помощью языка T-SQL;
  5. Создать таблицы в базе данных. К этому этапу у Вас уже будет база данных, но она будет пустая, так как в ней еще нет никаких таблиц. На этом этапе Вам нужно будет создать таблицы и соответствующие ограничения;
  6. Наполнить БД данными. В базе данных уже есть таблицы, но они пусты, поэтому сейчас уже можно переходить к добавлению данных в таблицы;
  7. Создать другие объекты базы данных. У Вас уже есть и база данных, и таблицы, и данные, поэтому можно разрабатывать другие объекты БД, такие как: представления, функции, процедуры, триггеры, с помощью которых реализуется бизнес-правила и логика приложения.

Вот это общий план создания базы данных, который Вы должны знать, перед тем как начинать свое знакомство с Microsoft SQL Server и языком T-SQL.

В этой статье мы рассмотрим этап 4, это создание пустой базы данных, будут рассмотрены оба способа создания базы данных: и с помощью графического интерфейса, и с помощью языка T-SQL. Первые три этапа Вы должны уже сделать, т.е. у Вас уже есть установленный SQL Server и среда Management Studio, и примерная структура базы данных, которую Вы хотите реализовать, как я уже сказал, на этапе обучения этот пункт можно пропустить, а в следующих материалах я покажу, как создавать таблицы в Microsoft SQL Server пусть с простой, но с более-менее реальной структурой.

Создание базы данных в SQL Server Management Studio

Первое, что Вам нужно сделать, это запустить среду SQL Server Management Studio и подключиться к SQL серверу.

Затем в обозревателе объектов щелкнуть по контейнеру «Базы данных» правой кнопкой мыши и выбрать пункт «Создать базу данных».

В результате откроется окно «Создание базы данных». Здесь обязательно нужно заполнить только поле «Имя базы данных», остальные параметры настраиваются по необходимости. После того, как Вы ввели имя БД, нажимайте «ОК».

Если БД с таким именем на сервере еще нет, то она будет создана, в обозревателе объектов она сразу отобразится.

Как видите, база данных создана, и в этом нет ничего сложного.

Создание базы данных на T-SQL (CREATE DATABASE)

Процесс создания базы данных на языке T-SQL, наверное, еще проще, так как для того чтобы создать БД с настройками по умолчанию (как мы это сделали чуть выше), необходимо написать всего три слова в редакторе SQL запросов – инструкцию CREATE DATABASE и название БД.

Сначала открываем редактор SQL запросов, для этого щелкаем на кнопку «Создать запрос» на панели инструментов.

Затем вводим следующую инструкцию, и запускаем ее на выполнение, кнопка «Выполнить».

CREATE DATABASE TestDB;

Где CREATE – это команда языка T-SQL для создания объектов на SQL сервере, командой DATABASE мы указываем, что хотим создать базу данных, а TestDB — это имя новой базы данных.

Конечно же, на данном этапе многие не знают ни Microsoft SQL Server, ни языка T-SQL, многие, наверное, как раз и создают базу данных для того, чтобы начать знакомиться с этой СУБД и начать изучать язык T-SQL. Поэтому чтобы Вам легче было это делать, советую почитать книгу «Путь программиста T-SQL» — это самоучитель по языку Transact-SQL для начинающих, в которой я подробно рассказываю как про основные конструкции, так и про продвинутые конструкции языка T-SQL, и последовательно перехожу от простого к сложному.

С помощью инструкции CREATE DATABASE можно задать абсолютно все параметры, которые отображались у нас в графическом интерфейсе SSMS. Например, если бы мы заменили вышеуказанную инструкцию следующей, то у нас база данных создалась бы в каталоге DataBases на диске D.

—Создание БД TestDB CREATE DATABASE TestDB ON PRIMARY —Первичный файл ( NAME = N’TestDB’, —Логическое имя файла БД FILENAME = N’D:\DataBases\TestDB.mdf’ —Имя и местоположение файла БД ) LOG ON —Явно указываем файлы журналов ( NAME = N’TestDB_log’, —Логическое имя файла журнала FILENAME = N’D:\DataBases\TestDB_log.ldf’ —Имя и местоположение файла журнала ) GO

Удаление базы данных в Microsoft SQL Server

В случае необходимости можно удалить базу данных. В реальности, конечно же, такое редко будет требоваться, но в процессе обучения, может быть, и часто. Это можно сделать также, как с помощью графического интерфейса, так и с помощью языка T-SQL.

В случае с графическим интерфейсом необходимо в обозревателе объектов щелкнуть правой кнопкой мыши по нужной базе данных и выбрать пункт «Удалить».

Примечание! Удалить базу данных возможно, только если к ней нет никаких подключений, т.е. в ней никто не работает, даже Ваш собственный контекст подключения в SSMS должен быть настроен на другую БД (например, с помощью команды USE). Поэтому предварительно перед удалением необходимо попросить всех завершить сеансы работы с БД, или в случае с тестовыми базами данных принудительно закрыть все соединения.

В окне «Удаление объекта» нажимаем «ОК». Для принудительного закрытия существующих подключений к БД можете поставить галочку «Закрыть существующие соединения».

В случае с T-SQL, для удаления базы данных достаточно написать следующую инструкцию (в БД также никто не должен работать).

DROP DATABASE TestDB;

Где DROP DATABASE — это инструкция для удаления базы данных, TestDB – имя базы данных. Иными словами, командой DROP объекты на SQL сервере удаляются.

Заметка! Для комплексного изучения языка T-SQL рекомендую посмотреть мои видеокурсы по T-SQL, в которых используется последовательная методика обучения и рассматриваются все конструкции языка SQL и T-SQL.

Видео-урок по созданию базы данных в Microsoft SQL Server

На этом наш сегодняшний урок закончен, надеюсь, материал был Вам интересен и полезен, в следующем материале я расскажу про то, как создавать таблицы в Microsoft SQL Server, удачи Вам, пока!

Нравится18Не нравится1

Приведем ответы на частые вопросы, связанные с производительностью «1С:Документооборота».

Вопрос 1

Есть ли в «1С:Документообороте» оценка производительности?

В «1С:Документообороте» версии КОРП и ДГУ есть встроенная оценка производительности. Рекомендуется включить ее перед началом работы пользователей в программе: Настройка и администрирование — Настройка программы — Общие настройки — Выполнять замеры производительности.

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

Чтобы увидеть средние показатели за определенный период, выполните команду Время выполнения ключевых операций в меню раздела Настройка и администрирование.

Анализ и контроль производительности можно также вести по методике APDEX — команда Оценка производительности в меню раздела Настройка и администрирование.

Вопрос 2

С чего начать проверку при замедлении работы программы?

При замедлении работы программы рекомендуется проверить формат журнала регистрации. Также эту проверку рекомендуется проводить после обновления платформы «1С:Предприятия» на версию 8.3.7 или после создания информационной базы с нуля.

Если в каталоге 1Cv8Log есть файл 1Cv8.lgd, то нужно изменить формат журнала регистрации. Порядок замены:

  • остановите сервер «1С:Предприятия»;
  • удалите все файлы в каталоге 1Cv8Log. По умолчанию каталог расположен C:\Users\USR1CV8\AppData\Local\1C\1Cv82\reg_1541\;
  • создайте в папке 1Cv8Log пустой файл 1Cv8.lgf;
  • снова запустите сервер «1С:Предприятия».

Вопрос 3

Что делать, если у рядовых пользователей ключевые операции выполняются более 15 секунд? По прошествии этого времени операции выполняются без ошибок. При входе в программу под Администратором задержек нет. Все рекомендованные настройки СУБД и сервера «1С:Предприятие» выполнены.

Во-первых, проверьте версию конфигурации. Если установлена версия 1.4.xx, необходимо перейти на версию 2.0, куда включено много доработок по быстродействию.

Если проблема воспроизводится в 100% случаев:

  1. Запустите сервер «1С:Предприятия» с ключом debug. Обратите внимание: при этом работа сервера значительно замедлится, поэтому такой запуск рекомендуется проводить только в нерабочее время.
  2. В конфигураторе включите замер производительности.
  3. Выполните операцию под тем пользователем, у которого зафиксирована проблема.
  4. В замерах производительности посмотрите, на что ушло основное время;
  5. Сохраните замер в файл .pff и пришлите его на линию тех поддержки «Фирмы 1С».
    Дополнительно к данным, которые запрашивает тех поддержка «Фирмы 1С», необходимо прислать подробное описание проблемной ситуации и информацию о том, типовая ли конфигурация или доработанная. Например, «16 марта 2016 года с 12:00 у пользователя Иванов И.И. карточка внутреннего документа открывается 30 секунд. Конфигурация на поддержке».

Если проблема воспроизводится не в 100% случаев:

  1. Настройте технологический журнал на сервере «1С:Предприятие» ().
    Если технологический журнал уже настроен, то к уже имеющимся настройкам нужно добавить новые из скачанного файла. Файл logcfg.xml обычно распроложен тут: C:\Program Files (x86)\1cv8\conf (для 32-битного сервера «1С:Предприятие»); C:\Program Files\1cv8\conf (для 64-битного сервера «1С:Предприятие»).
  2. Дождитесь повторного воспроизведения проблемы.
  3. Пришлите данные технологического журнала на линию тех поддержки «Фирмы 1С».
    Дополнительно к запрашиваемым данным нужно подробно описать один! конкретный случай воспроизведения с точным временем: Например, «У пользователя Петров И.В. карточка внутреннего документа открывалась 30 секунд. Время: 16 марта 2016 г. в 14:45:50.

Вопрос 4

Что делать, если зафиксированы периодические замедления работы, например, раз в минуту?

Проверьте версию конфигурации. Если это версия 2.0.9 — 2.0.13 включительно, то обновитесь на более свежую или отключите автоматическую проверку контрагентов по ЕГРН (Настройка и администрирование — Настройки программы — Контрагенты — Автоматически проверять контрагентов по ЕГРН).

Вопрос 5

Что делать, если операция длится более 20 секунд, после чего выдает ошибку «Превышено максимальное время ожидания предоставления блокировки»? Как правило, ошибка проявляется у всех пользователей.

  1. В консоли администратора откройте список Сеансы. Установите сортировку по колонке Захвачено СУБД.
  2. Самый большой показатель будет на первом месте. Если он превышает значение 20 секунд, запишите номер сеанса из соответствующей колонки. Это понадобится для дальнейшего анализа.
  3. Отключите проблемный сеанс с помощью команды контекстного меню Del.
  4. Найдите в журнале регистрации первую запись, соответствующую этому сеансу. Если это регламентное задание, запишите его название. Оно потребуется для отправки на линию технической поддержки при регулярном воспроизведении проблемы.

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

  1. Настройте технологический журнал на сервере «1С:Предприятие» ().
    Если технологический журнал уже настроен, то к уже имеющимся настройкам нужно добавить новые из скачанного файла. Файл logcfg.xml обычно распроложен тут: C:\Program Files (x86)\1cv8\conf (для 32-битного сервера «1С:Предприятие»); C:\Program Files\1cv8\conf (для 64-битного сервера «1С:Предприятие»).
  2. Дождитесь повторного воспроизведения проблемы.
  3. Пришлите данные технологического журнала на линию тех поддержки «Фирмы 1С».
    Дополнительно к запрашиваемым данным нужно собрать данные на момент ошибки и за час до нее, подробно описать один конкретный пример ошибки с точным временем его воспроизведения. Например, «Пользователю Смирнову П.Р. не удается записать карточку внутреннего документа. 22 апреля, в 11:25:40».

1С строка подключения к SQL

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *