cancel
Showing results for 
Search instead for 
Did you mean: 

Crystal Reports Server 2008 (Linux) - Crystal Reports/MySQL/ODBC Issue

Former Member
0 Kudos

Hello,

I have successfully installed CRS '08 on a Red Hat Enterprise Linux 4 server. All services run fine.

In the CMC, I have uploaded a Crystal Report that connect to a remote MySQL server.

I have installed the My SQL ODBC 3.51.11 and .12 Drivers as a System DSN.

I have proven that the reports run fine in Crystal Reports 2008 directly against the remote MySQL DB server.

(in Windows but with the same 3.51 ODBC Drivers)

I have also proven that the database connection works okay from the CRS '08 Red Hat server to the remote MySQL DB server, when also creating a system DSN (using bash ./ODBCConfig)

The problem is that when I log into the CMC or InfoView, and when I run the Crystal Reports from there, I get an error message:

"Error in File <MyCrystalReport>: Failed to load database information"

Is there something wrong with my specific Crystal Reports' Database Configuration? (Right click- Database Configuration)

I see the driver was registered correctly in the /etc/odbc.ini file

Am I supposed to set any other ODBC environment variables?

Is there are firewall issue (port 3306 is already open)?

In summary, the install was successful, and Crystal Reports can be uploaded and viewed via CMC or InfoView, but I cannot run the Crystal Reports against the database.

Please advise, Thanks!

Accepted Solutions (1)

Accepted Solutions (1)

BasicTek
Active Contributor
0 Kudos

Hi Joe,

If you don't get a response for this then I'd suggest opening a message with support's deployment team and requesting a "nix" engineer.

Regards,

Tim

Answers (2)

Answers (2)

Former Member
0 Kudos

Update:

I re-installed Linux without the built-in MySQL install. I installed CRS08 with the CMC database as MySQL. I imported the Crystal Reports source database into the CMC database. I installed the ODBC 3.51.12 driver, updating the ODBC.ini file in the CRS08 install directory. The reports now refresh, but intermittently. I am closing this thread since the connectivity is there and will troubleshoot the refresh issue further.

Former Member
0 Kudos

Hi, I'm facing a similar problem. My ODBC DSN never works with CRS. Here are the details:

(1) I installed the CRS 2008 in /opt/crystalreportsserver_2008_v1/ on a Linux platform. The CRS works well. I created a report with Crystal Reports 2008. This report directly connects to a MySQL server. After I published the report and manually modify its database configuration, I can browse it from InfoView. I'm sure that CRS, MySQL, and a report connecting to MySQL are all good.

(2) Then, I created an ODBC DSN on a Windows platform. This DSN connects to a MySQL server. I created another report with Crystal Reports using this DSN. The report can show the data within Crystal Reports.

(3) Then, I published the second report to CRS, but when I try to browse it, I always get such a message: Failed to open the connection.

I have configured the ODBC for CRS on the Linux server and I think the configuration is correct. This is how I do that: I edited the /opt/crystalreportsserver_2008_v1/bobje/odbc.ini file. In the file I added a data source called ods_telstar. Following is the content of the file:

[ODBC Data Sources]

CRSQLServerWP=DataDirect 5.3 SQLServer Wire Protocol Driver

CRSybaseWP=DataDirect 5.3 Sybase Wire Protocol Driver

CRText=DataDirect 5.3 Text Driver

%SYBASEDSN%=DataDirect 5.3 Sybase Wire Protocol Driver

ods_telstar = MySQL

...

[ods_telstar]

Description = ODS on telstar

Trace = Off

TraceFile = stderr

Driver = /opt/crystalreportsserver_2008_v1/bobje/enterprise120/linux_x86/odbc/lib/libmyodbc5.so

SERVER = xxx

USER = xxx

PASSWORD = xxx

PORT = 3306

DATABASE = ods

In the middle I removed some data source definitions that are by default in the file. Note that I use "xxx" to replace the server name, user, and password. Such information is for internal use and I'm sure the original information is correct. The MySQL ODBC driver file has been put in the correct location. Correct access permissions has been assigned to the file.

I've tried to restart the CRS server, but still the report using ODBC DSN cannot be viewed.

The reason that we want to user ODBC DSN is that we may have many reports to publish. When we design the reports, we specify that they get data through an ODBC DSN such as ods_telstar. If we configure the same DSN on CRS, then we don't need manually modify each report's configuration after we publish them. If these reports are directly connecting to MySQL, then we have to manually modify each one's database configuration after we publish them.

I've no idea what's wrong with all the setup. Any suggestions and comments are appreciated!

Former Member
0 Kudos

Hi, I'm facing a similar problem. My ODBC DSN never works with CRS. Here are the details:<br><br>

(1) I installed the CRS 2008 in /opt/crystalreportsserver_2008_v1/ on a Linux platform. The CRS works well. I created a report with Crystal Reports 2008. This report directly connects to a MySQL server. After I published the report and manually modify its database configuration, I can browse it from InfoView. I'm sure that CRS, MySQL, and a report connecting to MySQL are all good.<br><br>

(2) Then, I created an ODBC DSN on a Windows platform. This DSN connects to a MySQL server. I created another report with Crystal Reports using this DSN. The report can show the data within Crystal Reports.<br><br>

(3) Then, I published the second report to CRS, but when I try to browse it, I always get such a message: Failed to open the connection.<br><br>

I have configured the ODBC for CRS on the Linux server and I think the configuration is correct. This is how I do that: I edited the /opt/crystalreportsserver_2008_v1/bobje/odbc.ini file. In the file I added a data source called ods_telstar. Following is the content of the file:<br><br>

[ODBC Data Sources]<br><

CRSQLServerWP=DataDirect 5.3 SQLServer Wire Protocol Driver<br>

CRSybaseWP=DataDirect 5.3 Sybase Wire Protocol Driver<br>

CRText=DataDirect 5.3 Text Driver<br>

%SYBASEDSN%=DataDirect 5.3 Sybase Wire Protocol Driver<br>

ods_telstar = MySQL<br>

<br>

... <br>

<br>

[ods_telstar]<br>

Description = ODS on telstar<br>

Trace = Off<br>

TraceFile = stderr<br>

Driver = /opt/crystalreportsserver_2008_v1/bobje/enterprise120/linux_x86/odbc/lib/libmyodbc5.so<br>

SERVER = xxx<br>

USER = xxx<br>

PASSWORD = xxx<br>

PORT = 3306<br>

DATABASE = ods<br>

<br>

In the middle I removed some data source definitions that are by default in the file. Note that I use "xxx" to replace the server name, user, and password. Such information is for internal use and I'm sure the original information is correct. The MySQL ODBC driver file has been put in the correct location. Correct access permissions has been assigned to the file.<br><br>

I've tried to restart the CRS server, but still the report using ODBC DSN cannot be viewed.<br><br>

The reason that we want to user ODBC DSN is that we may have many reports to publish. When we design the reports, we specify that they get data through an ODBC DSN such as ods_telstar. If we configure the same DSN on CRS, then we don't need manually modify each report's configuration after we publish them. If these reports are directly connecting to MySQL, then we have to manually modify each one's database configuration after we publish them.<br><br>

I've no idea what's wrong with all the setup. Any suggestions and comments are appreciated!<br>

Former Member
0 Kudos

Hi;

Your error is typical of a server not finding the odbc.ini file. I'm quite sure the BOBJ system are looking for a default one in the BOBJ install folder.

Have a look at the env.sh file in the setup folder of the BOBJ install folder.

This file is executed by the servers startup scripts before starting the servers.

You particularly want to make sure that you:

export ODBCINI=/etc/odbc.ini

and

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:\[path to your ODBC drivers (.so files)\]

or maybe your ODBC drivers come with a env.sh script or something like that that you should call before starting your servers.

Regards;

Lionel