Связывание MySQL с MS SQL Server с использованием драйверов OBDC (Ошибка 7303)

0

Я пытаюсь установить связь между базами данных MySQL и MSSQL с использованием драйверов ODBC. Причина в том, что наш сайт построен с использованием PHP и MySQL, и нам нужно управлять базой данных из SQL Server Manag. Студия.

Я уже связал MySQL с MS ACCESS, поэтому драйверы MySQL ODBC полностью работают.

Когда я пытаюсь связать их с MICROSOFT SQL SERVER MANAGEMENT STUDIO> SERVER OBJECTS> LINKED SERVERS> NEW LINKED SERVER...

С этой конфигурацией:

Изображение 174551

Изображение 174551

Изображение 174551

Я получаю эту ошибку:

Изображение 174551


Я пробовал со всеми этими версиями MySQL OBDC Drivers:

  • ODBC 5.3 Unicode (32-разрядный) - это тот, который работает с MS ACCESS
  • ODBC 5.3 ANSI (32-разрядная версия)
  • ODBC 5.3 Unicode (64-разрядная версия)
  • ODBC 5.3 ANSI (64-разрядная версия)
  • ODBC 8.0 Unicode (64-разрядная версия)
  • ODBC 8.0 ANSI (64-разрядная версия)

Изображение 174551


Для NEW LINKED SERVER:

  1. Я пробовал написать это в строке "Поставщик":

    • Driver = {MySQL ODBC 5.3 ANSI Driver};
      БАЗА ДАННЫХ = MyDB; ВАРИАНТ = 134217728; PWD = myPASS; UID = MyUser; SERVER = MYSERVER

    • ODBC: DSN = KARALIGROUP32 :: Таблица = MYTABLE

Я также попытался написать myTABLE в "Каталоге".

  1. На вкладке "Безопасность" я попробовал все четыре параметра. (В последнем варианте я набрал логин для MySQL DB, а также для SQL Server)
  2. На вкладке "Параметры сервера" я попытался предоставить RPC и RPC (как в TRUE, так и в FALSE)

Я также должен упомянуть, что база данных SQL Server не является моей собственной, поэтому у меня нет полных учетных данных. Это мои права пользователя от SECURITY> LOGINS.

Изображение 174551


Мой вывод: я думаю, что это касается конфигурации MS SQL SERVER MANAGEMENT STUDIO или моих прав пользователя.

Спасибо за вашу помощь!


Обновить:

Я следовал рекомендациям, данным TallTed, но он пока не работает.

Изображение 174551

На вкладках "Безопасность и параметры сервера" я оставил их, как показано на предыдущих снимках экрана. Я также пробовал все соединения ODBC, показанные на скриншоте.

Любые другие идеи? Спасибо за вашу помощь!

Теги:
database
sql-server
odbc

2 ответа

0

Я решил это! Я использовал клиентский компьютер. Я установил драйвер на сервере, а затем выполнил следующее сообщение: https://www.mssqltips.com/sqlservertip/4570/access-mysql-data-from-sql-server-via-a-linked-server/

Спасибо, и я надеюсь, что это поможет кому-то!

0

Во-первых - указанная ошибка не имеет ничего общего с вашими разрешениями пользователя SQL Server.

Далее - важно помнить, что Microsoft SQL Server на самом деле не является клиентским приложением ODBC. Это OLE DB и клиентское приложение ADO.NET.

Также обратите внимание: для 64-разрядного SQL Server требуется 64-разрядный драйвер ODBC; Для 32-разрядного SQL Server требуется 32-разрядный драйвер ODBC. Есть несколько дополнительных исправлений с 64-разрядным SQL Server, как описано в этой статье на моем сайте работодателя.

Если ваши данные являются строго 8-битными "узкими" кодовыми страницами, вам не нужен драйвер Unicode, и, вероятно, будет легче работать с драйвером ANSI. Тем не менее, учитывая, что у вас есть ODBC 5.3 Unicode (32-разрядный), работающий с Access, я думаю, что у вас будет успех с использованием этого или ODBC 5.3 Unicode (64-разрядный) с SQL Server.

Теперь - возможный шаг к успеху. На первом MSDASQL экрана имя продукта должно быть MSDASQL. Вам не потребуется строка провайдера, потому что эта строка поступает из вашего ODBC DSN.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню