2016-07-08 5 views
1

컴퓨터 클러스터에서 R 프로그래밍 언어 용 RODBC 패키지를 실행하려고합니다. 필자가 다운로드 및 내 홈 폴더에 unixODBC를 설치 한이를 위해 SQL 서버에 필요한 ODBC 드라이버가 포함되지루트 권한없이 SQL 서버용 unixODBC 드라이버를 설치할 수 있습니까

가 지금은 실현 (몇 가지 유용한 지침 here을 다음),하지만 다운로드 및 드라이버에게 I를 설치하려고에 그들 모두가 갖고 있지 않은 루트 권한이 필요하다는 문제가 발생합니다.

root 권한없이 SQL 서버 unixODBC 드라이버를 설치하는 방법이 있습니까?

우리의 시스템입니다 : 내가 지금까지 DevartMicrosoft에서 사용할 수있는 드라이버를 살펴 보았다

CentOS Linux release 7.2.1511 (Core) 

.

답변

1

내가 루트 액세스를 특별히 필요로하는 유일한 이유는 odbc.ini 파일을 편집하는 것입니다. 접두사 및/또는 sysconf가 도달 가능한 위치로 설정된 unixODBC의 복사본을 만들 수 있습니다. 또는 드라이버 관리자에게 $ ODBCSYSINI/odbc.ini 및 $ ODBCSYSINI/odbcinst.ini를 사용하도록 ODBCSYSINI env 변수를 설정하십시오.

Easysoft 드라이버는 확실하게 비 루트로 설치 될 수 있습니다. 대안을 가리 키도록 $ EASYSOFT_ROOT를 설정하십시오./usr/local/easysoft

0

나는 이것이 오래되었다는 것을 알고 있지만 비슷한 문제에 대한 해결책을 찾는 데 많은 시간을 할애했다. SQL Server ODBC 드라이버를 사용할 수없는 경우 FreeTDS를 사용할 수 있습니다. 이것은 우리의 리눅스에서 가능했습니다 (다른 SQL Server ODBC 드라이버는 그렇지 않습니다). 그것은 트릭을했다. FreeTDS를 사용하려면

odbcinst -j 

당신은 당신의 설정을 로컬 .odbc.ini 파일을 수정해야합니다 : ODBC 드라이버를 사용하면 (어디 그들이)가 사용할 수 있는지 확인하려면 리눅스 명령을 실행합니다. 내 .odbc.ini에있는 예제는 다음과 같습니다.

[DB_NAME] 
Driver=FreeTDS 
Description=Microsoft SQL Server 2016 
Server=address.of.your.server 
Database=DB_NAME 
Port=1433 
TDS_Version=7.4 
UseDeclareFetch 

이 작업을 수행하면 SQL Server에 연결할 수 있습니다. (나는 Python을 사용하고 있지만 비슷한 접근법이 R에서 작동 할 것입니다.)

희망이 있으면 도움이 될 것입니다.

관련 문제