|
|||
|
|||
Hello,
I'm trying to connect using ODBC from linux. I dried connecting using the db folder of commitcrm localy mounted on the computer, and using //serverip:6262 in the "DataDirectory" key but none of them worked. I get the following error: Error 6060: Advantage Database Server not available on specified server. axServerConnect Do you have an idea of what could be wrong? Best regards |
|
|||
|
|||
Hello,
I mounted the CommitCRM share from the server hosting CommitCRM (172.16.200.22) on /mnt/commit locally so I tried putting /mnt/commit/Db in the DataDirectory key in odbc.inc But it didn0t help And I also tried the following values for DataDirectory: \\172.16.200.22\Commit\Db \\172.16.200.22:6262\Commit\Db //172.16.200.22/Commit/Db //172.16.200.22:6262/Commit/Db 172.16.200.22:6262 Is there another parameter I should check? I test using: $ isql -v ADS [S1000][unixODBC][iAnywhere Solutions][Advantage SQL][ASA] Error 6060: Advantage Database Server not available on specified server. axServerConnect [ISQL]ERROR: Could not SQLConnect My odbc.ini is: [ODBC Data Sources] ADS = Advantage ODBC Driver [ADS] Driver=ADS DataDirectory=\\172.16.200.22:6262\Commit\Db Description=Advantage ODBC driver Rows=False MemoBlockSize=64 DefaultType=Advantage MaxTableCloseCache=0 LOCKING=Record CharSet=OEM ADVANTAGELOCKING=OFF ServerTypes=3 TableExtension= And my odbcinst.ini: [ADS] Description = ODBC for ADS Driver = /usr/lib/libadsodbc.so.10.10.0.49 Setup = /usr/lib/libadsodbc.so.10.10.0.49 FileUsage = 1 |
|
|||
|
|||
The port should not be specified as part of the DataDirectory path, so please remove it.
On the Linux box, mount the shared directory as a CIFS/Samba share. Then - verify that in Linux command shell you can list the files in the path your trying to connect to. Next - verify that IPTables, or whatever firewall your have installed on your Linux machine, allows traffic on the port the SQL database engine works with, it seems to be 6262 in your case. Verify that the Windows server does not block http/udp connections from the Linux machine (Windows firewall...). Also, change ServerTypes from 3 to 2. Give it a try. |
|
|||
|
|||
Hello,
I have adsodbc-10.10.0.49 installed on the linux machine The commitCRM version is 16.0.0.6 with Advantage 10.10 on the same windows server. The db is on the share //172.16.200.22/Commit in the Db folder. I mounted this cifs share on /mnt/Commit, I can list all files in the Db folder Firewall is disabled on both machines. Both machines are on the same network. I tried with both ServerTypes 3 and 2 When I try to connect to the tcp port 6262 it answers corectly. I still get the same error message. What should I put exactly in odbc.ini ? Should I put the path to the mounted Db folder or the path to this folder on the server, and with which notation? If I put the local path, how does it now where to find the server? Best regards |
|
|||
|
|||
The DataDirectory value should be \\172.16.200.22\RangerMSP\Db - though if you have a mapped drive for this you can use it instead of the IP address.
I would also double check firewalls on both machines as well as that UDP is also allowed on both machines. Oh, also try this - you may need $ODBCINI to be set (change to the relevant path) export ODBCINI="/etc/" (if your odbc.ini and odbcinst.ini files are in /etc) Hope this helps. |
|
|||
|
|||
I tried the export, but it doesn't change (it was already using the correct odbc.ini and osbcinst.ini)
There is really no firewall in any of the two machine which are directly connected. If I put the local path to the mounted share, how does it find the server to interact with it? And if I put the path to the share how does it know the credentials to use? |
|
|||
|
|||
Thanks for the update.
It should point to the Windows share where the database is actually located. Without a dictionary, that is not being used, you won't need anything else besides permissions to the share, as set at the domain/server level. Beyond that we're not sure what else to recommend for the Linux box. Maybe first verify (maybe you have already) that you manage to connect from a Windows machine with ODBC and only then continue with the Linux box. You may also use an ADS.ini that teaches the system where the database server is, though that's normally the solution for a 6420 error, and you see 6060 on your Linux machine. Give it a try. |