sqlserver安装显示句柄无效_Sqlserver 2016 R Service环境安装的各种错误(坑)解决办法...
相信很多朋友都會慕名Sqlserver 2016的R語言功能,將自己的數(shù)據(jù)庫升級到Sqlserver 2016,但是當(dāng)你安裝完Sqlserver 2016的R語言組件之后,你會發(fā)現(xiàn)并不能直接使用,比如當(dāng)你在SSMS中執(zhí)行下面這段測試R語言命令的時候,Sqlserver 2016會各種報錯。。。
exec sp_execute_external_script @language =N'R',@script=N'OutputDataSet
with result sets (([hello] int not null));go
本人也是折騰了好久最終才成功在Sqlserver 2016中執(zhí)行了R語言。
首先如果你要啟用Sqlserver的R語言功能,必須要啟動Sqlserver的兩個服務(wù):
1.Sqlserver實(shí)例數(shù)據(jù)庫引擎服務(wù):
2.Sqlserver實(shí)例SQL Server Lanuchpad服務(wù):
啟動這兩個服務(wù)之后,還要在SSMS中執(zhí)行下面這段SQL腳本,才能在Sqlserver中開啟執(zhí)行外部腳本(R語言)的功能。注意執(zhí)行完這段腳本后要重啟數(shù)據(jù)庫引擎服務(wù)和SQL Server Lanuchpad服務(wù)才會正式生效:
Exec sp_configure 'external scripts enabled', 1;reconfigure;
如果你在安裝Sqlserver 2016的時候,安裝路徑中如果出現(xiàn)了空格,那么恭喜你。。。你還需要修改一個系統(tǒng)配置文件,否者Sqlserver 2016 的R語言運(yùn)行時會報錯。。。
比如我安裝Sqlserver 2016的時候安裝路徑為D:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER
那么找到文件D:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn\rlauncher.config
使用操作系統(tǒng)管理員權(quán)限啟動記事本(notepad),打開rlauncher.config,找到WORKING_DIRECTORY這一項修改為一個不帶空格的文件夾路徑,這里我使用了自定義的一個文件夾D:\RWorkspace
將D:\RWorkspace賦予windows用戶everyone的完全控制權(quán)限(看到有文章說其實(shí)是要給這個文件夾賦予SQL Server Lanuchpad服務(wù)的執(zhí)行賬戶的完全控制權(quán)限,但是由于我沒有在系統(tǒng)中找到SQL Server Lanuchpad服務(wù)的執(zhí)行賬戶,所以這里就賦予了用戶everyone的完全控制權(quán)限):
然后以管理員身份啟動命令行工具CMD,定位到文件夾D:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\R_SERVICES\library\RevoScaleR\rxLibs\x64
執(zhí)行CMD命令:
registerRext.exe /uninstall
結(jié)果如下:
再執(zhí)行CMD命令:
registerRext.exe /install
結(jié)果如下:
再次在SSMS中執(zhí)行上面的測試R語言命令:
exec sp_execute_external_script @language =N'R',
@script=N'OutputDataSet
@input_data_1 =N'select 1 as hello'
with result sets (([hello] int not null));
go
結(jié)果如下,R語言模塊成功運(yùn)行!
但是由于執(zhí)行了registerRext.exe /uninstall和registerRext.exe /install,我發(fā)現(xiàn)這兩個命令其實(shí)最終會將rlauncher.config文件中WORKING_DIRECTORY的路徑更改為D:\SQL-mssqlserver-ExtensibilityData,如下圖所示:
所以前面我們修改rlauncher.config中配置文件和給文件夾D:\RWorkspace賦予everyone完全控制權(quán)限的步驟可能是多余的,但是最終目的反正就是不能讓rlauncher.config文件中WORKING_DIRECTORY的路徑包含空格,否者Sqlserver 2016的R語言運(yùn)行時會報錯,這一點(diǎn)必須要注意。
好了R語言服務(wù)終于可以成功使用了,接下來就可以探究Sqlserver R語言的奧妙之處了!
總結(jié)
以上是生活随笔為你收集整理的sqlserver安装显示句柄无效_Sqlserver 2016 R Service环境安装的各种错误(坑)解决办法...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kali查看共享 linux_在Linu
- 下一篇: 天猫精灵怎么用(天刀手游官网)