如何在linux服务器部署Rstudio server,配置ODBC后通过RODBC包远程访问SQL server

背景介绍:之前写过一篇文章,提到近期要部署Rstudio server(搭建数据分析团队的分析环境),花了一个星期,搭好了。还YY过给这个亲生的儿子起个装逼的名字呢,莫扎特,巴赫什么的,并YY出以下场景{Jenny ,你把模型扔到莫扎特上跑一版最新结果出来。。。啊哈是不是特有逼格。。哦哈哈。。。}我是部署的Rstudio server,这个是免费的,但是Rstudio sererv pro 是收费的,两者有什么区别,见官网说明

部署前提:

需要有以下前提:

1.需要一台linux服务器(centOS,版本是6.5,64位,4核,16G内存)

2.在PC上装secureCRT用于远程连接Linux服务器。(SecureCRT是一款支持SSH的终端仿真程序,简单的说是Windows下登录UNIX或Linux服务器主机的软件)

3.Rstudio server如何部署。(官方部署帮助文档)

下载并安装包:

帮助文档给了一个EPEL链接(EPEL:Extra Packages for Enterprise Linux),登陆到linux服务器,用root权限下载包。(wget命令下载)

找到符合你服务器版本的包下载,R还有Rstudio server的安装包都在里面,还有一些常用的Rstudio 公司开发的R包例如ggplot2,dplyr等也都包含在内。下载后安装,用‘rpm -ivh’命令安装你下载的包,会提示你是否安装所有150个包,选择是,然后就完成安装了。

装Rstudio server基本没什么坑,不到两个小时就装完了。

装完之后直接可以访问了就例如你在浏览器输入:172.31.127.136:8787就可以直接跳转到Rstudio server登录页面,172.31.127.136是你的linux服务器IP,8787是Rstudio server端口号,(类似的SQL server端口号是1433,Tableau server端口号是8000,Hue端口号是8888)

创建用户:

接下来就是创建用户了,有一篇文章张丹老师写的多人在线协作R开发RStudio Server先是创建一个用户组,然后往这个组里面添加成员就可以了,贴一下他的代码:

~ sudo groupadd hadoop
~ sudo useradd hadoop -g hadoop;
~ sudo passwd hadoop
~ sudo adduser hadoop sudo
~ sudo mkdir /home/hadoop
~ sudo chown -R hadoop:hadoop /home/hadoop

有兴趣的同学可直接阅读原文。

在Linux上配置ODBC:

整个部署过程遇到的最大的坑是:如何在Rstudio server访问另一台win服务器上的SQL server数据库。用了3,4天搞定。

解决这个问题的方法是在Linux服务器上配置ODBC,通过RODBC包访问SQL server数据库,问过同事有没有一些经验提供给我,当我说在Linux配置ODBC他们都很诧异,他们都说,为啥不配置JDBC呢。。。

无果,于是自己在网上搜索各种文档,功夫不负有心人,找到一篇关键性的文章在Linux上配置unixODBC和FreeTDS访问MS SQL Server

总的来说是

安装两个东西:1.安装 unixODBC;2.安装 FreeTDS;

修改三个文件的参数:分别是odbcinst.ini;freetds.conf; odbc.ini;至于如何具体如何操作请参考在Linux上配置unixODBC和FreeTDS访问MS SQL Server

如果是通过win系统的PC访问SQL server,配置ODBC是非常简单的。(两种认证方式,一种是NT,一种是账户名+密码,两种方法都很方便)

在Linux服务器上的Rstudio server是通过户名+密码访问数据库。

#---------

unixODBC 提供了Linux 对ODBC 的支持,但它只是一个 ODBC的管理器, 要连接实际的数据库还得提供这种数据库的 ODBC 驱动.

FreeTDS就是Linux 下 用于连接MS SQL Server 和 Sybase 的免费ODBC 驱动
注意, 必须先装 unixODBC, 再装 freetds

#---------

总结:

不经常用Linux命令,什么命令不会,就直接百度,像是爬虫时用正则的时候,直接百度现学就可以。

以上。

如何在linux服务器部署Rstudio server,配置ODBC远程访问win 服务器上的SQL server的更多相关文章

  1. SQL Server on Red Hat Enterprise Linux——RHEL上的SQL Server(全截图)

    本文从零开始一步一步介绍如何在Red Hat Enterprise Linux上搭建SQL Server 2017,包括安装系统.安装SQL等相关步骤和方法(仅供测试学习之用,基础篇). 一.   创 ...

  2. Linux 上的 SQL Server 2017 的安装指南

    一:介绍背景 微软在2016年 3 月首次对外宣布了 Linux 版的 SQL Server,并于2017年 7 月发布了首个公开 RC 版.前几日在美国奥兰多召开的微软 Ignite 2017 大会 ...

  3. 在Red Hat Enterprise Linux 7.3上安装SQL Server 2017

    必要条件: 1.在此快速安装过程中,您需要安装SQL Server 2017或SQL Server 2019上Red Hat Enterprise Linux (RHEL) 7.3 +.然后使用sql ...

  4. 开始使用 Docker (Linux 上运行 SQL Server) 上的 SQL Server 容器 - SQL Server | Microsoft Docs

    原文:开始使用 Docker (Linux 上运行 SQL Server) 上的 SQL Server 容器 - SQL Server | Microsoft Docs 快速入门:使用 Docker ...

  5. Linux上的SQL Server的起步

    我们知道,几个星期前,微软发布了在Linux上直接运行的SQL Server第一个公开CTP版本!因此,对我来说,是时候跨界在Linux上安装我的第一个SQL安装,这样的话,我就可以在Linux上折腾 ...

  6. 连接到 Azure 上的 SQL Server 虚拟机(经典部署)

    概述 本主题介绍如何连接到运行于 Azure 虚拟机的 SQL Server 实例. 它介绍了一些常规连接方案,并提供了在 Azure VM 中配置 SQL Server 连接的详细步骤. Impor ...

  7. 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连

    在建立与服务器的连接时出错.在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连 sql server服务器sqlserver远程连接数据库防火墙在建立 ...

  8. Win 2008 R2安装SQL Server 2008“性能计数器注册表配置单元一致性”失败的解决办法

    Win 2008 R2安装SQL Server 2008“性能计数器注册表配置单元一致性”失败的解决办法(2011-02-23 19:37:32) 转载▼   今天在惠普服务器上安装数据库2008时, ...

  9. 如何在64位系统上安装SQL Server 2000

    如何在64位系统上安装SQL Server 2000? 现在用SQL Server 2000数据库的人少了吧?大都是SQL Server 2005/2008了.不过还是有需求的,今天一朋友就让我在他的 ...

随机推荐

  1. set与map

    set /*set里面没有相同的元素 所以可以用于数组去重*/ //内部去重用的是=== 对象不等 但是 NaN等 //其本身是构造函数 let s=new Set([1,2,{},{},3,4,Na ...

  2. yii2下的路由重写

    1.在config/main.php中添加配置信息 文件位置如图所示(图中展示的是backend下的config,也可以在fronted和common的config中添加) 配置的代码标准格式如下 ' ...

  3. robotFramework 读取Excel文件

    1.Robotframework读取Excel文件 第一步:先安装ExcelLibrary 可以直接通过命令安装:pip install robotframework-ExcelLibrary 安装完 ...

  4. spring MVC设置不拦截静态资源

    问题产生: 因为我们在web.xml中写了 拦截所有请求,当然包括了静态资源,所以页面需要引用css或js的话,该请求也会被拦截,例如: 在style.css中写一个简单样式,加个背景颜色  body ...

  5. pthread_cond_wait函数的学习以及其他

    pthread_cond_wait() 前使用 while 讲解2009-10-27 9:33LINUX环境下多线程编程肯定会遇到需要条件变量的情况,此时必然要使用pthread_cond_wait( ...

  6. Django权限1

    1.权限,说白了就是你有资格访问这个网址,而别人每一资格:你有资格进行增删改查,而别人只有查的权限 2.新建是3张表: #用户表 class User(models.Model): name = mo ...

  7. Json的访问

    JSON:JavaScript 对象表示法(JavaScript Object Notation) 写法:名称/值对 访问方法:可以通过 data.名称 访问,也可以通过 data['名称'] 访问 ...

  8. HDU 5336——XYZ and Drops——————【广搜BFS】

    XYZ and Drops Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tot ...

  9. Devexpress Xtrareport 并排报表

    什么是并排报表呢? 按照我个人理解:并排报表是把两张或者两张以上的报表,放在一个报表页面. 注:为了方便,本示例使用同一个数据源,但是您可以使用相同的方法,而在一个报表文档中显示两个完全不同的 (使用 ...

  10. windows常用命令行总结

    cmd下的命令行 1.查看当前目录下的子目录 dir   或 dir /b 类似Linux 下的  ls 或者 ls -l 2.盘符切换  d: 3.进入目录 cd [目录名] 退一个目录 cd .. ...