|
Беда с подключением к MySQL из 1С через ODBC | ☑ | ||
---|---|---|---|---|
0
mixqn
12.11.12
✎
16:53
|
Ситуация примерно следующая: есть некая обработка, скачивающая через ODBC данные из базы на MySQL в 1С. И все это дело прекрасно работало до какого-то момента, потом поломалось. Что такого сделали, что оно поломалось, клиенты не сознаются.
Что есть на данный момент и что было сделано чтобы полечить. Попытка соединения вызывает исключение с описанием ошибки «Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию» В сети по поводу этой проблемы найдено только 2 возможных варианта: 1. Проблема с драйвером 2. Проблема со строкой подключения Причина 1 по всей видимости отпадает. Драйвер мало того, что уже был установлен и MySQL-ная софтина проверки показывала, что соединение с базой есть (то есть драйвер рабочий), так я еще для надежности заставил их скачать при мне нужную версию с официального сайта и при мне же драйвера были переустановлены и на серваке и на машине (для надежности), с которой осуществляется попытка соединения. Короче говоря драйвер должен быть рабочим. По поводу причины 2: в процессе поиска инфо по теме я нашел вот такую вот страничку www.connectionstrings.com/... перепробовал все основные варианты оттуда (хотя по сути дела, вариант то один, там если присмотреться, отличий очень мало) - не помогло. Еще из идей был вариант, что проблема может как-то быть связана с тем, что база 1С серверная. Чтобы и это исключить создал пустую базу на клиенте, в ней обработку для тестирования соединения. Не помогло. Результат тот же. Есть идеи? |
|||
1
shuhard
12.11.12
✎
16:56
|
(0)[ Источник данных не найден]
и нет драйвера ODBC две большие разницы |
|||
2
mixqn
12.11.12
✎
16:56
|
(1) допустим
что делать? |
|||
3
acsent
12.11.12
✎
16:57
|
на сервере дрова установили?
|
|||
4
shuhard
12.11.12
✎
16:58
|
(2) форуму предлагается угадать по какой технологии идёт связь с сиквелом ?
|
|||
5
mixqn
12.11.12
✎
16:59
|
(3) да
(4) ADODB |
|||
6
shuhard
12.11.12
✎
17:02
|
(5) код в студию
|
|||
7
shuhard
12.11.12
✎
17:02
|
(6) ну и конечно результат работы udl файлика положительный ?
|
|||
8
zulu_mix
12.11.12
✎
17:03
|
(7) да они похож через удл и лазили
|
|||
9
mixqn
12.11.12
✎
17:04
|
Попытка
оСоединение = Новый COMОбъект("ADODB.Connection"); Исключение Сообщить(ОписаниеОшибки()); Возврат; КонецПопытки; СтрокаСоединения = "Driver=MySQL ODBC 5.1 Driver;Server="+ИмяСервера+";Database="+ИмяБД+";uid="+ИмяПользователяБД+";Pwd="+ПарольПользователяБД+";"; оСоединение.ConnectionString = СтрокаСоединения; Попытка оСоединение.Open();//СтрокаСоединения Сообщить("ОК"); Исключение Сообщить(ОписаниеОшибки()); Сообщить(СтрокаСоединения); Сообщить(оСоединение.ConnectionString); КонецПопытки; |
|||
10
shuhard
12.11.12
✎
17:04
|
(8) мсье знает толк в гнусных извращениях
|
|||
11
mixqn
12.11.12
✎
17:06
|
(7) можно чуть подробнее? что есть udl?
|
|||
12
shuhard
12.11.12
✎
17:07
|
(11) сделай текстовый файл
смени расширение щёлкни по нему получишь оболочку для тестирования ADODB |
|||
13
mixqn
12.11.12
✎
17:12
|
(12) сделал
Результат: сообщение "[DBNETLIB][ConnectionOpen(Connect()).]SQL Server не существует, или доступ запрещен" |
|||
14
shuhard
12.11.12
✎
17:14
|
(13) нужна помощь форума ?
|
|||
15
shuhard
12.11.12
✎
17:17
|
(14) и контрольный выстрел, провайдер конечно был выбран for ODBC ?
|
|||
16
ice777
12.11.12
✎
17:18
|
(13) бгг. вроде все по русски написано..)
|
|||
17
kokamoonga
12.11.12
✎
17:35
|
(13) скорее всего юзеру от имени которого ты пытаешься подключаться запрещен удаленный доступ. это самая частая причина непоняток
|
|||
18
sikuda
12.11.12
✎
17:41
|
1. Проверить установлен ли драйвер. Переустановить если возможно.
2. у нас строка соединения типа СтрокаСоединения = "{Driver=MySQL ODBC 5.1 Driver};Server="+ИмяСервера+";Database="+ИмяБД+";uid="+ИмяПользователяБД+";Pwd="+ПарольПользователяБД+";"; |
|||
19
kokamoonga
12.11.12
✎
17:42
|
(9)(17)+ и драйвер все же в фигурных скобках. может оно и неважно, но...
Driver={MySQL ODBC 5.1 Driver} |
|||
20
mixqn
12.11.12
✎
18:17
|
(18)
драйвер переустанавливали строку соединения такую пробовал, не помогло (19) было и в фигурных |
|||
21
kokamoonga
12.11.12
✎
19:13
|
(20) доступ у юзера есть?
|
|||
22
Fragster
гуру
12.11.12
✎
19:33
|
создаешь пустой файл .udl, открываешь 2м кликом, заполняешь, тестишь, сохраняешь, открываеьш блокнотом - вот и есть искомая строка.
|
|||
23
mixqn
13.11.12
✎
11:44
|
(21) каким образом это проверить?
В теме в общем описано, что мы делали. Под ровно этими же параметрами (сервер, база, логин, пароль) нормально срабатывает подключение через MySQL-ную софтину входящую в состав драйвера ODBC - если открыть список драйверов ODBC, открывается окно проверки соединения, туда вводятся данные, жмется кнопка Test, затем выдается модальное окошко "Test result" с текстом "Connection successful". Далее. Под этим же пользователем работает подключение самой программы (комендант называется), база данных которой хранится на MySQL. Проверка файлом udl дала результат (13) Вопросы: 1) что конкретно означает сообщение (13), какие могут быть варианты 2) если один из вариантов - права доступа (судя по тексту сообщения (13)), то как еще их надо проверить/настроить, учитывая все вышесказанное? |
|||
24
Fragster
гуру
13.11.12
✎
12:18
|
(23) firewall - проверяешь telnetом коннект на порт (какой там порт у мускуля не помню), если коннект проходит - значит права доступа мускуля надо крутить
|
|||
25
Fragster
гуру
13.11.12
✎
12:19
|
или просто служба мускуля остановлена
|
|||
26
BigHarry
13.11.12
✎
12:19
|
В конфиг мыскля в секцию директив сервера внесите
skip-grant-tables рестартаните мыскля и попробуйте опять. Если все пойдет - значит с правами затычка. |
|||
27
Fragster
гуру
13.11.12
✎
12:19
|
у мускульная софтина может не через tcp-ip работать, а по named pipes, например
|
|||
28
BigHarry
13.11.12
✎
12:21
|
(27) По намед пайпс он не работает, под юникс-сокет - работает, но уже не на венде...
|
|||
29
Fragster
гуру
13.11.12
✎
12:23
|
(28) ну я хз, что там у автора. сеть проверяется телнетом, коннект идет - значит - права
|
|||
30
kokamoonga
14.11.12
✎
01:50
|
(23) недавно подобная тема перетиралась v8: Не коннектится к MySQL Базе
проверить права в любой программе администрирования MySQL коих тыщщи. хостинги стандартно комплектуются phpmyadmin, под винду могу посоветовать dbForge Studio for MySQL (http://www.devart.com/dbforge/mysql/studio/). можно и в консоли если есть желание поизучать синтаксис команд MySQL http://citforum.ru/database/mysqldoc/mysqldoc_02.shtml но судя по тому что ты говоришь права у пользователя есть. тогда либо ты что-то недоговариваешь, либо какие-то чудеса. давай-ка полный конфиг в студию. на чем крутится 1с, на чем крутится MySQL. где сервера относительно друг друга, сколько тысяч файерволов между ними. бывают например проблемы совместимости драйверов ODBC 32/64 бита. вобщем рассказывай подробнее. конфиг-файл MySQL тоже бы не помешал. это чтобы посмотреть на каких интерфесах MySQL слушает. может у тебя там bind-address = 127.0.0.1, из описания непонятно откуда и куда идет доступ |
|||
31
kokamoonga
14.11.12
✎
01:53
|
(30)+ ах да... версия установленного драйвера и версия сервера MySQL
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |