Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют / 17 сообщений из 17, страница 1 из 1
03.09.2013, 10:45
    #38385063
dimka_68
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
Здравствуйте, помогите, пожалуйста по такому вопросу:
При попытке подключения возникает следующая ошибка
Warning: odbc_pconnect() [function.odbc-pconnect]: SQL error: [Microsoft][Диспетчер драйверов ODBC] В указанном DSN архитектура драйвера и архитектура приложения не соответствуют друг другу.

ОС: Windows Server 2008 R2 Enterprice
MSSQL Server 2008
php 5.2
IIS 7
Версии драйвера, которые использовал:
SQL Server 6.01.7601.17514 SQLSRV32.DLL
SQL Native Client 10.0 2009.100.1600.01 SQLNCLI10.DLL

Возможно, я что-то подключил не так, так как первый раз имею дело с ODBC. Что я делал:
1. Создал системный DSN, обозвал так же, как и называется база, MSSQL Server на этой же машине, проверка подлинности SQL Server(указал данные по которым связываюсь, используя pdo_mssql). Тест на проверку источника данных проходит успешно.
2. В php.ini подключено pdo_odbc_mssql
3. Создал новый пул приложений и поместил туда своё, а в пуле приложений разрешил запуск 32-битных приложений

код, выдающий ошибку:

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<?php
$conn=odbc_pconnect("dsn", "user", "pass");
if (!$conn){
    if (phpversion() < '4.0'){
      exit("Connection Failed: . $php_errormsg" );
    }
    else{
      exit("Connection Failed:" . odbc_errormsg() );
    }
}
?>
...
Рейтинг: 0 / 0
03.09.2013, 10:57
    #38385095
Maxx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
вам ,скорее всего в форум по пхп надобно
...
Рейтинг: 0 / 0
03.09.2013, 11:07
    #38385114
pkarklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
авторВерсии драйвера, которые использовал:
SQL Server 6.01.7601.17514 SQLSRV32.DLL
SQL Native Client 10.0 2009.100.1600.01 SQLNCLI10.DLL

А это

авторWindows Server 2008 R2 Enterprice
MSSQL Server 2008
php 5.2
IIS 7

небось всё x64?
...
Рейтинг: 0 / 0
03.09.2013, 11:11
    #38385123
dimka_68
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
Решено!!
если у кого возникла такая же ситуация.
http://www.tech-recipes.com/rx/32525/odbc-error-the-specified-dsn-contains-an-architecture-mismatch/
Нужно запустить c:\Windows\sysWOW64\odbcad32.exe и создать там системный DSN. Видимо это 32-битная версия администратора источников данных ODBC. Ну и, скорее всего, не забыть в пуле приложений разрешить запуск 32-битных приложений
...
Рейтинг: 0 / 0
03.09.2013, 15:37
    #38385600
Winnipuh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
dimka_68Решено!!
если у кого возникла такая же ситуация.
http://www.tech-recipes.com/rx/32525/odbc-error-the-specified-dsn-contains-an-architecture-mismatch/
Нужно запустить c:\Windows\sys WOW64\odbcad32.exe и создать там системный DSN. Видимо это 32-битная версия администратора источников данных ODBC. Ну и, скорее всего, не забыть в пуле приложений разрешить запуск 32-битных приложений

вполне возможно
...
Рейтинг: 0 / 0
03.09.2013, 17:13
    #38385746
dimka_68
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
Winnipuh,

Что написал в точности наоборот, это я осознал, когда уже написал...=))) Только тогда вопрос: Почему админ ист данных ODBC, который запускается из главного меню - администрирование 32-х битный, а версия ОС 64. Я не представляю как это работает, поэтому в моих словах может быть доля чуши.
Если кто-то сможет более менее разъяснить, что к чему был бы весьма благодарен...=))
...
Рейтинг: 0 / 0
03.09.2013, 17:28
    #38385765
o-o
o-o
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
еще раз:
A 64-bit version of the Microsoft Windows operating system includes the following versions of the Microsoft Open Database Connectivity (ODBC) Data Source Administrator tool (Odbcad32.exe):

The 32-bit version of the Odbcad32.exe file is located in the %systemdrive%\Windows\SysWoW64 folder.
The 64-bit version of the Odbcad32.exe file is located in the %systemdrive%\Windows\System32 folder.
...
Рейтинг: 0 / 0
03.09.2013, 17:34
    #38385779
o-o
o-o
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
dimka_68Winnipuh,

Что написал в точности наоборот, это я осознал, когда уже написал...=))) Только тогда вопрос: Почему админ ист данных ODBC, который запускается из главного меню - администрирование 32-х битный, а версия ОС 64.

из меню 64-битной винды запускается 64-битное же ODBC.
...
Рейтинг: 0 / 0
03.09.2013, 18:00
    #38385832
Winnipuh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
dimka_68Winnipuh,

Что написал в точности наоборот, это я осознал, когда уже написал...=))) Только тогда вопрос: Почему админ ист данных ODBC, который запускается из главного меню - администрирование 32-х битный, а версия ОС 64. Я не представляю как это работает, поэтому в моих словах может быть доля чуши.
Если кто-то сможет более менее разъяснить, что к чему был бы весьма благодарен...=))

написал правильно ;)
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
23.08.2019, 02:23
    #39853057
nerv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
эх, подниму старую тему.
У меня источник FireBird 32 разрядный, а приемник - MS SQL 2008 R2 - 64 разрядный.

Поставил ODBC Driver 64 разрядный для FireBird, в odbcad32.exe для 64-разрядной не могу создать коннект для FireBird - не нравится клиент GDS32.dll, так как он 32-разрядный.

Если же создаю коннект в 32-разрядной odbcad32.exe , то коннект создается успешно.
Однако, если попытаться в VisualStudio службой SSIS импортировать данные из FireBird в MS SQL, то получаю
[Microsoft][Диспетчер драйверов ODBC] В указанном DSN архитектура драйвера и архитектура приложения не соответствуют друг другу.
[Источник - ADO NET [97]] Ошибка: System.Data.Odbc.OdbcException: ERROR [IM014] [Microsoft][Диспетчер драйверов ODBC] В указанном DSN архитектура драйвера и архитектура приложения не соответствуют друг другу.
в System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle, RetCode retcode)
в System.Data.Odbc.OdbcConnectionHandle..ctor(OdbcConnection connection, OdbcConnectionString constr, OdbcEnvironmentHandle environmentHandle)
в System.Data.Odbc.OdbcConnectionOpen..ctor(OdbcConnection outerConnection, OdbcConnectionString connectionOptions)
в System.Data.Odbc.OdbcConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
в System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup)
в System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
в System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
в System.Data.Odbc.OdbcConnection.Open()
в Microsoft.SqlServer.Dts.Runtime.ManagedHelper.GetManagedConnection(String assemblyQualifiedName, String connStr, Object transaction)
в Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSConnectionManager100.AcquireConnection(Object pTransaction)
в Microsoft.SqlServer.Dts.Pipeline.DataReaderSourceAdapter.AcquireConnections(Object transaction)
в Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostAcquireConnections(IDTSManagedComponentWrapper100 wrapper, Object transaction)


какой выход в моем случае может быть?
...
Рейтинг: 0 / 0
23.08.2019, 13:34
    #39853243
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
nervне могу создать коннект для FireBird - не нравится клиент GDS32.dll, так как он 32-разрядный.
Во-первых, клиент Firebird это fbclient.dll.
Во-вторых, у него существует и 64-х разрядная версия.
В-третьих, разрядность сервера Firebird клиенту сугубо безразлична.
...
Рейтинг: 0 / 0
23.08.2019, 15:03
    #39853295
nerv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
Dimitry Sibiryakov, у меня IB Expert цепляется через gds32
64-разрядный сервер не получится, так как у заказчика на 32-разрядной машине крутится.
...
Рейтинг: 0 / 0
23.08.2019, 16:55
    #39853371
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
nerv,

не пойму, все клиенты и SQL серверы на одном компьютере, что ли?
...
Рейтинг: 0 / 0
23.08.2019, 18:39
    #39853403
Александр Спелицин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
nerv,
Вы сначала определитесь с разрядностями.
То у Вас приемник - MS SQL 2008 R2 - 64 разрядный, то "... у заказчика на 32-разрядной машине крутится."
Для 64бит клиента, коим является 64бит MSSQL надо ставить 64бит клиента Firebird.
Для 32бит клиента, коим является IB Expert надо ставить 32бит клиента Firebird.
А если у Вас оба клиента FB ставят fbclient.dll в одно и то же место (SYSTEM32), то это проблема создателей дистрибутивов.
Разрядность сервера FB тут ни на что не влияет.
...
Рейтинг: 0 / 0
23.08.2019, 19:51
    #39853430
nerv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
друзья, подскажите тогда плиз, какого клиента надо поставить (что рекомендуете) и какие ODBC драйвера развернуть.

Написал несколько запутанно, простите, поясняю.

Я разработку веду на виртуалке Win 2008 R2 64 разрядная.
У меня установлен на этой виртуалке MS SQL Server 2008 R2 64 разрядная
и на этой же виртуалке FireBird 2.5 32 разрядный (так как такой же стоит у клиента с его программой)

У клиента стоит FireBird 2.5 32 разрядный и Windows там стоит 32 разрядный
Другая машина Win 2008 R2 64 разрядная с MS SQL Server 2008 R2 64 разрядная

Хотелось бы прилинковать FireBird к MS SQL и использовать Visual Studio для создания Integration Services Package c последующим его запуском через Job.
...
Рейтинг: 0 / 0
24.08.2019, 13:36
    #39853480
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
nervу меня IB Expert цепляется через gds32
Сугубо всё равно: IBExpert не имеет никакого отношения к данному топику.

nerv64-разрядный сервер не получится, так как у заказчика на 32-разрядной машине крутится.
Повторяю медленно: разрядность сервера совершенно безразлична. Вообще. Никак.

Александр СпелицинА если у Вас оба клиента FB ставят fbclient.dll в одно и то же место (SYSTEM32), то это проблема создателей дистрибутивов.
Нет, это правильное, предусмотренное MS поведение: для 32-х разрядных приложений SYSTEM32 совсем другой чем для 64-х разрядных, несмотря на одинаковое имя.
...
Рейтинг: 0 / 0
26.08.2019, 09:39
    #39853650
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют
nervэх, подниму старую тему.
У меня источник FireBird 32 разрядный, а приемник - MS SQL 2008 R2 - 64 разрядный.

Поставил ODBC Driver 64 разрядный для FireBird, в odbcad32.exe для 64-разрядной не могу создать коннект для FireBird - не нравится клиент GDS32.dll, так как он 32-разрядный.

Если же создаю коннект в 32-разрядной odbcad32.exe , то коннект создается успешно.
Однако, если попытаться в VisualStudio службой SSIS импортировать данные из FireBird в MS SQL, то получаю
[Microsoft][Диспетчер драйверов ODBC] В указанном DSN архитектура драйвера и архитектура приложения не соответствуют друг другу.
[Источник - ADO NET [97]] Ошибка: System.Data.Odbc.OdbcException: ERROR [IM014] [Microsoft][Диспетчер драйверов ODBC] В указанном DSN архитектура драйвера и архитектура приложения не соответствуют друг другу.
в System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle, RetCode retcode)
в System.Data.Odbc.OdbcConnectionHandle..ctor(OdbcConnection connection, OdbcConnectionString constr, OdbcEnvironmentHandle environmentHandle)
в System.Data.Odbc.OdbcConnectionOpen..ctor(OdbcConnection outerConnection, OdbcConnectionString connectionOptions)
в System.Data.Odbc.OdbcConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
в System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup)
в System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
в System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
в System.Data.Odbc.OdbcConnection.Open()
в Microsoft.SqlServer.Dts.Runtime.ManagedHelper.GetManagedConnection(String assemblyQualifiedName, String connStr, Object transaction)
в Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSConnectionManager100.AcquireConnection(Object pTransaction)
в Microsoft.SqlServer.Dts.Pipeline.DataReaderSourceAdapter.AcquireConnections(Object transaction)
в Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostAcquireConnections(IDTSManagedComponentWrapper100 wrapper, Object transaction)


какой выход в моем случае может быть?

[Microsoft][Диспетчер драйверов ODBC] В указанном DSN архитектура драйвера и архитектура приложения не соответствуют духу времени
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / php, IIS, ODBC, MSSQL, архитектура драйвера и архитектура приложения не соответствуют / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]