Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 10 of 10 total
Thread Newbie Migration question
Tue, Jun 15 2010 1:57 PMPermanent Link

Trinione

Hi:
I have installed EDB and created the Tutorial database as well as the Delphi Tutorial application - all successfully.

At this stage I am need to migrate a MS Server database to EDB. How can I accomplish this?

TriniOne
Wed, Jun 16 2010 2:25 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Trinione


ElevateDB comes with a few migrators but as far as I know there isn't one specifically for MS Server. That leaves a few choices:

1. export the data into a form ElevateDB can migrate (eg Paradox)
2. export the data in a format that ElevateDB can import (eg csv)
3. develop a small app with table components for both engines and do the migration manually.

Hopefully someone will have already done a conversion and will be able to help.

Roy Lambert [Team Elevate]
Wed, Jun 16 2010 3:27 AMPermanent Link

Francisco Fernandez

NewTRON Informatica

Avatar

Roy.

>>1. export the data into a form ElevateDB can migrate (eg Paradox)
>>2. export the data in a format that ElevateDB can import (eg csv)
>>3. develop a small app with table components for both engines and do the migration manually.

You can save 1 and 2 steps opening directly MS Server, read tables and create ElevateDB tables at the same time, isn't it?

I don't work with MS Server but I did it with DBF tables a couple of years ago.
Wed, Jun 16 2010 4:02 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Francisco

>You can save 1 and 2 steps opening directly MS Server, read tables and create ElevateDB tables at the same time, isn't it?

They weren't steps just different options. I'd go for option 3 myself, but since I also don't use MS Server I don't know how easy / difficult it would be to get a single app with both accesses in it, but I do know you can export data as csv from most engines.

Roy Lambert [Team Elevate]
Fri, Jun 18 2010 2:36 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com


<< At this stage I am need to migrate a MS Server database to EDB. How can I
accomplish this? >>

Are you using the ANSI or Unicode version of EDB ?

What you want to do is:

1) Copy the appropriate ADO migrator (edbmigrateado.dll) from the
<BaseInstallDir>\libs\edbmigrateado<unicode> installation directory to your
configuration path, where the <unicode> is the optional "unicode" text that
is appended to the path name for the unicode version of the driver.

2) Start up the EDB Manager.

3) Create the target database in the EDB Manager using the desired session.

4) Select the Migrate Database task link for the newly-created database.

5) In the Migrate Database dialog, select ADO as the migrator, and then
specify the ConnectionString parameter like this:

Provider=SQLOLEDB.1;Persist Security Info=False;User ID=MyUser;Initial
Catalog=MyDatabase;Data Source=MyServer

where MyUser is the MS SQL Server user name to use, MyDatabase is the MS SQL
Server database, and MyServer is the MS SQL Server instance that is running
that you want to connect to.  This form of the connection string uses the MS
SQL Server OLEDB provider.

--
Tim Young
Elevate Software
www.elevatesoft.com



Mon, Jun 21 2010 11:14 AMPermanent Link

Trinione

Thanks for the advise. I had started to write a program to handle the migration, however I saw Tim's advise and followed it successfully, but with some concerns.

1 - There is no Progress indication
and
2 - Large tables take incredibly long. A table with 1.5 million records took over 24 hours to migrate.

With particular regard to item #2, I noted that the IDX file is created at the same time as the TBL. Is this slowing down the process?

trinione
Mon, Jun 21 2010 3:58 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com


<< 1 - There is no Progress indication >>

There definitely should be progress indication, but we've been seeing some
odd things with the progress bar and Windows lately, so it could be related.
In certain situations, the progress bar stops updating, even though we are
telling it to update and making sure that we pump the Windows message loop.

<< 2 - Large tables take incredibly long. A table with 1.5 million records
took over 24 hours to migrate. >>

Certain tables may take a while - the migration happens at a very high level
(INSERT statements), so things like large BLOBs can slow things down.

<< With particular regard to item #2, I noted that the IDX file is created
at the same time as the TBL. Is this slowing down the process? >>

The indexes are created after the table rows are moved over, so no, that
shouldn't be the case.

If you want to email me a copy of the source database/tables (whole, or
cut-down, it doesn't matter), I can give you a better idea of the possible
reason for the slowdown.

--
Tim Young
Elevate Software
www.elevatesoft.com
Tue, Jun 22 2010 5:29 PMPermanent Link

Trinione

Unfortunately I cannot send a copy of the table as it is a Client's data I am working with.

Fortunately, in my case I am able to remove many useless records and thus shrunk the table size significantly, so it now takes about 30 minutes. However, I would think other developers that would want to move from MS SQL Server and MySQL would be interested in a program/method that provides feedback and the ability to migrate big tables in a timely and informed manner.

I had started to write a program to migrate at the high-level also of 'INSERTS'. If I get a chance I'll complete it and submit the code here for others to use.
Tue, Jun 22 2010 5:31 PMPermanent Link

Trinione

Trinione wrote:

Unfortunately I cannot send a copy of the table as it is a Client's data I am working with.

Fortunately, in my case I am able to remove many useless records and thus shrunk the table size significantly, so it now takes about 30 minutes. However, I would think other developers that would want to move from MS SQL Server and MySQL would be interested in a program/method that provides feedback and the ability to migrate big tables in a timely and informed manner.

I had started to write a program to migrate at the high-level also of 'INSERTS'. If I get a chance I'll complete it and submit the code here for others to use.

I think this is going to be a very big consideration/tool when you complete a version that can be used on a Web Server. Many developers would love the idea of migrating to a database server where they can protect their rights and not have their database schema public.
Tue, Jun 22 2010 7:33 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

<< Fortunately, in my case I am able to remove many useless records and thus
shrunk the table size significantly, so it now takes about 30 minutes.
However, I would think other developers that would want to move from MS SQL
Server and MySQL would be interested in a program/method that provides
feedback and the ability to migrate big tables in a timely and informed
manner. >>

Just to clarify - it *does* provide feedback and progress updates.  It's
just that, for some unknown reason, the Windows messages for repainting the
status/progress bars are not being handled properly in some cases (possibly
a Delphi issue).  I'm still digging into this because I haven't been able to
isolate a test case.

--
Tim Young
Elevate Software
www.elevatesoft.com
Image