The forum will be down for maintenance at some point between Friday, September 25, 2020 at 5pm PDT and Sunday, September 27, 2020 at 11:59 PDT. Downtime is unknown but will be minimized.

I'm trying to start a Mobilink synchronization server, and my connection string works with dbping...

dbping -d -c "uid=xxx;pwd=yyy"

...but fails to work with mlsrv

mlsrv -c "uid=xxx;pwd=yyy" -dl

The error is:

<Main> [-10002] Consolidated database server or ODBC error:  ODBC: [SAP][ODBC Driver][SQL Anywhere]Invalid user ID or password (ODBC State = 28000, Native error code = -103)

asked 04 Sep, 07:42

saurabhnanda's gravatar image

saurabhnanda
46129
accept rate: 0%

3

As someone who only talks to customers when they have problems or questions, I would strongly suggest providing the ServerName and DatabaseName connection parameters in your connection string for the MobiLink Server. Connecting to the default database running on the default engine on the local machine is a recipe for accidentally connecting to the wrong database at some point in the future.

(04 Sep, 08:34) Reg Domaratzki

Thank you for this tip. I'll try with a full ODBC connection string and report back.

(04 Sep, 09:07) saurabhnanda

Reg, I might be missing something very basic about DSN here, but if I'm using a well-configured DSN (as mlsrv expects), I shouldn't have to specify anything else in the connection string, right?

(04 Sep, 09:22) saurabhnanda

I configured a complete DSN and used "dsn=xxx" and it worked as expected. Thank you, Reg.

(04 Sep, 09:32) saurabhnanda

The DSN parameter is required in the connection string for the MobiLink Server.

dbping only connects to SQL Anywhere databases, so when it connects to a database it will by default use dblib (i.e. SQL Anywhere native communication stream), but mlsrv17 is an ODBC application that can connect to a number of different RDBMS, so uses ODBC only, and never used dblib.

permanent link

answered 04 Sep, 08:04

Reg%20Domaratzki's gravatar image

Reg Domaratzki
6.8k339104
accept rate: 39%

edited 04 Sep, 08:26

Thank you for the detailed explanation. is this documented anywhere clearly? The doc for mlsrv simply says that -c needs to be passed a connection string, and no further details about ODBC or reqd components within that connection string.

(04 Sep, 09:05) saurabhnanda

Also, I tried putting a DSN, if I remember correctly, but got the same behaviour. I'll recehck once I'm on my computer. Is there any specific the DSN needs to be setup with windows?

(04 Sep, 09:06) saurabhnanda

Presumably one could use dbping -m to force ODBC usage, when testing a connection path similar to MobiLink.

(04 Sep, 09:13) Breck Carter

Breck, the tip about -m is very useful. The connection string now fails with dbping as well -- so at least I'm seeing consistent behaviour now.

(04 Sep, 09:19) saurabhnanda

This the correct answer for the difference in behaviour of dbping and mlsrv. I'm opening a separate question related to DSN.

(04 Sep, 09:23) saurabhnanda
1

The documentation does indicate that the value supplied to the mlsrv17 -c option should be "ODBC database connection parameters for your consolidated database." See http://dcx.sap.com/index.html#sqla170/en/html/81c951cb6ce21014887280d342d9494d.html*loio81c951cb6ce21014887280d342d9494d.

(04 Sep, 10:51) Chris Keating
More comments hidden
showing 5 of 6 show all flat view
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×353

question asked: 04 Sep, 07:42

question was seen: 88 times

last updated: 04 Sep, 10:51