|
sql
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Create Database on the server
I would like to ask those of you, who are SQL Server admins. Our software product creates a database and all tables that are needed for this product to work properly. In the previous versions, our product installer just deployed database to the Server (created the new database and all necessary tables). Recently our development dept. get requirements from colleagues from next department, that the product should be installed this way: 1/ database admin will create and empty database (no tables in it) 2/ our installer will connect to this empty database and create needed tables in it I would like to ask, if this is the way how you allow creating databases on your servers. To me it seems like non standard approach, as what we are doing it is we are actually legalize the existence of a corrupted database on the server: an empty database (no tables within it) is from the application (product) point of view, a corrupted database. What would be your opinion? Thanks, Lubomir I've seen both ways in practice. I'd argue that most DBAs would prefer not to
allow a product to create databases because the database files may not be created on the right drives. Personally, I believe it's better practice to have the DBA create the database, and allow the product to create the objects only. But then, I've seen products that create databases on a regular basis. If these databases are trivial, I'd just let the product create them. It's too much trouble to create them manually. Linchi Show quoteHide quote "Lubomir" wrote: > Hi, > > I would like to ask those of you, who are SQL Server admins. > > Our software product creates a database and all tables that are needed for > this product to work properly. > > In the previous versions, our product installer just deployed database to > the Server (created the new database and all necessary tables). > > Recently our development dept. get requirements from colleagues from next > department, that the product should be installed this way: > > 1/ database admin will create and empty database (no tables in it) > 2/ our installer will connect to this empty database and create needed > tables in it > > I would like to ask, if this is the way how you allow creating databases on > your servers. To me it seems like non standard approach, as what we are doing > it is we are actually legalize the existence of a corrupted database on the > server: an empty database (no tables within it) is from the application > (product) point of view, a corrupted database. > > What would be your opinion? > > Thanks, > Lubomir
Show quote
Hide quote
"Lubomir" <Lubo***@discussions.microsoft.com> wrote in message I'm with Linchi on this. How does a third party know my SAN setup, news:A336D1B6-68E8-4108-B77E-347AB1735FDC@microsoft.com... > Hi, > > > I would like to ask, if this is the way how you allow creating databases > on > your servers. To me it seems like non standard approach, as what we are > doing > it is we are actually legalize the existence of a corrupted database on > the > server: an empty database (no tables within it) is from the application > (product) point of view, a corrupted database. > > What would be your opinion? > performance issues, potential growth, disk sizes, etc. if you are responsible for the server, you should at the very least mandate exactly how the 3rd party set up their database. Lubomir (Lubo***@discussions.microsoft.com) writes:
Show quoteHide quote > I would like to ask those of you, who are SQL Server admins. I work with a product, and I've written a build-tool which we use to> > Our software product creates a database and all tables that are needed for > this product to work properly. > > In the previous versions, our product installer just deployed database to > the Server (created the new database and all necessary tables). > > Recently our development dept. get requirements from colleagues from next > department, that the product should be installed this way: > > 1/ database admin will create and empty database (no tables in it) > 2/ our installer will connect to this empty database and create needed > tables in it > > I would like to ask, if this is the way how you allow creating databases > on your servers. To me it seems like non standard approach, as what we > are doing it is we are actually legalize the existence of a corrupted > database on the server: an empty database (no tables within it) is from > the application (product) point of view, a corrupted database. build a database from scripts, be that at home for test/dev or at a customer site. The build tool takes a database name as parameter, and that database must exist, or else the tool fails. Because, how could my tool know how the database should be created? For a local development database a simple CREATE DATABASE could do. But for a production database, size and exactly file locations can only be determined on that site. So I think your colleagues in the next department has everything right. -- Erland Sommarskog, SQL Server MVP, esq***@sommarskog.se Links for SQL Server Books Online: SQL 2008: http://msdn.microsoft.com/en-us/sqlserver/cc514207.aspx SQL 2005: http://msdn.microsoft.com/en-us/sqlserver/bb895970.aspx SQL 2000: http://www.microsoft.com/sql/prodinfo/previousversions/books.mspx Erland;
As a user of these vendor packages, I have seen too many of them insisting on creating databases from within the products. Linchi Show quoteHide quote "Erland Sommarskog" wrote: > Lubomir (Lubo***@discussions.microsoft.com) writes: > > I would like to ask those of you, who are SQL Server admins. > > > > Our software product creates a database and all tables that are needed for > > this product to work properly. > > > > In the previous versions, our product installer just deployed database to > > the Server (created the new database and all necessary tables). > > > > Recently our development dept. get requirements from colleagues from next > > department, that the product should be installed this way: > > > > 1/ database admin will create and empty database (no tables in it) > > 2/ our installer will connect to this empty database and create needed > > tables in it > > > > I would like to ask, if this is the way how you allow creating databases > > on your servers. To me it seems like non standard approach, as what we > > are doing it is we are actually legalize the existence of a corrupted > > database on the server: an empty database (no tables within it) is from > > the application (product) point of view, a corrupted database. > > I work with a product, and I've written a build-tool which we use to > build a database from scripts, be that at home for test/dev or at a > customer site. The build tool takes a database name as parameter, and > that database must exist, or else the tool fails. > > Because, how could my tool know how the database should be created? > For a local development database a simple CREATE DATABASE could do. > But for a production database, size and exactly file locations can > only be determined on that site. > > So I think your colleagues in the next department has everything right. > > -- > Erland Sommarskog, SQL Server MVP, esq***@sommarskog.se > > Links for SQL Server Books Online: > SQL 2008: http://msdn.microsoft.com/en-us/sqlserver/cc514207.aspx > SQL 2005: http://msdn.microsoft.com/en-us/sqlserver/bb895970.aspx > SQL 2000: http://www.microsoft.com/sql/prodinfo/previousversions/books.mspx > > I'm with the others. Ideally, you would have an option to help with
creation of the database (one can imagine various degree of help here). -- Show quoteHide quoteTibor Karaszi, SQL Server MVP http://www.karaszi.com/sqlserver/default.asp http://sqlblog.com/blogs/tibor_karaszi "Lubomir" <Lubo***@discussions.microsoft.com> wrote in message news:A336D1B6-68E8-4108-B77E-347AB1735FDC@microsoft.com... > Hi, > > I would like to ask those of you, who are SQL Server admins. > > Our software product creates a database and all tables that are > needed for > this product to work properly. > > In the previous versions, our product installer just deployed > database to > the Server (created the new database and all necessary tables). > > Recently our development dept. get requirements from colleagues from > next > department, that the product should be installed this way: > > 1/ database admin will create and empty database (no tables in it) > 2/ our installer will connect to this empty database and create > needed > tables in it > > I would like to ask, if this is the way how you allow creating > databases on > your servers. To me it seems like non standard approach, as what we > are doing > it is we are actually legalize the existence of a corrupted database > on the > server: an empty database (no tables within it) is from the > application > (product) point of view, a corrupted database. > > What would be your opinion? > > Thanks, > Lubomir
Other interesting topics
How to Enqueue Messages With Service Broker in a Timely Fashion
Activity Monitor not showing Database names Server2000 Std Edition Timeouts Unable to access the tape for database backup purpose Maintenance did not delete old files stats_ver_current? Upgrading from SQL Express to SQL Enterprise share Template location for SSMS using profiler to capture errors Missing Index Details |
|||||||||||||||||||||||