We need to synchronize database and image files between two servers. The source server has sql server 2000 and the destination server has sql server 2008. We need to synchronize data in some tables in sql server 2000 so that the updated data comes to sql server 2008 every once in a while. Similarly for the folder where images are stored.
I tried to implement Microsoft sync framework (http://msdn.microsoft.com/sync) with WCF to achieve the goal. I ran the following project successfully for two databases in SQL Server 2008:
http://code.msdn.microsoft.com/Database-SyncSQL-Server-e97d1208/sourcecode?fileId=19017&pathId=519811259
However, when I tried to synchronize data between database, one in sql server 2000 and sql server 2008, then I could not synchronize data.
Questions:
Is there anyway to synchronize data between sql server 2000 and sql server 2008?
If not, are there any other possible architectures i can implement to achieve the objective?
the minimum Sql Server version for the sync provider in the sample you used above is Sql Server 2005 SP2 (where min_active_version() was introduced.)
try using the steps in this link so you can overrride the commands and make them work against Sql 2000: Synchronizing Other ADO.NET Compatible Databases
Related
I was wondering if this is possible: I want to create 2 tables in an Azure SQL database which I want to use as staging tables for some data selected from a SQL Server 2005 database on an on-premise server.
Is there any good way of doing this?
Update:
Followed the Linked-Server Guide and got this error: I need to add a linked server to a MS Azure SQL Server
The weird thing is i just managed to login to the Azure DB on with Those exact credentials. Am i missing some security configuration somewhere?
You don't necessarily need to create a linked server to move data from an on-premise SQL table to Azure SQL. Tools like SSIS come to mind, where a linked server isn't necessary. Or a tool like SSDT where you could use the Data Compare feature to move data. There is also Azure Data Factory.
Support for linked servers and distributed queries against a SQL Azure Database is a feature available since September 2012 as explained here. On my tests it does not work correctly on SQL 2012 and does not work on SQL Server 2008 R2 and earlier versions. You may need to upgrade to SQL Server 2014 to create a fully functional linked server.
Hope this helps.
My .net windows application uses sql server 2005 database…is sql server 2005 required on the client machines?
my .net application updates tables in the databases, retrieves data also.
If you have a central database server - no, you don't need the full SQL Server on your clients - just the SQL Server client parts.
If you want to run the whole SQL Server 2005 on each machine - then yes, you need SQL Server on each machine in that case. Most likely I'd use SQL Server 2005 Express for local work.
It really depends on your scenario - do you want to have SQL Server locally on each machine?? Then each user has his/her own database and no data is shared.
Most of the time, you would want to have a single, central SQL Server machine and all the clients connect to it, share and use the same data.
Is it recommended to use two versions of SQL Server (2005 and 2008) for storing data of an application. We have a situation where we have an existing web application consuming SQL server 2005 as a database. Some enhancements in the application required us to solution a FILESTREAM data store. Now we have our data in SQL Server 2005 and associated FILESTREAM data in SQL Server 2008. Being very new to SQL Server I would like to ascertain how bad is this in terms of performance? How can we achieve atomicity across both the database versions, is it via using a linked server or some other mechanism? Any alternative solutions would be fine except that we just cannot migrate the existing application to SQL Server 2008.
To keep your transactions ACID, you can use distributed transactions at a stored procedure level, or from a code level using DTC (e.g. via a .net TransactionScope). DTC would need to be present on both SQL Servers, and on your App Server as well if you do the ACID from there. There is some overhead with DTC
Edit : You will also need to link the servers with sp_addlinkedserver and provide credentials with sp_addlinkedsrvlogin
The ERP system that I use is "stuck" in SQL 2000. The vendor states that it will not work, even in 2000 compatibility mode with any version of SQL higher than 2005. Due to corporate red tape I cannot use SQL 2005.
Can I install 2008 on the same server as a separate instance and then use the tools of 2008 to create SSRS and SSAS projects?
Can they read directly from the SQL 2000 databases?
If not, could I transfer data from the 2000 instance to the 2008 instance with log shipping or perhaps a simple daily back up and restore?
If necessary, I could set up 2008 on a separate server and then would attempt to move data from 2000 to 2008 periodically and run SSRS and SSAS on that. Would this work?
Any input would be appreciated.
Yes, on all accounts.
SQL Server is absolutely backwards compatible, and can use SQL Server 2000 as a source for SSAS and SSRS. It uses the SQL 10.0 driver, which can connect to 2000 instances with no issue.
That being said, I'd look into using SSIS to bring data into a 2008 instance and star it out, since typically, ERP systems are in 3NF, which is not very suitable for SSAS. You're much better off with a star schema for this.
There is no reason I can see that this is not possible unless you're doing some form of failover clustering, and then you would just need to put the instance of SQL 2008 on a separate server. SSAS and SSRS should be able to access the SQL 2000 database natively with no need for ETL that I can think of.
Is there any way of copying a database from oracle to sqlserver 2005? Thanks
You can migrate from Oracle to SQL Server with Microsoft's SQL Server Migration Assistant. It is available both to SQL Server 2005 and 2008.
If you have lots of (complicated) stored procedures and such, the migration might get a bit tedious. I have only experience with databases with simple procedures and could just rewrite them and do the data copy to empty tables in SQL Server with the import functionality using Oracle connector (usable from SQL Server if you have installed Oracle client tools to the SQL Server machine). This way I didn't even need to use the Migration Assistant tool.