We think we're having performance problems, and among the areas of investigations is the tempdb database. Since it resets itself after SQL is restarted, is there a way to find out how big it has grown in the past ? Does leaving it at the default size cause a performace hit ?? Right now it's 8.75 MB, with 7.38 MB available, which sounds pretty harmless.
Everywhere I read, it states that running SQL Profiler can affect performance of your SQL Server. My question is - how much of an impact will it really make? Will I see a 1% degredation in peformance? 5%? 50%? I haven't been able to find a good answer. We currently have SQL Profiler running all day long for almost 3 years, and the databases are still humming.
Is it the amount of data you are requesting from the trace that affects performance? There are some compliance tools out there (Idera Compliance Manager, IPLocks, etc) that run a profiler trace to get data. There are other DBAs in my organization who don't want to use them because "profiler traces will degrade my SQL Server performance". How true is this really.
Any help I can get would be extremely appreciated.
Does multiplication with 1 affect query performance?I have a a stored procedure that converts results to another unit if required. In alternative 1 below, the results are returned with a separate select statement if no conversion is necessary - in other words, no multiplication with a conversion factor is required. However, the code is not very nice since I need to repeat the select statement again in case a conversion is required, this time including the conversion factor.Alternative 2 uses cleaner-looking code. The conversion factor is set to 1 if no conversion is required, and a single SELECT statement is used to return the data. The @factor variable is defined as a float.I would rather use alternative 2, but I wonder if there is any performance penalty for doing that if no conversion is required since the results are always multiplied with the @factor? Or can SQL server somehow understand that @factor = 1 and no multiplication is required?--- Alternative 1: ---IF @fromunit_sid = @tounit_sid-- Return unconverted results SELECT ISNULL(ls_totalWaterConsumption,0) AS ls_totalWaterConsumption,ls_theoreticalWaterConsumption AS ls_theoretical_WaterConsumption,ls_totalWaterConsumption - ls_theoreticalWaterConsumption AS ls_extra_WaterConsumption FROM Results WHERE scenario_id = @scenario_idELSEBEGIN -- Get conversion factor EXEC getConversionFactor @fromunit_sid, @tounit_sid, @factor OUTPUT -- Get the converted results SELECT ISNULL(ls_totalWaterConsumption * @factor,0) AS ls_totalWaterConsumption, ls_theoreticalWaterConsumption * @factor AS ls_theoretical_WaterConsumption, (ls_totalWaterConsumption - ls_theoreticalWaterConsumption) * @factor AS ls_extra_WaterConsumptionFROM Results WHERE scenario_id = @scenario_idEND --- Alternative 2: ---IF @fromunit_sid = @tounit_sidSET @factor = 1ELSE -- Get conversion factor EXEC getConversionFactor @fromunit_sid, @tounit_sid, @factor OUTPUT
-- Get the converted results SELECT ISNULL(ls_totalWaterConsumption * @factor,0) AS ls_totalWaterConsumption, ls_theoreticalWaterConsumption * @factor AS ls_theoretical_WaterConsumption, (ls_totalWaterConsumption - ls_theoreticalWaterConsumption) * @factor AS ls_extra_WaterConsumptionFROM Results WHERE scenario_id = @scenario_id And another question: is using an IF function considerably faster than making a call to another stored procedure?In alternative 2 above I use an IF statement to check if @fromunit_sid = @tounit_sid, and . But in fact the function getConversionFactor that I'm calling does exactly the same thing: if I pass in identical from- and to-values, it simply returns 1, so I could omit the IF statement completely and just use alternative 3. But is it slower?--- Alternative 3 -- Get conversion factor EXEC getConversionFactor @fromunit_sid, @tounit_sid, @factor OUTPUT
I have a db which I have little control over most of it's makeup because of the vendor supplied tools. We currently have over 700 tables and 19000 columns. Has anyone seen a problem or saturation pont with these kinds of numbers? The database delivered to the clients will be from 2-50 gig depending on the site. I can probably through hardware at problems, but if anyone has been down this road any suggestions are appreciated.
I'm considering adding domain integrity checks to some of my database tableitems. How does adding such constraints affect SQL Server performance? Forexample, I have a simple constraint that restricts a couple of columns tohaving values within the values assigned in my application by anenumeration:(([Condition] >= 0 and [Condition] <=3) and ([Type] >= 0 and [Type] <=2))This enforces domain integrity for two enumerations having values 0, 1, 2, 3and 0, 1, 2 in the application. Is this an efficient way of performing suchchecks? What are the pitfalls of domain integrity checking?ThanksRobin
Recently we added a new table into our SQL2000 database specifically to store scanned in images of documents. This new table contains a PK field, a couple of datetime fields, a couple of char(1) fields and one 'image' field.
Before adding this table, the database size was approx 6GB. Six months after adding this new table, the database has grown to 18GB - 11GB of this is due to the scanned in images.
Would this new table affect the SQL performance with regards to accessing other data in the database that has nothing related to the new table?
If so, would moving this new table into it's own database be recommended?
I think this is a question for the specialists among us.
Can I use one general reporting server (installed on instance MAINREPORTING) for multiple customers who all have their own sql instance (CUST1, CUST2, CUST3, ..) I would use UserAuthenciation on the reportserver url to display the specific reports customers can use.
Is this possible, and what do i have to take care off concerning installation and/or configuration (especially on the reporting side) ?
I am running performance monitor on a number of servers without any problems, however on one server, when I select SQL Server Log, It does not show a list of the available db's under the instances.
Other counters, say under SQL Server appear fine.
The server is running SQL 6.5 sp 4, I am running the monitor from an NT 4 Workstation, with full administrator rights on the server.
Thanks in advance for any help
(I have tried MS Tech Sup Online and can find no hits for this one)
i have sql server 2005 express running. during install, i had issues with a system dll that i found answers online and resolved. i am still very green, but i know much more now than i did at the time. i believe that as a result of the partial then failed installs i have multiple instances either fully or partially installed. when i am in the sql server mgmt express environment, it lists two sql engines. i only ever use one, and would like to safely remove the second without damaging or corrupting anything done with the other instance. my reasons for wanting to do this are twofold. first, i would like to free up the drive space taken up by the second instance. (i am a stickler for clean harddrive mgmt and maintenance). second, now that i have used the software and am somewhat more familiar with it, i would consider installing a second, intentional instance so that i may attempt to better customize some of the install-time settings and configurations. can anybody give me any pointers/ guide me in the direction of information on how to SAFELY go about this? thank you in advance for any help.
I created a second SQL2000 instance on a Windows 2000 server. The strange thing is that I can create an ODBC connection to the default instance but cannot for the new named instance. If I try from a client that has SQL installed on it, I can see both instances. Any idea why this is happening?
We're trying to decide if we should use a single large instance of SQL Server or multiple instances on the same server. This is for a dev environment.Have to limit max RAM per instance so no instance grabs it all.There will be I/O contention and CPU contention between instances since the different instances won't coordinate with each other.It limits the available RAM for In-Memory tables..It sets lower limits to the amount of RAM available for any given query, causing artificial "contention" even when there's nothing else running at the time.
According to the Task Manager, on my SBS 2003 Server, I'm running multiple instances of SQL. How do I determine which instance(s) are required to maintain server stability, and which are not. My Server resource use continues to be a perennial problem. Please advise.
Is it possible to have multiple instances attach the same database?
I have a scenario where I want to have on one node, a clustered instance and a non clustered instance and both instances attach the same singular DB on a filer.
If I want to install 2 instances of SQL2000, will it install the SQL2K executable files (inn folder) onto 2 different folders, or all instances in one folder but the databases are in different folders.
Please Help me on this. I installed the two instances SQL on one box. ONe is default instance called ACSQL1(actually machine name) and the other one is called ACSQL1/DEVELOPMENT. THrought the my client site of SQL 2000 I can access both instances. When I try to get connection from VB. I can access the default instance but I can not access the second instance. Any ideas about this??? Qun Lu
I am running SQL 7.0 as the default instance and SQL 2K as a named instance. Each is using a different port....7.0 is using port 1433 and 2K is using 1024. Everything appears to be up and running fine on the server. However, I am not able to access the 2K instance from a client. I have tried to use both TCP IP and named pipes setting them up using the server network utility and the client network utility. No luck anywhere. I continue to get connection errors...check network documentation...
Currently, I am running SQL Server 2000 with the default instance. I know SQL2K can run up to 16 instances simultaneously. I would like to add another instance but am unable to find documentation on how to add it. Books online tells me "about" multiple instances, but not how to set it up. I've obviously missed something somewhere. Can someone please direct me to a document that will help explain "how" to add another instance?
We have a DTS package that is submitted every minute by a SQL Agent job (2000). We see instances where before the first job is completed, the second one starts running.
Has anyone encountered this type of behavior before?
I have a need to add a second Sql instance to an existing cluster. However I read in this article http://www.sql-server-performance.com/articles/clustering/clustering_best_practices_p1.aspx
that this is not recommended. Does anyone know why this is or what problems I may encounter?
Its is running Sql 2005 on a 64 bit windows Server 2003.
Is there any limit on SQL server Multiple Instances? if we require to run 60+ Instances on single machine what will be the minimum hardware requirements.
Has anyone run SQL 2005 Standard Edition, 2 or more instances on one server... where you got the extended memory up to 2.8 GB on EACH instance of SQL Server? I've done the 2.8GB game on boxes with ONE instance, but don't think I tried it on a multi-instance box, to get the 2.8GB RAM each. Thanks, Bruce
I have a need to add a second Sql instance to an existing cluster. However I read in this article http://www.sql-server-performance.com/articles/clustering/clustering_best_practices_p1.aspx
that this is not recommended. Does anyone know why this is or what problems I may encounter?
Its is running Sql 2005 on a 64 bit windows Server 2003.
Himy first post in the data access forums, I really hope, someone can enlighten me here...I have a windows server 2003 running with 15 MSDE instances. No I would like to upgrade to SQL Server 2000 without crashing the existing instances... My perfect scenario woudl be- install sql server as new instance- move existing databases via detach / attach to the new instanceWill that work?
I need to put sql server 2000 enterprise and sql server 7 on the same box. For multiple instancing is it better to run with Win 2k Pro Server or Advanced Server. Please Elaborate.
Hi everybody. One of department want to place db application from one server somewhere else on corparation network for 3 month period. Problem is they want to keep it with max security. Company does not want set up another server , so we want to create another Instance and place database on it. 1. Is safe to keep 2 instances on same server ? 2. How remove access to this instance from members of local and domain admin role(If we deny acces to BuildInAdministrators how it is going to affect security?) Thank you
1.) Is it possible to install Analysis Services on multiple SQL Server 2000 instances? If it is, then can you instruct me as to how to perform the install. If it is not possible, then does one restrict access to cube data via the Database Role Manager?
ie. The host box is - DOILAB30 with Analysis Services & SP2 Instance - DOILAB30/DOILAB30_FIN (Can AS be installed here?)
Do I severely restrict the membership of OLAP Admins?
2). Re. AS maintenance. - How do I backup and restore OLAP dbs/cubes etc. Following a restore, what issues, such as cube users/permissions should I be aware of? (if any).
I am using sql2012 with partitiondb custom installation over 6 dbs on 4 servers, ~200GB per db. I am looking for the perfect graphic tool (similar to Perfmon+Activity Monitor) where I can monitor a wide-scope SQL environment. I am interested in data / log / table / index growth, buffer cache hit ratio, average wait time, physical/logical reads/writes and such. I am interested in real-time / time-range metrics. I know I can issue immediate queries against dm_os_performance_counters / dm_os_buffer_descriptors / dm_exec_query_stats and get some of the relevant data, but is this the only way?Also, for your opinnion, what are the most crucial metrics to monitor when dealing with multiple dbs?
I have installed two mssql 2000 MSDE sp4 instances on WinXP SP2. I can connect both instances from local machine. But when I try from remote PC, I can only connect to one with default instance name and can't connect to another one ComputerNameInstanceName.
I set the windows firewall off in WinXPSP2. But still can't connect.
I also try with mssql2000 MSDE sp3 instances. It is same ask sp4. Please help!!!!!!