Paso 1 - Comprueba si existe el archivo /etc/odbcinst.ini
Comprueba el archivo /etc/odbcinst.ini y asegúrese de que incluye información similar a la siguiente. Puedes comprobarlo utilizando SSH. Utiliza el comando cat /etc/odbcinst.ini
para ello:
[FreeTDS]
Description = ODBC for FreeTDS
Driver = /usr/lib64/libtdsodbc.so
Setup = /usr/lib64/libtdsS.so.2
Driver64 = /usr/lib64/libtdsodbc.so
Setup64 = /usr/lib64/libtdsS.so.2
FileUsage = 1
No necesitas hacer ningún cambio en este archivo. Sólo comprueba si existe y tiene datos. Si no encuentras este archivo, o está vacío, contáctenos.
Paso 2 - Crear un archivo .odbc.ini
Accede al gestor de archivos de tu web, y selecciona la opción de acceder a todos los archivos de tu plan de hosting:
De esta forma, aterrizarás en el directorio raíz de tu plan de hosting. Aquí, crea un archivo .odbc.ini
:
Añade el siguiente texto dentro del archivo:
[mssql_odbc]
Description = MSSQL Server
Driver = FreeTDS
Database = username_databasename
Server = mssql.database.servername.tld
Port = 1433
Sustituye lo siguiente como se indica a continuación:
username_database
—insertar el nombre de la base de datos del servidor SQL que se va a utilizar.mssql.database.servername.tld
— introduzca el nombre de host o la dirección IP del servidor al que desea conectarse1433
— introduzca el puerto que utilizará para la conexión MSSQL; cambie este número sólo si su puerto por defecto no es1433
.
Guarda los cambios:
Paso 3 - Buscar las extensiones PHP necesarias
Asegúrate de que las siguientes extensiones están habilitadas en los ajustes de configuración de PHP de su sitio web:
odbc
pdo_odbc
Paso 4 - Pruebe la conexión
Por último, prueba la conexión utilizando la siguiente línea de código:
$dbh = new PDO("odbc:mssql_odbc", "%DB_USER%", "%DB_PASS%");
Si todo está configurado correctamente, la conexión se realizará con éxito.
Qué hacer si se le pide que instale el controlador ODBC
Si obtienes el siguiente error
This extension requires the Microsoft ODBC Driver for SQL Server.
Access the following URL to download the ODBC Driver for SQL Server for x64: https://go.microsoft.com/fwlink/?LinkId=163712
Significa que tu script no está utilizando la función PDO
.
Por el momento, sólo es posible realizar conexiones a servidores SQL usando la función PDO
para PHP. Otras extensiones, como sqlsrv
y similares fallarán ya que no usan configuraciones del fichero .odbc.ini
.