Mengaktifkan atau menonaktifkan manajemen paket jarak jauh untuk SQL Server

Berlaku untuk: SQL Server 2016 (13.x) SQL Server 2017 (14.x)

Penting

Dukungan untuk Server Pembelajaran Mesin (sebelumnya dikenal sebagai R Server) berakhir pada 1 Juli 2022. Untuk informasi selengkapnya, lihat Apa yang terjadi pada Server Pembelajaran Mesin?

Artikel ini menjelaskan cara mengaktifkan manajemen jarak jauh paket R dari stasiun kerja klien atau Server Pembelajaran Mesin yang berbeda. Setelah fitur manajemen paket diaktifkan pada SQL Server, Anda dapat menggunakan perintah RevoScaleR pada klien untuk menginstal paket pada SQL Server.

Secara default, fitur manajemen paket eksternal untuk SQL Server dinonaktifkan. Anda harus menjalankan skrip terpisah untuk mengaktifkan fitur seperti yang dijelaskan di bagian berikutnya.

Gambaran umum proses dan alat

Untuk mengaktifkan atau menonaktifkan manajemen paket pada SQL Server, gunakan utilitas baris perintah RegisterRExt.exe, yang disertakan dengan paket RevoScaleR.

Mengaktifkan fitur ini adalah proses dua langkah, memerlukan administrator database: Anda mengaktifkan manajemen paket pada instans SQL Server (sekali per instans SQL Server), lalu mengaktifkan manajemen paket pada database SQL (sekali per database SQL Server).

Menonaktifkan fitur manajemen paket juga memerlukan langkah-langkah multipel: Anda menghapus paket dan izin tingkat database (sekali per database), lalu menghapus peran dari server (sekali per instans).

Mengaktifkan manajemen paket

  1. Pada SQL Server, buka prompt perintah yang ditingkatkan dan navigasikan ke folder yang berisi utilitas, RegisterRExt.exe. Lokasi default adalah <SQLInstancePath>\R_SERVICES\library\RevoScaleR\rxLibs\x64\RegisterRExe.exe.

  2. Jalankan perintah berikut, berikan argumen yang sesuai untuk lingkungan Anda:

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

    Perintah ini membuat objek tingkat instans pada komputer SQL Server yang diperlukan untuk manajemen paket. Ini juga menghidupkan ulang Launchpad untuk instans.

    Jika Anda tidak menentukan instans, instans default akan digunakan. Jika Anda tidak menentukan pengguna, konteks keamanan saat ini akan digunakan. Misalnya, perintah berikut memungkinkan manajemen paket pada instans default, menggunakan kredensial pengguna yang membuka prompt perintah:

    REgisterRExt.exe /install pkgmgmt

  3. Untuk menambahkan manajemen paket ke database tertentu, jalankan perintah berikut dari prompt perintah yang ditingkatkan:

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

    Perintah ini membuat beberapa artefak database, termasuk peran database berikut yang digunakan untuk mengontrol izin pengguna: rpkgs-users, rpkgs-private, dan rpkgs-shared.

    Misalnya, perintah berikut memungkinkan manajemen paket pada database, pada instans default. Jika Anda tidak menentukan pengguna, konteks keamanan saat ini akan digunakan.

    RegisterRExt.exe /install pkgmgmt /database:TestDB

  4. Ulangi perintah untuk setiap database tempat paket harus diinstal.

  5. Untuk memverifikasi bahwa peran baru telah berhasil dibuat, di SQL Server Management Studio, klik database, perluas Keamanan, dan perluas Peran Database.

    Anda juga bisa menjalankan kueri di sys.database_principals seperti berikut ini:

    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;
    

Setelah mengaktifkan fitur ini, Anda dapat menggunakan fungsi RevoScaleR untuk menginstal atau menghapus paket dari klien R jarak jauh.

Menonaktifkan manajemen paket

  1. Dari prompt perintah yang ditinggikan, jalankan utilitas RegisterRExt lagi, dan nonaktifkan manajemen paket di tingkat database:

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

    Perintah ini menghapus objek database yang terkait dengan manajemen paket dari database yang ditentukan. Ini juga menghapus semua paket yang diinstal dari lokasi sistem file aman di komputer SQL Server.

  2. Ulangi perintah ini pada setiap database tempat manajemen paket digunakan.

  3. (Opsional) Setelah semua database dihapus dari paket menggunakan langkah sebelumnya, jalankan perintah berikut dari prompt perintah yang ditingkatkan:

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

    Perintah ini menghapus fitur manajemen paket dari instans. Anda mungkin perlu menghidupkan ulang layanan Launchpad secara manual sekali lagi untuk melihat perubahan.

Langkah berikutnya