Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB General » View Thread |
Messages 1 to 8 of 8 total |
Error #300 Cannot lock database for exclusive access (v.2.05.9) |
Wed, Oct 12 2011 3:25 AM | Permanent Link |
George | Hello
Lately I installed a C/S application at a client and I received this error when I tried to alter a database using ALTER DATABASE SQL Statement. I am using this version of edbsrvr at about 30-40 clients, and I came up with this error at two of them. At the first I did the execution not from inside my application but using edbmgr and it worked fine. But the second on did not worked. Actually what I do, I keep a record of the version of the database using attributes. So in the application I run a set of queries base to the current version of the database to update the database up to the latest version, or better to the version that the client application supports. i.e. if a database version is 1001 and the client application works with version 1004 then the software will run a set of scripts to update the database structure to the wanted. This way it is easy for me to track changes. After the update of the structure I alter the database version using a statement like the one below. ALTER DATABASE "Prl0014" PATH 'D:\Databases\Prl0014' ATTRIBUTES 'Ver=1004' For sure: 1. the database was not pointed by another session as it was a new installation and I only had one client pc installation. 2. Firewall was disabled. 3. Client Application failed to update the tables structure and the database. I received error #300. 4. I used edbmgr to alter the database. Client application was not running at that time. I received error #300. 5. edbsrvr was running on a Windows Server 2008. What could possibly cause this problem? Thanks |
Thu, Oct 13 2011 2:34 AM | Permanent Link |
Ralf Bieber EDV Dienstleistungen Ralf Bieber | Georgios Savva wrote:
Georgios, > > ALTER DATABASE "Prl0014" > PATH 'D:\Databases\Prl0014' > ATTRIBUTES 'Ver=1004' > > For sure: > 1. the database was not pointed by another session as it was a new > installation and I only had one client pc installation. 2. Firewall > was disabled. 3. Client Application failed to update the tables > structure and the database. I received error #300. 4. I used edbmgr > to alter the database. Client application was not running at that > time. I received error #300. 5. edbsrvr was running on a Windows > Server 2008. > You should in your Client Application also the database connection close. In the edbmgr you can test this. If your database 'Prl0014' is open then you received the error #300. But if database is closed, the script works. For this situation it is good, if you make a own database connection with the database name 'configuration'. like this: EDBDatabase :=TEDBDatabase.Create(nil); EDBDatabase.SessionName :=MySession.SessionName; EDBDatabase.DatabaseName :='MyConfiguration'; EDBDatabase.Database :='configuration'; UpdateSQL :=TEDBQuery.Create(nil); UpdateSQL.SessionName :=EDBDatabase.SessionName; UpdateSQL.DatabaseName :=EDBDatabase.DatabaseName; Ralf |
Fri, Oct 14 2011 5:15 AM | Permanent Link |
George | Dear Ralf,
Thanks for your reply, In the software source code I do follow the steps as you describe them. Creating a new session, connecting to configuration database, and executing the query as given. The only difference is that I use components on the form, I do not create them in the source. What was really strange is not that the software could not do the changes I sent. The strange part is that I tried to do the changes using edbmgr and it did not work either. I will try to contact the client again and try to find out what the problem might be. Then I will post here again. Even if the firewall was disabled, just to be sure, the only port that is needed to be open (by default) is 12010 TCP, right? |
Mon, Oct 17 2011 3:39 AM | Permanent Link |
Uli Becker | Georgios,
two things: 1. When you get this error, you can be sure that there is an instance of EDBManager *or* any application that is accessing your database either locally or by a remote session. You have to double check this. Also a dead session can cause this error. You can check that by opening the server UI. 2. The firewall and the used port haven't to do anything with the described error. In the case the firewall would block a connection, you would get a different error message. Uli |
Wed, Oct 19 2011 3:22 AM | Permanent Link |
George | Dear Uli
Thank you for your answer. I am 100% sure that firewall problems would lead to different errors, probably a connection error. I just wanted to give a description to the case as best as possible. Regarding the UI of ElevateDB Server, I would like to make a point / suggestion to the elevatesoft development team. UI is not available for Windows server 2008, Vista, or Win7 when running as a service. The only way to get UI is to stop the service and start the server manually which is a bit of a pain. After having some more tries, I could not locate a reason for this happening. Even if there was a dead session, after restarting EDB Server those session should be gone. |
Wed, Oct 19 2011 6:12 AM | Permanent Link |
Uli Becker | Georgios,
> Regarding the UI of ElevateDB Server, I would like to make a point / suggestion to the elevatesoft development team. UI is not available for Windows server 2008, Vista, or Win7 when running as a service. The only way to get UI is to stop the service and start the server manually which is a bit of a pain. If you are running the server as a service you can administrate it from EDBManager. Just select the remote session in the treeview and you'll see some links in the task pane, which will help you. See this screenshot: http://www.beckersoft.de/temp/clip.gif You might also be interested to watch the logged events to see which application has connected your database. Hope that helps. Regards Uli |
Fri, Oct 21 2011 2:41 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Georgios,
<< Regarding the UI of ElevateDB Server, I would like to make a point / suggestion to the elevatesoft development team. UI is not available for Windows server 2008, Vista, or Win7 when running as a service. The only way to get UI is to stop the service and start the server manually which is a bit of a pain. >> A web interface was started on in early 2011, but put off with the advent of Elevate Web Builder, which will be used to create the web interface for the EDB Server by the end of the year. -- Tim Young Elevate Software www.elevatesoft.com |
Mon, Oct 24 2011 4:53 AM | Permanent Link |
George | Tim
That would be really nice. |
This web page was last updated on Tuesday, April 30, 2024 at 03:55 PM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |