Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB General » View Thread |
Messages 11 to 20 of 20 total |
Backup with client / server application from the client program. |
Thu, Oct 4 2012 4:30 AM | Permanent Link |
Uli Becker | Phil,
> I've set the sessions... > > LocalConfigPath > LocalTempTablesPath > > And when I connect it I get the #409 The configuration path is empty error. > > I read up and now find I need to ADD a TEDBEngine component to my client > program, will this go and effect the multitude of other stuff already > setup for client / server thats in place? Or is there a way around this > so I don't have to add an Engine component onto the form? Make sure that Engine.UseLocalSessionEngineSettings is set to true. From Tim: << If using the components dynamically, then you can just refer to the global Engine() function in the edbcomps unit in order to access the global TEDBEngine component. >> Regards Uli |
Thu, Oct 4 2012 7:17 AM | Permanent Link |
Roy Lambert NLH Associates Team Elevate | Phil
The thing Uli forgot to mention is that with UseLocalSessionEngineSettings set to true you'll have to alter ALL of the sessions to hold the appropriate information regarding paths since they'll no longer get this from the engine. Roy Lambert [Team Elevate] |
Thu, Oct 4 2012 7:20 AM | Permanent Link |
Uli Becker | Roy,
> The thing Uli forgot to mention is that with UseLocalSessionEngineSettings set to true you'll have to alter ALL of the sessions to hold the appropriate information regarding paths since they'll no longer get this from the engine. You are right!! Uli |
Thu, Oct 4 2012 7:21 AM | Permanent Link |
Fernando Dias Team Elevate | Phil,
Uli has already answered your question, I only want to add this: If you decide *not* to add a TEDBEngine component then it is even more important that you set Engine.UseLocalSessionEngineSettings to True, otherwise EDB is going to ignore all the TEDBSession.Local<something> settings and use the Engine settings for all local sessions. So, set Engine.UseLocalSessionEngineSettings to true and then either: - TEDBSession.LocalConfigPath if you want an on-disk config file OR - TEDBSession.LocalConfigMemory if you want an in-memory config file -- Fernando Dias [Team Elevate] |
Thu, Oct 4 2012 7:26 AM | Permanent Link |
Uli Becker | Addition: I just looked that up again in the manual:
<< Note Although the TEDBSession Local* versions of the above properties will override the corresponding TEDBEngine properties, they are initially set to the same value as the corresponding TEDBEngine properties when the TEDBSession component is first created. >> So you should be able to use both local and global settings with UseLocalSessionEngineSettings set to true. Uli |
Thu, Oct 4 2012 8:32 AM | Permanent Link |
Roy Lambert NLH Associates Team Elevate | Uli
>Although the TEDBSession Local* versions of the above properties will >override the corresponding >TEDBEngine properties, they are initially set to the same value as the >corresponding TEDBEngine >properties when the TEDBSession component is first created. > >> > >So you should be able to use both local and global settings with >UseLocalSessionEngineSettings set to true. Yeah - my brain just did a hard reboot and realised local vs remote - duh! Roy Lambert [Team Elevate] |
Thu, Oct 4 2012 8:50 AM | Permanent Link |
IQA | > Uli has already answered your question, I only want to add this:
> > If you decide *not* to add a TEDBEngine component then it is even more > important that you set Engine.UseLocalSessionEngineSettings to True, > otherwise EDB is going to ignore all the TEDBSession.Local<something> > settings and use the Engine settings for all local sessions. > > So, set Engine.UseLocalSessionEngineSettings to true and then either: > - TEDBSession.LocalConfigPath if you want an on-disk config file > OR > - TEDBSession.LocalConfigMemory if you want an in-memory config file > > -- > Fernando Dias > [Team Elevate] Thanks Everyone... It all just worked when I placed a TEngine set to stLocal and a Session set to stLocal and used the following code... DM->BKPEngine->ConfigPath = DM->CommonPath + "localstore"; DM->BKPEngine->TempTablesPath = DM->BKPEngine->GetTempTablesPath(); I actually found if I added the following line prior to the 2 above, it gave me an error #409 configuration path is emtpy... DM->BKPEngine->UseLocalSessionEngineSettings = true; So I dont think I need it in this instance. This is on my client app, with no other engine components, just the original remote session and database that was there prior to me adding the local session and Engine component. Cheers, Phil. |
Thu, Oct 4 2012 12:50 PM | Permanent Link |
Uli Becker | Phil,
but your question was: << I've set the sessions... LocalConfigPath LocalTempTablesPath And when I connect it I get the #409 The configuration path is empty error. >> The only way to use these local settings is to set UseLocalSessionEngineSettings to true. On the other hand the question is, whether or not an empty local configuration path is replaced by the global engine value. Uli |
Tue, Oct 9 2012 3:41 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Phil,
<< I almost wonder if I could just call a remote procedure from the client to have the server make a backup at its default store I already have in place and then just have the server send the backup file to the client program using TCP/IP or something. >> I wouldn't do that. It's what you had to do with DBISAM, but using the store file copy operations in EDB is more efficient because they know how to transfer *files*. IOW, they don't just read a very large file into memory and try to transmit the whole thing, rather they send things in nice, manageable chunks. << This seems to be one of those ElevateDB things that's not as open as DBISAM. >> This is actually one of the things that EDB does better than DBISAM by a very large degree. DBISAM could not transfer a file from the server to client, period (ignoring the server procedures for the reasons outlined above). I would suggest a slightly quicker route over what Fernando suggests: 1) Define a local store on the EDB Server. This is the store to use for the backup using BACKUP DATABASE. 2) After the backup is complete, use this method to transfer the backup file to a local file (by using TFileStream for the target stream): http://www.elevatesoft.com/manual?action=viewmethod&id=edb2&product=delphi&version=7&comp=TEDBSession&method=SaveStoreFileToStream Doing it this way avoids the need for any local configuration files/stores. If you have any other questions, please let me know. Tim Young Elevate Software www.elevatesoft.com |
Tue, Oct 9 2012 4:17 PM | Permanent Link |
IQA | > << I almost wonder if I could just call a remote procedure from the
> client to have the server make a backup at its default store I already > have in place and then just have the server send the backup file to the > client program using TCP/IP or something. >> > > I wouldn't do that. It's what you had to do with DBISAM, but using the > store file copy operations in EDB is more efficient because they know > how to transfer *files*. IOW, they don't just read a very large file > into memory and try to transmit the whole thing, rather they send things > in nice, manageable chunks. > > << This seems to be one of those ElevateDB things that's not as open as > DBISAM. >> > > This is actually one of the things that EDB does better than DBISAM by a > very large degree. DBISAM could not transfer a file from the server to > client, period (ignoring the server procedures for the reasons outlined > above). > > I would suggest a slightly quicker route over what Fernando suggests: > > 1) Define a local store on the EDB Server. This is the store to use for > the backup using BACKUP DATABASE. > 2) After the backup is complete, use this method to transfer the backup > file to a local file (by using TFileStream for the target stream): > > http://www.elevatesoft.com/manual?action=viewmethod&id=edb2&product=delphi&version=7&comp=TEDBSession&method=SaveStoreFileToStream > > > Doing it this way avoids the need for any local configuration files/stores. > > If you have any other questions, please let me know. > > Tim Young Thanks Tim, I needed some pushing, which I got from Fernando and Raul, in the end it was alot easier than I had in my mind. I've got it working using the local store on the server and a virtual remote store in the client, which then creates a temp local store dictated by the user as to where they wish to save their backup, this temp store is then dropped keeping contents. Thanks again for your help, I will look into the SaveStoreFileToStream, but I'm happy with the current result. Cheers, Phil. |
« Previous Page | Page 2 of 2 | |
Jump to Page: 1 2 |
This web page was last updated on Tuesday, May 7, 2024 at 06:25 PM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |