This article describes configuration checks, tests to run, and information to gather for support when troubleshooting problems with Teradata connections on Linux from Revolution R Enterprise.
Check installed level of unixODBC driver manager.# rpm -qa | grep -i unixodbc
This command should return nothing as RRE and Teradata require unixODBC 2.3.1 or 2.3.2 which must be built and installed from source, not RPM.
# isql --version
Check Teradata testdsn test connection:
# 'isql -v testdsn dbc dbc
Check versions and links of odbc-related libraries installed on the system:
# ls -al /usr/lib64 | grep -i odbc
Check ODBCINI and ODBCINSTINI environment variables, if set, to ensure they point to the intended odbc.ini and odbcinst.ini configuration files.
# env | grep -i odbc
Generally, if set at all, they should point to /etc/odbc.ini and /etc/odbcinst.ini. Set the environment variable ODBCINST to point to /etc/odbcinst.ini Try two different approaches to connecting to the database from Revolution R code
#No DSN
rxSetComputeContext("local") SQL <- "SELECT * FROM dbc.dbcinfo" DS<- RxOdbcData(sqlQuery = SQL, connectionString = "DRIVER=Teradata;DBCNAME=DbMachineNameOrIP;UID=RevoTester;PWD=RevoTester;") rxImport(DS) #With DSN rxSetComputeContext("local") SQL <- "SELECT * FROM dbc.dbcinfo" DS<- RxOdbcData(sqlQuery = SQL, connectionString = "DSN=testdsn;UID=SomeUser;PWD=SomePwd;") rxImport(DS)
If there is any problem running these commands or the test code, collect all output of the tests for support to review.