Deploying a SQL Server Docker Container

Total: 0 Average: 0

Introduction

Containerization has become the dominant topic after the Server Virtualization and Cloud Computing Eras. While many thought leaders assert that current computing paradigms are not particularly new, containerization, as we have it today, can be viewed as having been born after cloud computing. Using containers on-premise allows us to perform migration to the cloud while building a containerized environment mimics the features of solutions deployed in the cloud.

Progression of Computing Read More

Move System Databases in the SQL Server Failover Cluster

Total: 2 Average: 3

Recently, I was assigned to a project – our customer purchased a new SAN, and they wanted us to replace the old one with a new SAN. User and system databases utilized SAN, meanwhile, the operating system and SQL were installed on the server’s local disks. Lucky us..!! The idea was to move the existing user and system databases to a new SAN and keep the downtime as minimum as possible. So, to minimize the downtime, instead of reinstalling OS and SQL, we decided to use the following approach.

  1. Attach a new SAN to an existing server, create new drives on it, and add those drives to an existing failover cluster instance.
  2. Stop SQL Server, copy master, model, and msdb databases on new drives and start the SQL services.
  3. Move User databases to new drives and remove the old SAN.

Read More

Filtering Data in T-SQL

Total: 0 Average: 0

Introduction

In most scenarios when working with data, users do not require all the data in each instance of a query. T-SQL (and SQL of course) provide means of retrieving only part of a data set in a table or a similar structure. The WHERE, HAVING, TOP and OFFSET-FETCH clauses are used to accomplish this in different ways. Read More

DevOps Solutions for Database Development Automation


Total: 1 Average: 5

What is DevOps?

Database DevOps is a philosophy that comprises the following concepts:

  • automating the development, deployment, documentation, testing, and monitoring processes between software developers and operations engineers
  • integrating the development and operations processes to efficiently synchronize, validate, manage, and apply database changes

The Database DevOps practice is focused on improving the efficiency of database management. It helps with streamlining the process of deploying and improving databases by giving the ability to automate many aspects of the database lifecycle, thus speeding them up and simplifying them.

Therefore, DevOps is the best practice to unify development, operations, and quality assurance processes. Read More

How to Capture and Analyze SQL Server Events

Total: 1 Average: 3

When working as a SQL Server database administrator, you should have the skills to dive deeply into the ocean of the SQL Server Engine and find what is happening internally, in order to be able to detect, troubleshoot and fix any problem that you may face.
You can take benefits from the logs that are written by the SQL Server engine locally in the form of SQL Server logs or externally in the form of event logs, but you cannot consider them as the only source for your troubleshooting and tuning operations.

Read More

Collation in SQL Server

Total: 1 Average: 5

Introduction

You must have already heard the term “Collation” in SQL Server. Collation is a configuration that determines how character data sorting is done. This is an important setting that has a huge impact on how the SQL Server database engine behaves in dealing with character data. In this article, we aim to discuss collations in general and show a few examples of dealing with collations.

Read More

Using Transaction ROLLBACK in SQL Server

Total: 2 Average: 5

Introduction

Very recently, a colleague of mine came to me in desperation owning up that he had issued an update statement without a WHERE clause on a key application table. The implications on the front end would be dire, so he came to me directly because he urgently needed help with reversing the situation by any means before the emails and escalation started pouring in.

When we looked into the situation, we found that the changes have not been applied in the secondary database. In most cases, the lag between our primary and secondary databases is twenty minutes (we have a little staggering to avoid performance problems). Because my colleague asked for help immediately after realizing the error, we were able to recover the data from the secondary database. I described the value of such a delay in this article. Read More

SQL Server High availability: Add new disk to an existing failover cluster instance

Total: 0 Average: 0

In my previous article, I have explained the step-by-step process of installing a node in existing SQL Server Failover Cluster Instance. Along with that, I have also demonstrated manual failover and automatic failover.

In this article, I am going to demonstrate the process of adding a disk in a failover cluster and then move the existing database to a new drive. Read More

Dynamic Data Masking in SQL Server for beginners

Total: 1 Average: 5

The article introduces the basics of dynamic data masking (DDM)  in SQL Server along with its overview supported by a simple example of data masking implementation. Additionally, the readers are going to get familiar with the benefits of dynamic data masking. This paper also highlights the importance of data masking in day to day database development tasks when some fields must be masked due to their sensitive nature in order to comply with standard practices.

Read More

SQL Always On Availability Groups: Computer Objects

Total: 4 Average: 5

SQL Server Always On Availability Groups is Microsoft’s latest technology for addressing the High Availability and Disaster Recovery needs of organizations that use SQL Server. One big advantage of AlwaysOn is the ability to address both HA and DR in one implementation. We experienced the following key benefits of AlwaysOn:

  1. We can group related databases as part of a single Availability Group and have them failover together in case this is needed. This is especially useful for applications that depend on more than one database, such as Microsoft Office SharePoint, Microsoft Lync, and Sage.

  2. When compared to SQL Server Failover Cluster Instances, we find that storage as a single point of failure has been eliminated since each instance which constitutes a replica is assigned its own storage.

  3. With AlwaysOn, it is possible to configure HA and DR at once. This is achieved by creating a Multi-site Windows Failover Clusters as the foundations of your AlwaysOn configuration. Performing a Role Switch when using AlwaysOn is significantly simpler than doing it when using Transaction Log Shipping.

Read More