如何在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. java——修改txt文件中某一行的内容

    今天无意间看到java.io中有一个类:RandomAccessFile,可以在文件的任意位置进行读写操作,想到我之前写的一个小项目,想在txt中修改某一行的内容,都是从头遍历txt文件,修改这一行的 ...

  2. ES6数组新增方法总结

    关于数组中forEach() .map().filter().reduce().some().every()的总结 let arr = [1, 2, 3, 4, 5] // forEach遍历数组 a ...

  3. JS判断所有IE浏览器所有版本

    原来判断IE浏览器版本很简单,但是随着版本的升级,navigator.userAgent显示的信息也不一样:下图是IE11显示的信息

  4. javascript获取浏览器高度与宽度信息

    网页可见区域宽:document.body.clientWidth网页可见区域高:document.body.clientHeight网页可见区域宽:document.body.offsetWidth ...

  5. leetcode 175 Combine Two Tables join用法

    https://leetcode.com/problemset/database/ ACM退役,刚好要学sql,一定要刷题才行,leetcode吧. 这一题,说了两个表,一个左一个右吧,左边的pers ...

  6. Python 的命名空间

    Python命名空间的本质: 一.命名空间的定义: 二.命名空间的查找顺序: 三.命名空间的生命周期: 四.通过locals()和globals() BIF访问命名空间. 重点是第四部分,我们将在此部 ...

  7. Java实现中文词频统计

    昨日有个中文词频统计的需求, 百度一番后, 发现一大堆标题党文章, 讲的与内容严重不符, 这里就简单记录下自己实现的流程吧! 与英文单词的词频统计不同, 中文的难点在于如何分词, 不过好在有许多优秀的 ...

  8. 【密码学】CSP的概念

    CSP加密服务提供者(Cryptographic Service Provider)具有一下几个特点: CSP是真正执行密码运算的独立模块 物理上一个CSP由两部分组成:一个动态连接库,一个签名文件 ...

  9. ubuntu下mysql安装(server、client、dev),开启、停止和重启,及常见错误

    转自:ubuntu下mysql安装(server.client.dev),开启.停止和重启,及常见错误 1. 在ubuntu下安装server和client很简单: (1)安装server apt-g ...

  10. MVC HtmlHelper listbox用法

    主要实现MVC listbox左右移动,搜索左边用户 controller   List<userinfo> lstUserInfo = new List<userinfo>( ...