Modificare la versione predefinita del runtime dei linguaggi R o Python
Si applica a: SQL Server 2016 (13.x) SQL Server 2017 (14.x)
Questo articolo descrive come modificare la versione predefinita di R o Python usata in R Services per SQL Server 2016 o SQL Server 2017 Machine Learning Services.
Di seguito sono elencate le versioni del runtime R e Python incluse nelle diverse versioni di SQL Server.
Versione di SQL Server | Service | Aggiornamento cumulativo | Versioni di runtime R | Versione runtime di Python |
---|---|---|---|---|
SQL Server 2016 | Servizi R | RTM - SP2 CU13 | 3.2.2 | Non disponibile |
SQL Server 2016 | Servizi R | SP2 CU14 e versioni successive | 3.2.2 e 3.5.2 | Non disponibile |
SQL Server 2017 | Machine Learning Services | RTM - CU21 | 3.3.3 | 3.5.2 |
SQL Server 2017 | Machine Learning Services | CU22 e versioni successive | 3.3.3 e 3.5.2 | 3.5.2 e 3.7.2 |
Prerequisiti
È necessario installare un aggiornamento cumulativo per modificare la versione predefinita del runtime del linguaggio R o Python:
- SQL Server 2016: Service Pack (SP) 2 aggiornamento cumulativo (CU) 14 o versione successiva
- SQL Server 2017: con aggiornamento cumulativo (CU) 22 o versione successiva
Per scaricare l'aggiornamento cumulativo più recente, vedere gli Aggiornamenti più recenti per Microsoft SQL Server.
Nota
Se l'aggiornamento cumulativo viene integrato con una nuova installazione di SQL Server, verranno installate solo le versioni più recenti del runtime R e Python.
Modificare la versione del runtime R
Se è stato installato uno degli aggiornamenti cumulativi precedenti per SQL Server 2016 o 2017, è possibile che siano presenti più versioni di R in un'istanza di SQL. Ogni versione è contenuta in una sottocartella della cartella dell'istanza con il nome R_SERVICES.
<major>.<minor> (la cartella dell'installazione originale potrebbe non avere un numero di versione aggiunto al nome della cartella).
Se si installa un aggiornamento cumulativo contenente R 3.5, la nuova cartella R_SERVICES
è:
- 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
Ogni istanza di SQL usa una di queste versioni come versione predefinita di R. È possibile modificare la versione predefinita usando l'utilità della riga di comando RegisterRext.exe. L'utilità si trova nella cartella R in ogni istanza di SQL:
<Percorso dell'istanza di SQL>\R_SERVICES.n.n\library\RevoScaleR\rxLibs\x64\RegisterRext.exe
Nota
La funzionalità descritta in questo articolo è disponibile solo con la copia di RegisterRext.exe inclusa negli aggiornamenti cumulativi di SQL. Non usare la copia fornita con l'installazione di SQL originale.
Per modificare la versione del runtime R, passare gli argomenti della riga di comando seguenti a RegisterRext.exe:
/configure
-obbligatorio, specifica che si sta configurando la versione di R predefinita./instance:
<nome istanza> - facoltativo, ovvero l'istanza che si desidera configurare. In assenza di specificazioni viene configurata l'istanza predefinita./rhome:
<percorso della cartella R_SERVICES[n.n] folder> - facoltativo, percorso alla cartella della versione di runtime che si desidera impostare come versione di R predefinita.Se non si specifica /rhome, il percorso configurato è il percorso in cui si trova RegisterRext.exe.
Esempi
Di seguito sono riportati alcuni esempi su come modificare la versione del runtime R in SQL Server 2016 e 2017.
Modificare la versione del runtime R in SQL Server 2016
Ad esempio, per configurare R 3.5 come versione predefinita di R per l'istanza MSSQLSERVER01 in 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
Modificare la versione del runtime R in SQL Server 2017
Ad esempio, per configurare R 3.5 come versione predefinita di R per l'istanza MSSQLSERVER01 in 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
In questi esempi non è necessario includere l'argomento /rhome
perché si sta specificando la stessa cartella in cui si trova RegisterRext.exe.
Modificare la versione runtime di Python
Se è stato installato CU22 o versione successiva per SQL Server 2017, è possibile che siano presenti più versioni di Python in un'istanza di SQL. Ogni versione è contenuta in una sottocartella della cartella dell'istanza con il nome PYTHON_SERVICES.
<major>.<minor> (la cartella dell'installazione originale potrebbe non avere un numero di versione aggiunto al nome della cartella).
Se ad esempio si installa un aggiornamento cumulativo contenente Python 3.7, viene creata una nuova cartella PYTHON_SERVICES
:
C:\Program Files\Microsoft SQL Server\MSSQL14.<INSTANCE_NAME>\PYTHON_SERVICES.3.7
Ogni istanza di SQL usa una di queste versioni come versione predefinita di Python. È possibile modificare la versione predefinita usando l'utilità della riga di comando RegisterRExt.exe. L'utilità si trova nella cartella Python in ogni istanza di SQL:
<Percorso dell'istanza SQL>\PYTHON_SERVICES.n.n\Lib\site-packages\revoscalepy\rxLibs\RegisterRExt.exe
Nota
La funzionalità descritta in questo articolo è disponibile solo con la copia di RegisterRExt.exe inclusa negli aggiornamenti cumulativi di SQL. Non usare la copia fornita con l'installazione di SQL originale.
Per modificare la versione del runtime Python, passare gli argomenti della riga di comando seguenti a RegisterRext.exe:
/configure
-obbligatorio, specifica che si sta configurando la versione di Python predefinita./python
-Specifica che si sta configurando la versione di Python predefinita. Facoltativo se si specifica/pythonhome
./instance:
<nome istanza> - facoltativo, ovvero l'istanza che si desidera configurare. In assenza di specificazioni viene configurata l'istanza predefinita./pythonhome:
<percorso della cartella PYTHON_SERVICES[n.n]> - Facoltativo, percorso della cartella della versione di runtime che si desidera impostare come versione di Python predefinita.Se non si specifica /pythonhome, il percorso configurato è il percorso in cui si trova RegisterRExt.exe.
Esempio
Ad esempio, per configurare Python 3.7 come versione predefinita di Python per l'istanza MSSQLSERVER01 in 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
In questo esempio non è necessario includere l'argomento /pythonhome
perché si sta specificando la stessa cartella in cui si trova RegisterRext.exe.
Rimuovere una versione del runtime
Per rimuovere una versione di R o Python, usare RegisterRExt.exe con l'argomento della riga di comando /cleanup
, usando gli stessi argomenti /rhome
, /pythonhome
e /instance
descritti in precedenza.
Ad esempio, per rimuovere la cartella R 3.2 dall'istanza MSSQLSERVER01:
.\RegisterRext.exe /cleanup /rhome:"C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER01\R_SERVICES" /instance:MSSQLSERVER01
Ad esempio, per rimuovere la cartella Python 3.7 dall'istanza MSSQLSERVER01:
.\RegisterRExt.exe /cleanup /python /pythonhome:"C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER01\PYTHON_SERVICES.3.7" /instance:MSSQLSERVER01
RegisterRext.exe chiederà di confermare la pulizia del runtime R specificato:
Eliminare definitivamente il runtime specificato insieme a tutti i pacchetti installati su di esso? [Yes(Y)/No(N)/Default(Yes)]:
Per confermare, rispondere Y
o premere INVIO. In alternativa, è possibile ignorare questa richiesta passando /y
o /Yes
lungo l'opzione /cleanup
.
Nota
È possibile rimuovere una versione solo se non è configurata come predefinita e non è attualmente usata per eseguire RegisterRext.exe.