How to replicate from SQL Server 2000 to SQL Server 2008 R2? I have SQL Server 2000 as publisher and SQL Server 20008 R2 as subscriber.

I want to replicate data from SQL Server 2000 to SQL Server 2008 R2 on a different machine.

Primary key fields are not defined on some tables so transaction replication is not a choice.

I think merge replication is not a choice because the Subscriber SQL Server version is higher than the publisher.

What can I do?
Bad news: SQL Server 2000 isn't officially supported. You're putting yourself in a situation where the link between these two servers could cause problems, and if you call Microsoft for support, you'll be out of luck.

Don't be That Guy who breaks the production server because he wanted to connect these two servers. Tell your management that SQL Server 2000 is out of support. SQL Server 2008 R2 has lots of cool features to help - rather than working with replication in an unsupported scenario, put your time into getting that old SQL Server 2000 box into a supported scenario.