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 Pembelajaran Mesin Server (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 di SQL Server, Anda dapat menggunakan perintah RevoScaleR pada klien untuk menginstal paket di 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 di SQL Server, gunakan utilitas baris perintah RegisterRExt.exe, yang disertakan dengan paket RevoScaleR .
Mengaktifkan fitur ini adalah proses dua langkah, yang 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 multipel: Anda menghapus paket dan izin tingkat database (sekali per database), lalu menghapus peran dari server (sekali per instans).
Mengaktifkan manajemen paket
Di 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
.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 di 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
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
danrpkgs-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
Ulangi perintah untuk setiap database tempat paket harus diinstal.
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
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.
Ulangi perintah ini pada setiap database tempat manajemen paket digunakan.
(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.