Війти
1c Установка подключения к MySQL через ODBC connector

  0    0 
29.05.2019 | kievol | 1511

Руководство, облегчающее жизнь при очередной настройке подключения MySQL к 1С через ODBC connector (driver). Оставлю это хотя бы для себя на память :)

Итак, для того, чтобы настроить связь между MySQL и 1С нужно:

1. Скачать дистрибутив установки ODBC connector.

Я обычно пользуюсь ODBC 5.3 Unicode driver, он еще называется 5.3.0 alpha, скачать можно здесь https://downloads.mysql.com/archives/c-odbc/).

Устанавливать нужно на сервер, на котором лежит база данных. То есть, если в пути к базе написано "10.80.11.30", то и устанавливаем на сервер 10.80.11.30, если в пути к базе написано "localhost", то и устанавливаем на этот же сервер "localhost", ну вы понимаете.

Если в процессе установки возникает ошибка "Error 1318:Error installing ODBC Driver ....... the specified module could not be found ... myodbc5s.d ...", значит на сервере не хватает пакета "Microsoft Visual C++ 2010 Redistributable Package", скачать можно здесь https://www.microsoft.com/en-us/download/confirmation.aspx?id=14632 (x64) и здесь https://www.microsoft.com/en-us/download/confirmation.aspx?id=5555 (x86). Если вы взяли версию драйвера отличную от моей любимой ODBC 5.3 Unicode driver, то пакет, необходимый для установки ODBC может быть и другой, ориентируйтесь на название недостающего компонента в описании ошибки, и вы обязательно найдете какого именно пакета Microsoft Visual C++ вам не хватает. Пакет Microsoft Visual C++ нужно тоже установить и для 32-х разрядной системы, и для 64-х разрядной.

2. Настроить ODBC connector.

Для работы с базами данных часто используют псевдонимы (alias). Псевдоним БД - это имя некоторой базы данных, которое прописывается в настойках таким образом, что для обращения к таблицам данной базы достаточно указать alias. Это удобство позволяет легко менять тип БД, не меняя текста программ. Рассмотрим принцип определения псевдонима БД Microsoft Access, хранящейся в файле db.mdb на сервере. Предположим, мы хотим, чтобы псевдоним db соответствовал данной БД. Для этого необходимо запустить Администратор источников данных ODBC (Пуск \ Настройка \ Панель управления \ Администрирование \ Источники данных (ODBC)):

Далее, в разделе "Системный DSN" следует добавить новый псевдоним, выбрав соответствующий драйвер:

После нажатия на кнопку "Готово" остается указать имя источника "db" и путь к файлу:

Нажатием кнопки "Ок" в системе появится псевдоним "db" к базе данных, который можно будет использовать при обращении к файлу db.mdb . Следует заметить, что аналогичным образом можно указать псевдоним и к другим СУБД, при этом принцип реализации веб-интерфейса к БД не изменится.

Заметим, что для работы с файлами *.mdb можно работать и без псевдонима, т.е. вместо подключения
   DSN = "db"
можно использовать одно из следующих подключений:
   DSN = "Driver={Microsoft Access Driver (*.mdb)}; PWD=; DBQ=c:\Inetpub\wwwroot\dhtml\db.mdb"
   DSN = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\Inetpub\wwwroot\dhtml\db.mdb"

Здесь видно, что при подключении используется полный путь к файлу, что менее практично.

3. Если соединение не устанавливается, проверяем, что в MySQL не наложены ограничения на IP, с которых осуществляется подключение. Если это не помогло, можно установить MySQL Workbench (https://www.mysql.com/products/workbench/), добавить туда базу данных MySQL и протестировать подключение - у Workbench более информативные сообщения об ошибке, зачастую с первого раза понятно куда копать.

4. После всех манипуляций можно выпить бокальчик вина и создать обработку работы с базой MySQL. Это очень просто:   

АДОСоединение = Новый COMОбъект("ADODB.Connection"); Если АДОСоединение.State = 0 // 0 - adStateClosed Тогда SRV = "..."; //адрес сервера MySQL DB = "..";//имя базы MySQL UID = "..";//имя пользователя MySQL PWD = "...";//пароль пользователя MySQL PORT = "";//порт сервера MySQL, например 3306 cstr = "DRIVER={MySQL ODBC 5.3 Unicode Driver}; |SERVER=" + SRV + ";UID=" + UID + "; |PASSWORD=" + PWD + ";DATABASE=" + DB + ";PORT=" + PORT + ";"; Попытка АДОСоединение.Open (cstr); Исключение АДОСоединение = Неопределено; Сообщить(ОписаниеОшибки()); КонецПопытки; КонецЕсли; //выполняем запрос к MySQL: ТекстЗапроса = "SELECT ITEMS.ID FROM ITEMS"; Table = АДОСоединение.Execute(ТекстЗапроса); Пока Table.EOF() = 0 Цикл Сообщить(Table.Fields("ID").Value); Table.MoveNext(); КонецЦикла; Table.Close();

  • Пять способов вызвать JS функцию
    Пять способов вызвать JS функцию

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

  • IIS и 1С ошибки: Обнаружено потенциально опасное значение Request.Path или ошибка 500
    IIS и 1С ошибки: Обнаружено потенциально опасное значение Request.Path или ошибка 500

    Ошибка примерно такая:[HttpException (0x80004005): Обнаружено потенциально опасное значение Request.Path, полученное от клиента (:).] System.Web.HttpRequest.ValidateInputIfRequiredByConfig() +9914812 System.Web.PipelineStepManager.ValidateHelper(HttpContext context) +53Алгоритм следующий:  Открываем IIS. Открываем наш сайт-публикацию в браузере. Идем в сопоставления обработчиков. Ищем ISAPI-dll и выделяем строку. Справа нажимаем "Добавить…

  • Параметры вставки youtube видео на сайт и секреты
    Параметры вставки youtube видео на сайт и секреты

    Youtube.com — самый известный видео хостинг, миллионы уже загруженных видео-роликов.Вы захотели добавить видео к себе на страницу. <iframewidth="560"height="315"src="//www.youtube.com/embed/2GbSpPxzDeY"frameborder="0"allowfullscreen> Но чтобы немного изменить вид и действие плеера, есть несколько параметров.Параметры добавляются в src после знака вопроса (?), а все последующие – через амперсанд & или…

  • ОТКЛЮЧИТЬ CTRL+ALT+DEL ПРИ ВХОДЕ В WINDOWS
    ОТКЛЮЧИТЬ CTRL+ALT+DEL ПРИ ВХОДЕ В WINDOWS

    При включении компьютера, Вам нужно нажать "Ctrl"+"Alt"+"Del"и выбрать пользователя Настройка Windows Отключить нажатие CTRL+ALT+DEL сразу после загрузки Windows Нажимаем "Пуск". Заходим в "Панель управления" - "Администрирование" - "Локальная политика безопасности" - "Локальные политики" - "Параметры безопасности" Находим пункт "Интерактивный вход в систему: не требовать нажатия CTRL + ALT +…

  • Apache падает
    Apache падает

    В логах /var/log/apache2/error.log Апач внезапно падает [timestamp] [mpm_event:notice] [pid 20056:tid 140176783820672] AH00493: SIGUSR1 received. Doing graceful restart [timestamp] [core:notice] [pid 20056] AH00060: seg fault or similar nasty error detected in the parent process Соответсвенно сайты уходят в 502 Bad Gateway. У меня эта проблема была из-за программы logrotate и в неточности в насройках. $ sudo nano /etc/logrotate.d/apache2 В этом файле нежно сменить apache2 reload на apache2 restart ! После данных…


Комментарии

67 + 7 =