Cambio de la versión predeterminada del entorno de ejecución del lenguaje R o Python

Se aplica a: SQL Server 2016 (13.x) SQL Server 2017 (14.x)

En este artículo se describe cómo cambiar la versión predeterminada de R o Python usada en SQL Server 2016 R Services o SQL Server 2017 Machine Learning Services.

A continuación se enumeran las versiones del entorno de ejecución de R y Python que se incluyen en las distintas versiones de SQL Server.

Versión de SQL Server Servicio Actualización acumulada Versiones del entorno de ejecución de R Versión del entorno de ejecución de Python
SQL Server 2016 R Services RTM - SP2 CU13 3.2.2 No disponible
SQL Server 2016 R Services SP2 CU14 y versiones posteriores 3.2.2 y 3.5.2 No disponible
SQL Server 2017 Machine Learning Services RTM - CU21 3.3.3 3.5.2
SQL Server 2017 Machine Learning Services CU22 y versiones posteriores 3.3.3 y 3.5.2 3.5.2 y 3.7.2

Requisitos previos

Debe instalar una actualización acumulativa (CU) para cambiar la versión predeterminada del entorno de ejecución del lenguaje R o Python:

  • SQL Server 2016: actualización acumulativa (CU) 14 de Service Pack (SP) 2 o posterior
  • SQL Server 2017: actualización acumulativa (CU) 22 o posterior

Para descargar la actualización acumulativa más reciente, consulte las últimas actualizaciones de Microsoft SQL Server.

Nota:

Si integra la actualización acumulativa con una nueva instalación de SQL Server, solo se instalarán las versiones más recientes del entorno de ejecución de R y Python.

Cambio de la versión del entorno de ejecución de R

Si ha instalado una de las actualizaciones acumulativas anteriores para SQL Server 2016 o 2017, puede tener varias versiones de R en una instancia de SQL. Cada versión se encuentra en una subcarpeta de la carpeta de la instancia con el nombre R_SERVICES.<major> . <minor> (es posible que la carpeta de la instalación original no tenga un número de versión anexado al nombre de la carpeta).

Si instala una CU que contiene R 3.5, la nueva carpeta R_SERVICES es:

  • SQL Server 2016: C:\Program Files\Microsoft SQL Server\MSSQL13.<INSTANCE_NAME>\R_SERVICES.3.5
  • SQL Server 2017: C:\Program Files\Microsoft SQL Server\MSSQL14.<INSTANCE_NAME>\R_SERVICES.3.5

Cada instancia de SQL usa una de estas versiones como versión predeterminada de R. Puede cambiar la versión predeterminada mediante la utilidad de línea de comandos RegisterRext.exe. La utilidad se encuentra en la carpeta R en cada instancia de SQL:

<Ruta de acceso de instancia de SQL> \R_SERVICES.n.n\library\RevoScaleR\rxLibs\x64\RegisterRext.exe

Nota:

La funcionalidad descrita en este artículo solo está disponible con la copia de RegisterRext.exe incluida en las CU de SQL. No use la copia incluida con la instalación de SQL original.

Para cambiar la versión del entorno de ejecución de R, pase los siguientes argumentos de la línea de comandos a RegisterRext.exe:

  • /configure -obligatorio, especifica que está configurando la versión predeterminada de R.

  • /instance:<nombre de instancia> : opcional, la instancia de que desea configurar. Si no se especifica, se configura la instancia predeterminada.

  • /rhome:<Ruta de acceso a la carpeta R_SERVICES[n.n]> : opcional, ruta de acceso a la carpeta de la versión del entorno de ejecución que desea establecer como la versión predeterminada de R.

    Si no especifica /rhome, la ruta de acceso configurada es la ruta de acceso en la que se encuentra RegisterRext.exe.

Ejemplos

A continuación se muestran ejemplos de cómo cambiar la versión del tiempo de ejecución de R en SQL Server 2016 y 2017.

Cambio de la versión del entorno de ejecución de R en SQL Server 2016

Por ejemplo, para configurar R 3.5 como la versión predeterminada de R para la instancia MSSQLSERVER01 en SQL Server 2016:

cd "C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER01\R_SERVICES.3.5\library\RevoScaleR\rxLibs\x64"

.\RegisterRext.exe /configure /rhome:"C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER01\R_SERVICES.3.5" /instance:MSSQLSERVER01

Cambio de la versión del entorno de ejecución de R en SQL Server 2017

Por ejemplo, para configurar R 3.5 como la versión predeterminada de R para la instancia MSSQLSERVER01 en SQL Server 2017:

cd "C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER01\R_SERVICES.3.5\library\RevoScaleR\rxLibs\x64"

.\RegisterRext.exe /configure /rhome:"C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER01\R_SERVICES.3.5" /instance:MSSQLSERVER01

En estos ejemplos, no es necesario incluir el argumento /rhome, ya que se está especificando la misma carpeta en la que se encuentra RegisterRext.exe.

Cambio de la versión del entorno de ejecución de Python

Si ha instalado CU22 o posterior para SQL Server 2017, puede tener varias versiones de Python en una instancia de SQL. Cada versión se encuentra en una subcarpeta de la carpeta de la instancia con el nombre PYTHON_SERVICES.<major> . <minor> (es posible que la carpeta de la instalación original no tenga un número de versión anexado al nombre de la carpeta).

Por ejemplo, si instala una CU que contiene Python 3.7, se crea una nueva carpeta PYTHON_SERVICES :

C:\Program Files\Microsoft SQL Server\MSSQL14.<INSTANCE_NAME>\PYTHON_SERVICES.3.7

Cada instancia de SQL usa una de estas versiones como la versión predeterminada de Python. Puede cambiar la versión predeterminada mediante la utilidad de la línea de comandos RegisterRExt.exe. La utilidad se encuentra en las carpetas de Python en cada instancia de SQL:

<Ruta de acceso de instancia de SQL>\PYTHON_SERVICES.n.n\Lib\site-packages\revoscalepy\rxLibs\RegisterRExt.exe

Nota:

La funcionalidad descrita en este artículo solo está disponible con la copia de RegisterRExt.exe incluida en las CU de SQL. No use la copia incluida con la instalación de SQL original.

Para cambiar la versión del entorno de ejecución de Python, pase los siguientes argumentos de la línea de comandos a RegisterRext.exe:

  • /configure -obligatorio, especifica que está configurando la versión predeterminada de Python.

  • /python: especifica que está configurando la versión predeterminada de Python. Opcional si se especifica /pythonhome.

  • /instance:<nombre de instancia> : opcional, la instancia de que desea configurar. Si no se especifica, se configura la instancia predeterminada.

  • /pythonhome:<Ruta de acceso a la carpeta PYTHON_SERVICES[n.n]> : opcional, ruta de acceso a la carpeta de la versión del entorno de ejecución que desea establecer como la versión predeterminada de Python.

    Si no especifica /pythonhome, la ruta de acceso configurada es la ruta de acceso en la que se encuentra RegisterRext.exe.

Ejemplo

Por ejemplo, para configurar Python 3.7 como versión predeterminada de Python para la instancia MSSQLSERVER01 en SQL Server 2017:

cd "C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER01\PYTHON_SERVICES.3.7\Lib\site-packages\revoscalepy\rxLibs"

.\RegisterRext.exe /configure /pythonhome:"C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\PYTHON_SERVICES.3.7" /instance:MSSQLSERVER01

En este ejemplo, no es necesario incluir el argumento /pythonhome, ya que se está especificando la misma carpeta en la que se encuentra RegisterRext.exe.

Eliminación de una versión del entorno de ejecución

Para quitar una versión de R o Python, use RegisterRExt.exe con el argumento de la línea de comandos /cleanup, utilizando los mismos argumentos /rhome, /pythonhomey /instance descritos anteriormente.

Por ejemplo, para quitar la carpeta R 3.2 de la instancia MSSQLSERVER01:

.\RegisterRext.exe /cleanup /rhome:"C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER01\R_SERVICES" /instance:MSSQLSERVER01

Por ejemplo, para quitar la carpeta Python 3.7 de la instancia MSSQLSERVER01:

.\RegisterRExt.exe /cleanup /python /pythonhome:"C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER01\PYTHON_SERVICES.3.7" /instance:MSSQLSERVER01

RegisterRext.exe le pedirá que confirme la limpieza del entorno de ejecución de R especificado:

¿Seguro que desea eliminar permanentemente el entorno de ejecución determinado junto con todos los paquetes instalados en él? [Sí(Y)/No(N)/Predeterminado(Sí)]:

Para confirmar, responda Y o presione Entrar. Como alternativa, puede omitir este mensaje pasando /y o /Yes junto con la opción /cleanup.

Nota:

Puede quitar una versión solo si no está configurada como predeterminada y no se usa actualmente para ejecutar RegisterRext.exe.

Pasos siguientes