Udostępnij przez


Włączanie lub wyłączanie zdalnego zarządzania pakietami dla programu SQL Server

Dotyczy: SQL Server 2016 (13.x) SQL Server 2017 (14.x)

Ważny

Obsługa serwera Machine Learning Server (wcześniej znanego jako R Server) zakończyła się 1 lipca 2022 r. Aby uzyskać więcej informacji, zobacz Co się dzieje z serwerem Machine Learning Server?

W tym artykule opisano sposób włączania zdalnego zarządzania pakietami języka R z klienckiej stacji roboczej lub innego serwera Machine Learning Server. Po włączeniu funkcji zarządzania pakietami w programie SQL Server można użyć poleceń RevoScaleR na kliencie, aby zainstalować pakiety w programie SQL Server.

Domyślnie funkcja zarządzania pakietami zewnętrznymi dla programu SQL Server jest wyłączona. Aby włączyć funkcję zgodnie z opisem w następnej sekcji, należy uruchomić oddzielny skrypt.

Omówienie procesów i narzędzi

Aby włączyć lub wyłączyć zarządzanie pakietami w programie SQL Server, użyj narzędzia wiersza polecenia RegisterRExt.exe, który jest dołączony do pakietu RevoScaleR.

Włączenie tej funkcji jest procesem dwuetapowym, wymagającym administratora bazy danych: włącz zarządzanie pakietami na instancji SQL Server (raz na instancję), a następnie włącz zarządzanie pakietami w bazie danych SQL (raz na bazę danych).

Wyłączenie funkcji zarządzania pakietami wymaga również wielu kroków: usuwasz pakiety i uprawnienia na poziomie bazy danych (raz na bazę danych), a następnie usuwasz role z serwera (raz na wystąpienie).

Włączanie zarządzania pakietami

  1. W programie SQL Server otwórz wiersz polecenia z podwyższonym poziomem uprawnień i przejdź do folderu zawierającego narzędzie RegisterRExt.exe. Domyślna lokalizacja to <SQLInstancePath>\R_SERVICES\library\RevoScaleR\rxLibs\x64\RegisterRExe.exe.

  2. Uruchom następujące polecenie, podając odpowiednie argumenty dla środowiska:

    RegisterRExt.exe /install pkgmgmt [/instance:name] [/user:username] [/password:*|password]

    To polecenie tworzy obiekty na poziomie wystąpienia na komputerze z programem SQL Server, które są wymagane do zarządzania pakietami. Powoduje to również ponowne uruchomienie Launchpada dla wystąpienia.

    Jeśli nie określisz wystąpienia, zostanie użyte wystąpienie domyślne. Jeśli nie określisz użytkownika, zostanie użyty bieżący kontekst zabezpieczeń. Na przykład następujące polecenie umożliwia zarządzanie pakietami w wystąpieniu domyślnym przy użyciu poświadczeń użytkownika, który otworzył wiersz polecenia:

    REgisterRExt.exe /install pkgmgmt

  3. Aby dodać zarządzanie pakietami do określonej bazy danych, uruchom następujące polecenie w wierszu polecenia z podwyższonym poziomem uprawnień:

    RegisterRExt.exe /install pkgmgmt /database:databasename [/instance:name] [/user:username] [/password:*|password]

    To polecenie tworzy niektóre artefakty bazy danych, w tym następujące role bazy danych używane do kontrolowania uprawnień użytkownika: rpkgs-users, rpkgs-privatei rpkgs-shared.

    Na przykład następujące polecenie umożliwia zarządzanie pakietami w bazie danych w wystąpieniu domyślnym. Jeśli nie określisz użytkownika, zostanie użyty bieżący kontekst zabezpieczeń.

    RegisterRExt.exe /install pkgmgmt /database:TestDB

  4. Powtórz polecenie dla każdej bazy danych, w której należy zainstalować pakiety.

  5. Aby sprawdzić, czy nowe role zostały pomyślnie utworzone, w programie SQL Server Management Studio kliknij bazę danych, rozwiń węzeł Zabezpieczeniai rozwiń węzeł Role bazy danych.

    Możesz również uruchomić zapytanie na sys.database_principals, takie jak:

    SELECT pr.principal_id, pr.name, pr.type_desc,   
        pr.authentication_type_desc, pe.state_desc,   
        pe.permission_name, s.name + '.' + o.name AS ObjectName  
    FROM sys.database_principals AS pr  
    JOIN sys.database_permissions AS pe  
        ON pe.grantee_principal_id = pr.principal_id  
    JOIN sys.objects AS o  
        ON pe.major_id = o.object_id  
    JOIN sys.schemas AS s  
        ON o.schema_id = s.schema_id;
    

Po włączeniu tej funkcji można użyć funkcji RevoScaleR do zainstalowania lub odinstalowania pakietów ze zdalnego klienta języka R.

Wyłączanie zarządzania pakietami

  1. W wierszu polecenia z podwyższonym poziomem uprawnień uruchom ponownie narzędzie RegisterRExt i wyłącz zarządzanie pakietami na poziomie bazy danych:

    RegisterRExt.exe /uninstall pkgmgmt /database:databasename [/instance:name] [/user:username] [/password:*|password]

    To polecenie usuwa obiekty bazy danych związane z zarządzaniem pakietami z określonej bazy danych. Usuwa również wszystkie pakiety zainstalowane z zabezpieczonej lokalizacji systemu plików na komputerze z programem SQL Server.

  2. Powtórz to polecenie w każdej bazie danych, w której użyto zarządzania pakietami.

  3. (Opcjonalnie) Po wyczyszczonej wszystkich baz danych pakietów przy użyciu poprzedniego kroku uruchom następujące polecenie w wierszu polecenia z podwyższonym poziomem uprawnień:

    RegisterRExt.exe /uninstall pkgmgmt [/instance:name] [/user:username] [/password:*|password]

    To polecenie usuwa funkcję zarządzania pakietami z wystąpienia. Aby zobaczyć zmiany, może być konieczne ręczne ponowne uruchomienie usługi Launchpad.

Następne kroki