Shrink database files and DBCC CheckDB

Shrinking database files is never a good idea. Read this article about alternative method on removing free space from the files: http://www.sqlskills.com/blogs/paul/why-you-should-not-shrink-your-data-files/.

In rare occasion when you decide to do this make sure you run DBCC CHECKDB after shrinking the file. You may encounter allocation errors:

CHECKDB found 1 allocation errors and 0 consistency errors in database…

Some of these errors could be fixed by running table or index rebuild command:

ALTER TABLE dbo.Test_1 REBUILD;

 

Share

MSSQL Tips: Tip #26 – Export Data from IBM DB2 iSeries to SQL Server

Featured

Steps to install a data source driver and to configure an ODBC connection to the IBM DB2 for i (iSeries). Also an example of SSIS (SQL Server Integration Services) package that exports data from the iSeries to a SQL Server database.

Please read my latest MSSQL Tip: “Export Data from IBM DB2 iSeries to SQL Server“.

Check out all of my tips here: http://www.mssqltips.com/sqlserverauthor/94/svetlana-golovko/.

Share

MSSQL Tips: Tip #24 – SQL Server 2016 Query Store Queries

Featured

What are some practical applications of using the Query Store? What queries can be run against the Query Store? What sort of questions can I get answered?

Please read my latest MSSQL Tip: “SQL Server 2016 Query Store Queries“.

Check out all of my tips here: http://www.mssqltips.com/sqlserverauthor/94/svetlana-golovko/.

Share

MSSQL Tips: Tip #23 – SQL Server 2016 Query Store Example

New tip with example on how to use SQL Server 2016 Query Store, how to track multiple execution plans and how to force an efficient plan.

Please read the latest MSSQL Tip: “SQL Server 2016 Query Store Example“.

Check out all of my tips here: http://www.mssqltips.com/sqlserverauthor/94/svetlana-golovko/.

Share

MSSQL Tips: Tip #22 – Compare SQL permissions using SQL Server Data Tools

Featured

In this new tip you will find out how to use Visual Studio and SQL Server Data Tools to compare a database permissions and to copy permissions (including users and logins).

Please read the latest MSSQL Tip: “Compare SQL permissions using SQL Server Data Tools“.

Check out all of my tips here: http://www.mssqltips.com/sqlserverauthor/94/svetlana-golovko/.

Share

MSSQL Tips: Tip #21 – SQL Server 2016 Query Store Introduction

Featured

As promised here is the first tip about SQL Server 2016 Query Store.

Please read the MSSQL Tip here: “SQL Server 2016 Query Store Introduction“. Stay tuned for more tips about the Query Store.

Check out all of my tips here: http://www.mssqltips.com/sqlserverauthor/94/svetlana-golovko/

Share

SQL Server 2016 CTP 2.2 is now available

SQL Server 2016 CTP 2.1 became available on June 24th 2015 about one month after Microsoft made public SQL Server 2016 CTP 2.0.

Today CTP 2.2 is available for download. Among all of the new Database Engine features Query Store stands out as a great addition to the performance tuning tools currently available out of the box.

Stay tuned for the MSSQLTips articles about SQL Server 2016 Query Store.

Share

MSSQL Tips: Tip #20 – Monitor SQL Server Master Database Changes with WMI Alerts

In this new tip you will find out how to setup monitoring of the master database and get real time notifications when the new objects created there.

Please read the latest MSSQL Tip: “Monitor SQL Server Master Database Changes with WMI Alerts“.

Check out all of my tips here: http://www.mssqltips.com/sqlserverauthor/94/svetlana-golovko/.

Share

ORA-01013 error troubleshooting

A user reported an application error ORA-01013. The error message was: “User requested cancel of current operation”. The user retried it several times, but had the same result.

The application uses Oracle database and there were no changes to the database since the last time when user was able to run this process.

The user was able to run the process in the test environment without any issues as well. I ran the same query from DBA query tool and the query completed successfully.
So, my first thought was that there was something wrong with application server itself.
After 10 minutes of checking similar issues (ORA-01013 error) online and on Oracle support site I found no explanation of why would this happen.

I started analyzing the query’s execution for both – for DBA’s execution and for the application.

So, when the query was running from the application it was running just for 15 seconds and then it was just cancelled (with error ORA-01013). It was cancelled every time after exact 15 seconds. When I ran the query myself it was running for about 2 minutes. The interesting thing was that SQL IDs for these two executions were different.

My next step was to find the query in cash plan:

select address, hash_value from v$sqlarea
where sql_text like ‘SELECT COUNT(*)%HERE IS THE PROBLEM SQL…%’ and sql_id<>’6munh028ah2bm’;

Where “6munh028ah2bm” was SQL ID of my execution.

Then I removed the “bad” plan from the cash:

exec sys.dbms_shared_pool.purge(‘00000004E2C255D8,1992735705′,’c’);
commit;

We have not tried to test it right after this, so I am not sure if this is enough to fix the problem. The next steps were to gather statistics for the tables related to the query.

This fixed the problem.

I thought I need to share this as I was not able to find anything helpful on the web during my troubleshooting. Hopefully next time it will safe time to somebody.

Share