Hi.

Is there any limitations in number of services in SQL Anywhere Sybase Central? Currently we have 89 services defined in Sybase Central, but we are only able to start 87. The last 2 services gets the status "Pending" in Windows Services when we try to start it in Sybase Central. Most of these services are tiny databases used in small web applications, so resources are no issue. There are lots of memory, CPU and diskspace available.

We can copy the definition of the service and start dbsrv16.exe with the same parameters without any problems. But the service will not start.

We are currently running SQL Anywhere 16.0.0.2158.

Regards,

Bjarne Anker Maritech Systems AS Norway

asked 16 Feb '17, 07:23

Bjarne%20Anker's gravatar image

Bjarne Anker
745323648
accept rate: 10%

edited 16 Feb '17, 07:27

Just out of curiosity: Would it also work for you if you used less server instances which in turn run several databases each (so supporting the same number of databases with far lesser server instances - and therefore far lesser Windows SA services)?

As you are using v16, there are several improvements to isolate databases that run on the same database server (e.g. "disk sandboxing", restrictions for procedures like sa_db_list() and many others...).

(17 Feb '17, 02:16) Volker Barth

Hi Volker.

We are still having some problems with our services, and we are looking into your suggestion to run all (or at least some for testing) databases in one server. I can start the server with ex. 2 databases like this (simplified example):

dbsrv16 -n Test c:\data\data1.db -n Data1 c:\data\data2.db -n Data2

One server starts, and contains 2 databases. Great! But how do I add data3, data4...dataN to the same server without stopping the server first? I've looked into the DBSTOP command, so I've figured out how to stop a specific database in a running server. But I've yet to find out how to start it again. :)

Any examples or tips would be appreciated.

Regards,

Bjarne

(02 Mar '17, 03:10) Bjarne Anker
Replies hidden
2

Have a look at the START DATABASE command: DCX: START DATABASE
To start a database on a spcific server, you'll need a connection to one database already running on that server.

(02 Mar '17, 03:32) Reimer Pods
2

you'll need a connection to one database already running on that server

...which can be a connection to the "phantom" utility_db, too (just saying...).

(02 Mar '17, 03:37) Volker Barth
1

Hi Reimer and Volker!

Exactly what I was looking for! And as allways: works like a charm!

Thanks!

Bjarne

(02 Mar '17, 04:04) Bjarne Anker

Hi Bjarne,

I doubt that there's a limitation inside SybaseCentral. Can you start the services using the Windows Control Panel / the dbsvc utility / the net start OS command? Can you start the last two services alright when two others aren't running yet? Does the Windows event log show any indications for problems? Do these services have an output protocol file (-o cmd line option)? If so, what's written there?

Cheers,

Volker DB-TecKnowledgy

permanent link

answered 16 Feb '17, 11:34

Volker%20DB-TecKy's gravatar image

Volker DB-TecKy
5453715
accept rate: 25%

Hi Volker.

Yes, these two services will start if I stop two other, random services. I will have a colleague of mine try to start the service using the net start command tomorrow.

How do we add an output file using the -o option?

Regards,

Bjarne

(16 Feb '17, 16:36) Bjarne Anker
Replies hidden

Hi Bjarne,

on the dbsrv16 command line, in the server options part, which is before / left of the first database file name, specify "-o filename" without the quotes. You may have to quote the filename if it contains special characters, just like you do with file names in the cmd shell. Absolute path is recommended, the directory must exist, and it has to be a different filename for each service.
In the SybaseCentral Service setup dialog, it should be the 2nd tab ("Setup"? - I currently only have the German labels in place) with the multi line editor ("Parameters"?). It'll be safe to put the -o and the filename just before your existing options.
BTW, using -o is generally considered good practice, especially when there is no output window to observe the server output.

HTH

Volker

(16 Feb '17, 16:56) Volker DB-TecKy

Hi.

Yeah, I know about the -o switch for the dbsrv16. I just thought that there is an -o switch for the actual service. :-p

I will certainly try to add it tomorrow and see if something is written to the logfile.

Thanks,

Bjarne

(16 Feb '17, 17:02) Bjarne Anker

Note, you can manage SQL Anywhere services outside of Sybase Central with the help of the DBSVC command line utility, which supports its own -o parameter, so you can log its output, as well, such as

dbsvc -o C:\MyLogs\MyDbSvc.txt -u MySaSvc139

That would start the according service and log the output accordingly.

It seems the log contents is identical to the command line output of the DBSVC utility - but like the server's console log, contents gets added to the end, so you can use the same log for different SA services and service operations (which might be very helpful in your case with very many services on the same box.)

(17 Feb '17, 02:11) Volker Barth

Volker B... I am having a deja vu moment, "remembering" a time when someone reported a strange inability to start a large number of services, but if some services were stopped the missing ones could be started... however, I cannot find the discussion.

(19 Feb '17, 08:03) Breck Carter
1

Hi.

During friday afternoon, we suddenly managed to start all services without having to stop any of the other running services. So now, all 89 services are running as normal. My colleague says that he did nothing at all thursday afternoon/evening, and "it just worked" on friday. Strange! Perhaps it was Windows Server that rejected the startup due to lack of resources? However, the server has plenty of RAM and CPU, so don't think that's the reason.

BTW: Adding the -o to the service did not generate any log when trying to start the services on thursday when the problems was occuring.

Anyways, it looks good now. In any case, this could be a good reason to add a second DB-server and offloading some databases to that.

Thanks for all the good suggestions and tips.

Regards,

Bjarne

(20 Feb '17, 02:18) Bjarne Anker
showing 2 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:

×40
×23

question asked: 16 Feb '17, 07:23

question was seen: 2,253 times

last updated: 02 Mar '17, 04:04