To be productive i need to be able to do my development on more than one machine. When i'm home i d开发者_开发百科evelop on my main workstation but when i'm on the road i use my notebook. I can't use the sql server on my home network of course because i wouldn't have access when i'm on the road. I've tried to use an attached mdf file and sync my development folder between my workstation and my notebook but i always run into issues connecting to the mdf file. I don't remember all the error messages that i've got. I do remember having to delete the TR log file and have sql server recreate it in the past to solve the problem. Is there a better way?
You are scripting all of your work to an .SQL file, aren't you? If this is a brand new application, you should have scripts to DROP and CREATE the database, create all security accounts, create all schemas, create all database objects, etc. Then you just need to keep adding your development to the script, and run the whole thing against the current SQL Server you are using to make it up to date.
If you are working on an existing application, then you just need to script your changes for the current release. Syncing would consist of restoring your copy of the production backup and running your script with the changes.
I run sql server locally and swap a dated version of the production database on to my local environment every so often. I also use Dropbox to manage my ADPs and have them accessible where ever I go. It seems to work pretty well, but we're a small shop and there aren't too many changes to manage.
If I need to do serious work, I have a VM available at the office which is running a desktop environment so I'm always a VPN connection + RDP away from being local to the production db.
Do you have a version control system at work? If so, you might consider using SQL Source Control to develop on both your instances. When you return to work, simply sync the changes developed at home to version control.
I work for Red Gate as a product manager so I'd be interested to understand how you end up solving this problem.
Have you considered using VMWare or another virtualization package? I can offload my entire development environment onto almost any machine and be good to go in minutes.
I setup this up primarily for disaster recovery, but it is useful for the occasions when I need to hit the road and can take everything with me.
精彩评论