I try to migrate some data from a Sybase 7.0 Database into a SQL Anywhere 12 Database. I do this via Sybase Central.
I connect to my target Database (it's an network DB). After that I use the Assistent to Migrate a Database. If I try to test the connection I get an error message "Connection failed" "Entrypoint for Memory-DLL (dbcis12.dll) couldn't performed" Any tips? |
Specifically, this error means that the database server's DLL search path does not contain a binary-compatible version of "dbcis12.dll".
>> Any tips? Yes: do not use the Migration Wizard to attempt SQL Anywhere database rebuilds - this is more complicated to set up than what you really want to do. (The Migration Wizard is used for importing data from any generic database type, not just SQL Anywhere via the 'Remote Server' capability). Instead, you should follow the listed steps for doing this upgrade operation in the documentation for upgrading SQL Anywhere databases, specifically (the "Unload Database" wizard if done through Sybase Central). answered 14 Aug '12, 12:57 Jeff Albion The "Connection failed" error caused by an version conflict of dbcis12.dll. It doesn't fit to dbsrv12.dll. But now I have the next problem. I have create a ODBC connection to a version 7 DB (connection is successfull). If I want to create my Remote Server with this ODBC conection I get the message "connection to server couldn't release..." This Error causes by creating Remote Server with Sybase Central and Interactive SQL (SQL Commands).
(15 Aug '12, 01:44)
ategeler
|
remote possibility - the only time I've seen that error before was when there was a mismatch of versions - the dbcis12.dll version & build number didn't match the dbsrv12.dll. answered 03 Aug '12, 07:03 Justin Willey |
you might be better off unloading your ASA7 db using Sybase Central, create a new db using ASA12 and running the reload.sql file (from asa12) iSQL. i've upgraded many asa8 to asa11 db's using this technique. Tom Mangano answered 03 Aug '12, 15:51 Tom Mangano |
I give a short explanation what I want to do. We have more than 5000 customer database (Version 7.01), the maximum size is up to 200 GB. We need to migrate the data from the old database into the new Version 12 database. I think the unload/reload variation is not the right way... If I understand the remote server functionality in the rigth way I have access to every table and I can select/migrate the data directly into the new DB. We handle salesdata and we want to create a tool to migrate day by day in different space of time. answered 15 Aug '12, 01:59 ategeler Hm, unless you have particular reasons not to do so (which I don't know by nature), the common way of "migrating from v7 to v12" is by rebuilding the database (aka unloading/reloading). And obviously you can do this in a very automated fashion - by using scripts/batches with DBUNLOAD and the like instead of a GUI-based approach. You can also use this approach to rebuild databases at customer sites, i.e. without the need to have access to them yourself. FWIW, when unloading the data, you should not use the v7 Unload Wizard (or DBUNLOAD), but the v12 one - this is documented in the link form Jeff's post.
(15 Aug '12, 03:47)
Volker Barth
|
Please keep in mind that rebuilding the database using DBUNLOAD is the only way to get a database that runs on a version 12 server. The reason is that we have changed the database file format with version 10. answered 16 Aug '12, 10:44 Hartmut Branz True, however one could surely also use a "fresh/empty" v12 database with the according schema and use remote data access to copy the data from the old database, either by
I haven't used that method myself - but that's what ategeler seems to be about to do, if my understanding is correct...
(16 Aug '12, 12:52)
Volker Barth
Replies hidden
This is what I want to do! I tried to create Remote Server with Sybase Central PlugIn but it doesn't work. I created a ODBC Connection to a Sybase 7 Database. The Connection works fine if I use InteractiveSQL. If I try to test the Remote Server Connection I get the following Error: [Sybase][ODBC Driver][SQL Anywhere]Verbindung mit dem Server 'TestODBC' konnte nicht aufgenommen werden: [Microsoft][ODBC Driver Manager] Der Datenquellenname wurde nicht gefunden, und es wurde kein Standardtreiber angegeben SQLCODE: -656 SQLSTATE: HY000 SQL Statement: CALL dbo.sp_remote_tables( 'TestODBC', NULL, NULL, NULL, 1 )
(06 Sep '12, 01:43)
ategeler
When do you get this message - from Sybase Central? And does the remote connection from ISQL work as expected? Note: The ODBC DSN must be defined on the machine where the "local database server" is running, and in case it's running as a service, it has to be a System DSN. (A File DSN on an accessible file path would do, as well). From the message I would conclude that the database engine cannot access the DSN "TestODBC". Given the fact that you're about to migrate thousands of databases, I can't imagine how to do this without an automated process, so I would very strongly prefer a batch/SQL-based approach over a Sybase Central GUI-based one...
(06 Sep '12, 02:53)
Volker Barth
Thank you very much! Now it's runs as desired. I have access to the ODBC Connection, can create the Proxy Server and Proxy Tables and I'm able to insert data to my version 12 DB with an select on my Proxy Tables. We will see if we can handle this on the custom site :-)
(06 Sep '12, 03:56)
ategeler
|