Ändern der Standardversion der Runtime der R- oder Python-Programmiersprache
Applies to: SQL Server 2016 (13.x) SQL Server 2017 (14.x)
In diesem Artikel wird beschrieben, wie Sie die Standardversion von R oder Python ändern können, die in SQL Server 2016 R Services oder SQL Server 2017 Machine Learning Services verwendet wird.
Im Folgenden sind die Versionen der R- und Python-Runtime aufgeführt, die in den verschiedenen SQL Server-Versionen enthalten sind.
SQL Server-Version | Dienst | Kumulatives Update | Versionen der R-Runtime | Version der Python-Runtime |
---|---|---|---|---|
SQL Server 2016 | R Services | RTM – SP2 CU13 | 3.2.2 | Nicht verfügbar |
SQL Server 2016 | R Services | SP2 CU14 und höher | 3.2.2 und 3.5.2 | Nicht verfügbar |
SQL Server 2017 | Machine Learning Services | RTM – CU21 | 3.3.3 | 3.5.2 |
SQL Server 2017 | Machine Learning Services | CU22 und höher | 3.3.3 und 3.5.2 | 3.5.2 und 3.7.2 |
Voraussetzungen
Sie müssen ein kumulatives Update (CU) installieren, um die Standardversion der R- oder Python-Runtime zu ändern:
- SQL Server 2016: Kumulatives Update (CU) 14 oder höher für das Services Pack (SP) 2
- SQL Server 2017: Kumulatives Update (CU) 22 oder höher
Informationen zum Herunterladen des aktuellen kumulativen Updates finden Sie in den Neueste Updates für Microsoft SQL Server.
Hinweis
Wenn Sie eine Slipstreaminstallation für das kumulative Update bei einer Neuinstallation von SQL Server durchführen, werden nur die neuesten Versionen der R- und Python-Runtime installiert.
Ändern der Version der R-Runtime
Wenn Sie eines der oben genannten kumulativen Updates für SQL Server 2016 oder 2017 installiert haben, verfügen Sie möglicherweise über mehrere Versionen von R in einer SQL-Instanz. Jede Version ist in einem Unterordner des Instanzordners namens R_SERVICES.
<Hauptversion> . <Nebenversion> enthalten (der Ordner aus der ursprünglichen Installation darf keine Versionsnummer an den Ordnernamen anfügen).
Wenn Sie ein kumulatives Update mit R 3.5 installieren, ist der neue Ordner 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
Jede SQL-Instanz verwendet eine dieser Versionen als Standardversion von R. Sie können die Standardversion mithilfe des Befehlszeilen-Hilfsprogramms RegisterRext.exe ändern. Das Hilfsprogramm befindet sich in jeder SQL-Instanz unter dem R-Ordner:
<SQL-Instanzpfad> \R_SERVICES.n.n\library\RevoScaleR\rxLibs\x64\RegisterRext.exe
Hinweis
Die in diesem Artikel beschriebene Funktionalität ist nur mit der in kumulativen SQL-Updates enthaltenen Kopie von RegisterRext.exe verfügbar. Verwenden Sie nicht die Kopie, die mit der ursprünglichen SQL-Installation bereitgestellt wurde.
Übergeben Sie zum Ändern der Version der R-Runtime die folgenden Befehlszeilenargumente an RegisterRext.exe:
/configure
– Erforderlich und gibt an, dass Sie die R-Standardversion konfigurieren./instance:
<Instanzname> – Optional. Dies ist die zu konfigurierende Instanz. Wenn nicht angegeben, wird die Standardinstanz konfiguriert./rhome:
<Pfad zum Ordner R_SERVICES[n.n]> – Optional. Der Pfad zum Ordner der Runtimeversion, den Sie als R-Standardversion festlegen möchten.Wenn Sie „/rhome“ nicht angeben, ist der konfigurierte Pfad der Pfad, unter dem sich RegisterRext.exe befindet.
Beispiele
Nachfolgend finden Sie Beispiele für die Änderung der Version der R-Runtime in SQL Server 2016 und 2017.
Ändern der Version der R-Runtime in SQL Server 2016
So konfigurieren Sie z. B. R 3.5 als Standardversion von R für die Instanz MSSQLSERVER01 unter 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
Ändern der Version der R-Runtime in SQL Server 2017
So konfigurieren Sie z. B. R 3.5 als Standardversion von R für die Instanz MSSQLSERVER01 unter 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 diesen Beispielen müssen Sie das Argument /rhome
nicht angeben, da Sie denselben Ordner angeben, in dem sich RegisterRext.exe befindet.
Ändern der Version der Python-Runtime
Wenn Sie CU22 oder höher für SQL Server 2017 installiert haben, verfügen Sie möglicherweise über mehrere Versionen von Python in einer SQL-Instanz. Jede Version ist in einem Unterordner des Instanzordners namens PYTHON_SERVICES.
<Hauptversion> . <Nebenversion> enthalten (der Ordner aus der ursprünglichen Installation darf keine Versionsnummer an den Ordnernamen anfügen).
Wenn Sie z. B. ein kumulatives Update mit Python 3.7 installieren, wird ein neuer Ordner PYTHON_SERVICES
erstellt:
C:\Program Files\Microsoft SQL Server\MSSQL14.<INSTANCE_NAME>\PYTHON_SERVICES.3.7
Jede SQL-Instanz verwendet eine dieser Versionen als Standardversion von Python. Sie können die Standardversion mithilfe des Befehlszeilen-Hilfsprogramms RegisterRext.exe ändern. Das Hilfsprogramm befindet sich in jeder SQL-Instanz unter den Python-Ordnern:
<SQL-Instanzpfad>\PYTHON_SERVICES.n.n\Lib\site-packages\revoscalepy\rxLibs\RegisterRExt.exe
Hinweis
Die in diesem Artikel beschriebene Funktionalität ist nur mit der in kumulativen SQL-Updates enthaltenen Kopie von RegisterRext.exe verfügbar. Verwenden Sie nicht die Kopie, die mit der ursprünglichen SQL-Installation bereitgestellt wurde.
Übergeben Sie zum Ändern der Version der Python-Runtime die folgenden Befehlszeilenargumente an RegisterRext.exe:
/configure
– Erforderlich und gibt an, dass Sie die Python-Standardversion konfigurieren./python
– Gibt an, dass Sie die Python-Standardversion konfigurieren. Optional, wenn Sie/pythonhome
angeben./instance:
<Instanzname> – Optional. Dies ist die zu konfigurierende Instanz. Wenn nicht angegeben, wird die Standardinstanz konfiguriert./pythonhome:
<Pfad zum Ordner PYTHON_SERVICES[n.n]> – Optional. Der Pfad zum Ordner der Runtimeversion, den Sie als Python-Standardversion festlegen möchten.Wenn Sie „/pythonhome“ nicht angeben, ist der konfigurierte Pfad der Pfad, unter dem sich RegisterRext.exe befindet.
Beispiel
So konfigurieren Sie z. B. Python 3.7 als Standardversion von Python für die Instanz MSSQLSERVER01 unter 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 diesem Beispiel müssen Sie das Argument /pythonhome
nicht angeben, da Sie denselben Ordner angeben, in dem sich RegisterRext.exe befindet.
Entfernen einer Runtimeversion
Um eine Version von R oder Python zu entfernen, verwenden Sie RegisterRext.exe mit dem /cleanup
-Befehlszeilenargument, wobei Sie dieselben /rhome
-, /pythonhome
- und /instance
-Argumente verwenden, die zuvor beschrieben wurden.
Wenn Sie z. B. den Ordner R 3.2 aus der Instanz MSSQLSERVER01 entfernen möchten:
.\RegisterRext.exe /cleanup /rhome:"C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER01\R_SERVICES" /instance:MSSQLSERVER01
Wenn Sie z. B. den Ordner Python 3.7 aus der Instanz MSSQLSERVER01 entfernen möchten:
.\RegisterRExt.exe /cleanup /python /pythonhome:"C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER01\PYTHON_SERVICES.3.7" /instance:MSSQLSERVER01
RegisterRext.exe fordert Sie auf, die Bereinigung der angegebenen R-Runtime zu bestätigen:
Sind Sie sicher, dass Sie die angegebene Runtime zusammen mit allen darauf installierten Paketen dauerhaft löschen möchten? [Ja(J)/Nein(N)/Standard(Ja)]:
Um zu bestätigen, antworten Sie mit Y
, oder drücken Sie die EINGABETASTE. Alternativ können Sie diese Aufforderung überspringen, indem Sie /y
oder /Yes
mit der Option /cleanup
eingeben.
Hinweis
Sie können eine Version nur entfernen, wenn sie nicht als Standard konfiguriert ist und derzeit nicht zum Ausführen von RegisterRext.exe verwendet wird.