1 / 57

Database Migration in .NET

Database Migration in .NET. Continuous Database Evolution. story. 3. Claire Bennet : Database Administrator + Neat freak + Former cheerleader. Hiro Nakamura: Software developer + Haphazard + Addicted to manga. Mohinder Suresh:

willis
Download Presentation

Database Migration in .NET

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Database Migration in .NET Continuous Database Evolution

  2. story

  3. 3

  4. Claire Bennet: Database Administrator + Neat freak + Former cheerleader

  5. Hiro Nakamura: Software developer + Haphazard + Addicted to manga

  6. Mohinder Suresh: Software tester (PhD) + Detail-oriented + Efficiency expert

  7. Chapter 1: Hiro’s Bad Day

  8. meet Claire:

  9. Hi!

  10. I’m just finishing this SSIS package

  11. Sure!

  12. Strange. It used to work.

  13. Can you come back in 5 minutes?

  14. 45 minutes later:

  15. HIRO!!!

  16. Wha??

  17. 1 hour earlier:

  18. There’s gotta be a way to make this more generic

  19. I’ll just update the shared database to be more consistent with the domain model

  20. It will be fine...

  21. back in the present:

  22. DOH! Stupid shared database

  23. meanwhile:

  24. Hiro! I just upgraded the test database with that script that you gave me last week, but it doesn’t seem to be working. How do I know if the script has been applied correctly?

  25. If only I could go back in time and fix this...

  26. There has to be better way...

  27. what problems did you see?

  28. my list

  29. #1 Changes to shared database are immediately available to everyone (whether they want them or not)

  30. #2 Claire couldn’t easily see what had changed to the database

  31. #3 Suresh was applying database scripts one week after they were available

  32. #4 Hiro had no way to see if database changes were applied successfully

  33. how would you solve this?

  34. my prescriptions:

  35. Changes to shared database are immediately available to everyone (whether they want them or not) Separate database instances

  36. Claire couldn’t easily see what had changed to the database All database changes are under sourcecontrol

  37. Suresh was applying database scripts one week after they were available Automate database migration

  38. Hiro had no way to see if database changes were applied successfully Version all database changes

  39. THANKS!!

  40. Chapter 2: Tools

  41. dbDeploy.NET* http://dbdeploy.com

  42. Tarantino • http://code.google.com/p/tarantino/

  43. Migrator.NET • http://code.google.com/p/migratordotnet/

  44. immature

  45. enough slides already...

  46. show me the code

  47. dbDeploy.NET Pro: Con: • Simple • Supports SqlServer, Oracle, Sybase, HSQL, MySql • DBA-friendly • Needs better dev environment support

  48. Tarantino Pro: Con: • Easy to get started • Automates most dev db tasks • No control over version numbers • SQL Server-specific • Rebaselining? • Requires NAnt

  49. Migrator.NET Pro: Con: • Easy to get started • Cross-database support • Supports SqlServer, Oracle, MySql, Postgres • Data migration • Developer-specific • No way to easily capture SQL

More Related