Monday, March 12, 2012

integrated change management solution for Sql Server

Does anyone know of an integrated change management solution for Sql Server?
SQL Server does a crappy job of tracking changes. It doesn't even give you
the last date a object was altered (just the create date in sysobjects)
Im looking for a integrated database change management solution where the
developer doesn't have to serparately script out the objects and then hope i
t
is syncronized with the database later. In our environment the developers
have dbo permission and therefore I have no way to control and track changes
to the database schema (tables, procs). If the develper had an integrated
tool where they had to check-in/out of our source control (VSS) before
altering the schama we could tie application code (client) with the
corresponding database code.
Most products Ive seen just script out the DB objects and then check thoses
files into source code control. This includes Management Studio.
PaulI believe ApexSQL and Redgate Software offer solutions for this, although I
haven't personally used either one of them. You might also consider a
strategy of removing excessive rights from developers in your QA
environment, and only allow them to perform schema changes directly in their
development environment(s). Your QA folks and DBA's should be the only ones
with rights to modify the schema in the QA environment. That would force
all developer schema changes to go through your QA process as well before
being promoted to production.
"Paul_A" <PaulA@.discussions.microsoft.com> wrote in message
news:2D23FA34-1933-4A4D-B819-5E4926A35070@.microsoft.com...
> Does anyone know of an integrated change management solution for Sql
> Server?
> SQL Server does a crappy job of tracking changes. It doesn't even give you
> the last date a object was altered (just the create date in sysobjects)
> Im looking for a integrated database change management solution where the
> developer doesn't have to serparately script out the objects and then hope
> it
> is syncronized with the database later. In our environment the developers
> have dbo permission and therefore I have no way to control and track
> changes
> to the database schema (tables, procs). If the develper had an integrated
> tool where they had to check-in/out of our source control (VSS) before
> altering the schama we could tie application code (client) with the
> corresponding database code.
> Most products Ive seen just script out the DB objects and then check
> thoses
> files into source code control. This includes Management Studio.
> Paul|||On Feb 5, 11:44 am, Paul_A <P...@.discussions.microsoft.com> wrote:
> Does anyone know of an integrated change management solution for Sql Serve
r?
> SQL Server does a crappy job of tracking changes. It doesn't even give you
> the last date a object was altered (just the create date in sysobjects)
> Im looking for a integrated database change management solution where the
> developer doesn't have to serparately script out the objects and then hope
it
> is syncronized with the database later. In our environment the developers
> have dbo permission and therefore I have no way to control and track chang
es
> to the database schema (tables, procs). If the develper had an integrated
> tool where they had to check-in/out of our source control (VSS) before
> altering the schama we could tie application code (client) with the
> corresponding database code.
> Most products Ive seen just script out the DB objects and then check those
s
> files into source code control. This includes Management Studio.
> Paul
I don't know of a packaged solution for this, but I've built one in a
past life. I had a process that saved a snapshot of sysobjects,
syscolumns, and syscomments every five minutes, comparing the current
snapshot to the previous one. If any changes were detected, then I
would use sp_help to dump the contents of the object, which was then
published to a TWiki (http://twiki.org) running on a Linux box. I
used FreeTDS to let the Linux box talk to my SQL machines. It worked
quite well, if anything object changed, it was captured within a few
minutes, and the wiki gave me full version history.|||Have you looked at Visual Studio Team Edition for Database Professionals
(aka "Data Dude")?
http://msdn2.microsoft.com/en-us/te...m/aa718807.aspx

> Does anyone know of an integrated change management solution for Sql
> Server?
> SQL Server does a crappy job of tracking changes. It doesn't even give you
> the last date a object was altered (just the create date in sysobjects)
> Im looking for a integrated database change management solution where the
> developer doesn't have to serparately script out the objects and then hope
> it
> is syncronized with the database later. In our environment the developers
> have dbo permission and therefore I have no way to control and track
> changes
> to the database schema (tables, procs). If the develper had an integrated
> tool where they had to check-in/out of our source control (VSS) before
> altering the schama we could tie application code (client) with the
> corresponding database code.
> Most products Ive seen just script out the DB objects and then check
> thoses
> files into source code control. This includes Management Studio.
> Paul|||I'm in the process of downloading a trial version. "Data Dude" requires that
you have Visual Studio Team Suite and its big $$. I don't know what they cal
l
my subscription now that MSDN "universal" is discontinued but I have Visua
l
Studio Team Edition for Developers and that supposedly is not enough.
Paul
"Aaron Bertrand [SQL Server MVP]" wrote:

> Have you looked at Visual Studio Team Edition for Database Professionals
> (aka "Data Dude")?
> http://msdn2.microsoft.com/en-us/te...m/aa718807.aspx
>
>
>
>
>
>|||Hi Paul,
The trial edition requires team suite (you can install the team suite trial,
you don't need the real version). The reason was to not have to duplicate
the timebomb/trial functionality, not to make you actually buy team suite.
The real SKU that you would purchase is standalone, and does not require
team suite. According to one of the leads on that team:
"There is also a separate SKU named Visual Studio Team Edition for Database
Professionals; this is a standalone SKU that contains Visual Studio Pro and
installs the DBPro parts on top of it."
If you have further questions on the licensing of data dude or other
components of team system, you can send them to:
tsdext@.microsoft.com
Cheers,
Aaron
"Paul_A" <PaulA@.discussions.microsoft.com> wrote in message
news:A02A13EF-8D47-4479-9561-4BCEC3787409@.microsoft.com...[vbcol=seagreen]
> I'm in the process of downloading a trial version. "Data Dude" requires
> that
> you have Visual Studio Team Suite and its big $$. I don't know what they
> call
> my subscription now that MSDN "universal" is discontinued but I have
> Visual
> Studio Team Edition for Developers and that supposedly is not enough.
> Paul
> "Aaron Bertrand [SQL Server MVP]" wrote:
>|||Mike: I'll check out these products. About environment setup...our developer
s
only have read access to QA and Prod but my point is that unless you have a
deciplined team that follow a change process and that process allows for the
easliy retrieval of the change history Im lost.
"Mike C#" wrote:

> I believe ApexSQL and Redgate Software offer solutions for this, although
I
> haven't personally used either one of them. You might also consider a
> strategy of removing excessive rights from developers in your QA
> environment, and only allow them to perform schema changes directly in the
ir
> development environment(s). Your QA folks and DBA's should be the only on
es
> with rights to modify the schema in the QA environment. That would force
> all developer schema changes to go through your QA process as well before
> being promoted to production.
>
> "Paul_A" <PaulA@.discussions.microsoft.com> wrote in message
> news:2D23FA34-1933-4A4D-B819-5E4926A35070@.microsoft.com...
>
>|||Aaron: I just read up about Data Dude in this article. It follows the "scrip
t
out objects" model which is somewhat disappointing. Nothing is really new
here. It has all the same schema/data compare, unit testing tools that other
vendors (Red-gate, ApexSQL, Quest) are flogging.
http://msdn2.microsoft.com/en-us/library/aa730872(VS.80).aspx
Paul
"Aaron Bertrand [SQL Server MVP]" wrote:

> Have you looked at Visual Studio Team Edition for Database Professionals
> (aka "Data Dude")?
> http://msdn2.microsoft.com/en-us/te...m/aa718807.aspx
>
>
>
>
>
>|||On Feb 5, 12:49 pm, Paul_A <P...@.discussions.microsoft.com> wrote:
> Mike: I'll check out these products. About environment setup...our develop
ers
> only have read access to QA and Prod but my point is that unless you have
a
> deciplined team that follow a change process and that process allows for t
he
> easliy retrieval of the change history Im lost.
>
How do you move changes from Dev to QA/Prod? We have a similar
environment here, where developers have full access to Dev, but read-
only to QA and no access to Prod. Nothing gets moved to these
environments without DBA involvement, and even then only after being
given a DDL or DML script from the developer(s). Those scripts are
archived in Perforce.|||"Paul_A" <PaulA@.discussions.microsoft.com> wrote in message
news:5F6B7CB1-3EBA-4696-B486-A9F48303121C@.microsoft.com...
> Mike: I'll check out these products. About environment setup...our
> developers
> only have read access to QA and Prod but my point is that unless you have
> a
> deciplined team that follow a change process and that process allows for
> the
> easliy retrieval of the change history Im lost.
Dev environments are meant to be destroyed A Dev environment should be
able to be rebuilt fairly easily by either retrieving all QA-approved
scripts and running them, or alternatively by keeping a "master" box that
has all the latest and greatest QA-approved updates and imaging it back onto
the Dev boxes.
The change management process I usually use is to submit changes to QA, they
test and approve each change, and deliver the change to the DBA's to put
into production. It sounds like this might be similar to your process, so
my question is where is the breakdown in the change process really
occurring? If developers have read-only access to QA and Prod, and QA is
keeping track of approved updates and scripts, where is the discipline
lacking on the part of the developers? Are they not submitting changes to
QA? If not, then with read-only access to QA and Prod, it's not like they
can circumvent the process and put garbage code or DDL into production...
Just trying to understand your situation here... Thanks.

No comments:

Post a Comment