Error conexión MS OLE DB Provider for SQL Server 32 bits con alias def. con cliconfg x32 en SO x64
Publicado por Emi116 (4 intervenciones) el 09/11/2012 10:29:53
Tengo un servidor con Windows Server 2008 R2 Standard x64 SP1 Español en una máquina virtual VMWare.
SQL Server 2008 R2 SP2 x64 en español, donde he creado una instancia: SERVER\instance
Necesito realizar una conexión haciendo uso del proveedor de 32 bits Microsoft OLE DB Provider for SQL Server utilizando como servidor un alias definido con el cliconfg.exe de 32bits.
Me falla cuando en el alias de 32 bits hago referencia al servidor local. Creo que el problema podría venir porque no funcione correctamente MDAC al resolver el alias.
Con test UDL he comprobado la conexión y he verificado que funciona si:
- Ejecutamos el fichero UDL en x64 (haciendo doble clic sobre el fichero) y como servidor ponemos SERVER\instance (servidor local)
- Ejecutamos el fichero UDL en x64 y como servidor ponemos el alias creado en el cliconfg.exe de 64 bits (servidor local)
- Ejecutamos el fichero UDL en x64 (haciendo doble clic sobre el fichero) y como servidor ponemos SERVERX\instanceX (servidor remoto tanto x64 como x86)
- Ejecutamos el fichero UDL en x64 y como servidor ponemos el alias creado en el cliconfg.exe de 64 bits (servidor remoto tanto x64 como x86)
- Ejecutamos el fichero UDL en x86 y como servidor ponemos SERVER\instance (servidor local)
- Ejecutamos el fichero UDL en x86 (haciendo doble clic sobre el fichero) y como servidor ponemos SERVERX\instanceX (servidor remoto tanto x64 como x86)
- Ejecutamos el fichero UDL en x86 y como servidor ponemos el alias creado en el cliconfg.exe de 32 bits (servidor remoto tanto x64 como x86)
Falla si:
- Ejecutamos el fichero UDL en x86 y como servidor ponemos el alias creado en el cliconfg.exe de 32 bits que hace referencia al servidor local.
El error que sale es:
Error de Vinculos de datos de Microsoft
Error en la prueba de conexión al inicializar al proveedor.
[DBNETLIB][ConnectionOpen (Connect()).]No existe el servidor SQL Server o se ha denegado el acceso al mismo.
También he comprobado que desde otros servidores remotos (SO x64 y x86) puedo acceder a SERVER\instance tanto con alias creados con cliconfg.exe x64 como x86.
Para crear el alias de 32 bits en la máquina de 64 bits, ejecuté:
C:\Windows\SysWOW64\cliconfg.exe
También probé a crearlo con SQL Server Configuration Manager -> Configuración de SQL Native Clien 10.0(32 bits) -> Alias
Para ejecutar el fichero UDL en 32 bits, desde una ventana de MSDOS lanzo:
C:\Windows\syswow64\rundll32.exe "C:\Program Files (x86)\Common Files\System\Ole DB\oledb32.dll", OpenDSLFile C:\test.udl
¿Alguien me puede ayudar?
Gracias.
SQL Server 2008 R2 SP2 x64 en español, donde he creado una instancia: SERVER\instance
Necesito realizar una conexión haciendo uso del proveedor de 32 bits Microsoft OLE DB Provider for SQL Server utilizando como servidor un alias definido con el cliconfg.exe de 32bits.
Me falla cuando en el alias de 32 bits hago referencia al servidor local. Creo que el problema podría venir porque no funcione correctamente MDAC al resolver el alias.
Con test UDL he comprobado la conexión y he verificado que funciona si:
- Ejecutamos el fichero UDL en x64 (haciendo doble clic sobre el fichero) y como servidor ponemos SERVER\instance (servidor local)
- Ejecutamos el fichero UDL en x64 y como servidor ponemos el alias creado en el cliconfg.exe de 64 bits (servidor local)
- Ejecutamos el fichero UDL en x64 (haciendo doble clic sobre el fichero) y como servidor ponemos SERVERX\instanceX (servidor remoto tanto x64 como x86)
- Ejecutamos el fichero UDL en x64 y como servidor ponemos el alias creado en el cliconfg.exe de 64 bits (servidor remoto tanto x64 como x86)
- Ejecutamos el fichero UDL en x86 y como servidor ponemos SERVER\instance (servidor local)
- Ejecutamos el fichero UDL en x86 (haciendo doble clic sobre el fichero) y como servidor ponemos SERVERX\instanceX (servidor remoto tanto x64 como x86)
- Ejecutamos el fichero UDL en x86 y como servidor ponemos el alias creado en el cliconfg.exe de 32 bits (servidor remoto tanto x64 como x86)
Falla si:
- Ejecutamos el fichero UDL en x86 y como servidor ponemos el alias creado en el cliconfg.exe de 32 bits que hace referencia al servidor local.
El error que sale es:
Error de Vinculos de datos de Microsoft
Error en la prueba de conexión al inicializar al proveedor.
[DBNETLIB][ConnectionOpen (Connect()).]No existe el servidor SQL Server o se ha denegado el acceso al mismo.
También he comprobado que desde otros servidores remotos (SO x64 y x86) puedo acceder a SERVER\instance tanto con alias creados con cliconfg.exe x64 como x86.
Para crear el alias de 32 bits en la máquina de 64 bits, ejecuté:
C:\Windows\SysWOW64\cliconfg.exe
También probé a crearlo con SQL Server Configuration Manager -> Configuración de SQL Native Clien 10.0(32 bits) -> Alias
Para ejecutar el fichero UDL en 32 bits, desde una ventana de MSDOS lanzo:
C:\Windows\syswow64\rundll32.exe "C:\Program Files (x86)\Common Files\System\Ole DB\oledb32.dll", OpenDSLFile C:\test.udl
¿Alguien me puede ayudar?
Gracias.
Valora esta pregunta


0