Я пытаюсь установить связь между базами данных 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...
С этой конфигурацией:
Я получаю эту ошибку:
Я пробовал со всеми этими версиями MySQL OBDC Drivers:
Для NEW LINKED SERVER:
Я пробовал написать это в строке "Поставщик":
Driver = {MySQL ODBC 5.3 ANSI Driver};
БАЗА ДАННЫХ = MyDB; ВАРИАНТ = 134217728; PWD = myPASS; UID = MyUser; SERVER = MYSERVER
ODBC: DSN = KARALIGROUP32 :: Таблица = MYTABLE
Я также попытался написать myTABLE в "Каталоге".
Я также должен упомянуть, что база данных SQL Server не является моей собственной, поэтому у меня нет полных учетных данных. Это мои права пользователя от SECURITY> LOGINS.
Мой вывод: я думаю, что это касается конфигурации MS SQL SERVER MANAGEMENT STUDIO или моих прав пользователя.
Спасибо за вашу помощь!
Обновить:
Я следовал рекомендациям, данным TallTed, но он пока не работает.
На вкладках "Безопасность и параметры сервера" я оставил их, как показано на предыдущих снимках экрана. Я также пробовал все соединения ODBC, показанные на скриншоте.
Любые другие идеи? Спасибо за вашу помощь!
Я решил это! Я использовал клиентский компьютер. Я установил драйвер на сервере, а затем выполнил следующее сообщение: https://www.mssqltips.com/sqlservertip/4570/access-mysql-data-from-sql-server-via-a-linked-server/
Спасибо, и я надеюсь, что это поможет кому-то!
Во-первых - указанная ошибка не имеет ничего общего с вашими разрешениями пользователя 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.