sas share

Posted Anni爱摩天轮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sas share相关的知识,希望对你有一定的参考价值。

SAS /SHARE环境搭建指导

一、SAS(9.4)/SHARE 的使用背景

通过配置 SAS/SHARE,实现资源共享,方便协同工作和统一管理

二、SAS(9.4)/SHARE的环境配置指导

可从帮助文档中查看指导:

 

 

 

 

 

 

2.1配置SAS SCU(SAS Service Configuration Utility)

(1)从sas安装目录/utilities 中找到SAS(SCU) 即SAS 服务配置实用程序,进行相应的配置:

 

 

a). 选择安装选项卡 进行如下配置:

 服务名: SAS SHARE Server SHR_1

 显示名: SAS SHARE Server SHR_1

启动类型: 自动

服务路径(例如):

 D:\\Program Files\\SASHome\\SASFoundation\\9.4\\sas.exe  -noterminal

 -logparm "write=immediate" -sysin "D:\\shuoen\\share_new\\shr_1.sas"

-log "D:\\shuoen\\share_new\\shr102.log"  -logparm "rollover=auto"

 

 工作路径:D:\\shuoen\\share_new

b). 选择账户选项卡 进行配置:

    登陆为: 系统账户

 

 

c) 建立相应的文件夹和文件

    在文件夹 D:\\shuoen\\share_new 中建立文件shr_1.sas文件,文件内容如下:

%LET TCPSEC=_NONE_;  /*_NONE_ 表示外部访问没有权限控制*/

OPTIONS COMAMID=TCP;

PROC SERVER ID=shr_1 AUTHENTICATE=OPT;

RUN;

/*这里 设置成OPT,否则可能导致后面的服务启动不了*/

 

d).在安装选项卡中,点击 安装确定

2.2windowsservice文件中注册该服务,并启动

 

(1) 通过在windows 查询窗口中 输入:C:\\Windows\\System32\\drivers\\etc找到Services文件

(2)在services 文件中添加该服务的名称,并设置相应的端口号,具体内容如下:

shr_1           5015/tcp                              #SAS/SHARE shr_1

 

 

在windows(计算机-管理-服务与应用程序-服务)中找到该服务,然后右击启动

 

 

 

2.3管理与测试服务器

a)管理服务器

(1) 在文件夹D:\\shuoen\\share_new(这是之前建立的服务路径!)中建立 一个名为DATA的文件夹

(2)新建一个用于分配library的文件 01@allocate_library.sas , 文件的内容如下:

proc operate server=shr_1;

allocate library mylib_2 \'.\\data\';

(3)新建一个用于进行测试的文件: share_check.sas ,文件的内容如下:

LIBNAME mylib_2 server=shr_1;

DATA mylib_2.A1;

       B1=1;

       OUTPUT;

RUN;

 

b) 本地测试

  (1) 执行 01@allocate_library.sas文件,进行逻辑库的分配

   !!)执行 share_check.sas文件,进行访问测试 ,访问成功则log日志显示如下信息:

NOTE: 已成功分配逻辑库引用名“MYLIB_2”,如下所示:

       引擎:        REMOTE

       物理名: D:\\shuoen\\share_new\\data

        data mylib_2.A1;

               B1=1;

              OUTPUT;

         RUN;

 

NOTE: 数据集 MYLIB_2.A1 有 1 个观测和 1 个变量。

 

c)远程测试:

(1)在C:\\Windows\\System32\\drivers\\etc下的services中添加服务器的信息,如

shr_1           5015/tcp                              #SAS/SHARE shr_1

 

(2)代码如下:

%LET host=192.168.1.138;

LIBNAME mylib_2 server=host.shr_1;

/*将逻辑库中的数据集copy到本地*/

LIBNAME S \'.\';

PROC DATASETS;

COPY IN=mylib_2 OUT=S;

QUIT;

/*在服务器中添加数据集*/

DATA mylib_2.A;

       B=1;

       OUTPUT;

RUN;

 

/*host 为被访问机器的ip地址,用于被另一台机器访问*/

/*mylib_2 是被访问机器所分配的逻辑库名  server指向被访问机器的服务名称*/

 

运行后出现同上结果即表示连接测试成功。

在服务器对应的DATA库就可以看到建立的A数据集

 

三、注意事项:

1.相互进行访问的两台机器 应属于统一网段;

2.注意server id的统一

3.注意访问逻辑库名的统一

以上是关于sas share的主要内容,如果未能解决你的问题,请参考以下文章

sas自定义标签可以包含多少字符

SAS是啥意思?

sas和python的区别

第二章 导入数据到SAS | 逻辑库和SAS数据集

如何转换要在 R 中打开的 SAS (.sas) 文件? [关闭]

第一章 SAS软件入门