Showing posts from 2013

SQL Server Filestream Of Limited Use For Publicly Accessible Websites?

We have a new feature being developed for our publicly accessible websites that enables users to upload files into “the system”. At first glance the SQL Server Filestream feature looks perfect for this type of scenario however there are several limitations that cripple it’s usefulness in publicly accessible environments.The SQL Server Filestream feature has two modes of operation. In the first mode all file access is performed through transact SQL. Even though the file is stored on the SQL Server’s filesystem it is access via T-SQL and is returned as a blob (varbinary(max)). This is essentially the same as storing the file in the database as a blob.In the second mode, the application queries the filestream enabled table to get the handle of the file. It then “streams” the file using a SMB connection to the SQL Server. This is by far more efficient that accessing the file via T-SQL. It’s more efficient because SQL Server is doing what it does best, returning data sets, and Windows Serv…

Problems Booting Centos Guest In A Virtual Machine

Problem Booting into a fresh Centos installation inside a virtual machine results in a black screen. The Centos login screen does not appear. This problem has been replicated in VMWare Workstation 9, VMWare ESX 4.0, and Virtual Box.

Resolution This problem occurs when the Centos ISO is still attached to the virtual guest. Disconnect the Centos ISO and reboot the virtual machine.

Linux Error Message: inter-device move failed, unable to remove target: Is a directory

Trying to move some files from a network share to a USB drive on the Linux terminal and came up with the following unexpected error message:

inter-device move failed, unable to remove target: Is a directory 

In my case it turned out to be that the destination folder already existed. By changing the destination folder to a folder that didn't exist and the move worked straight away. It's weird because I would've assumed that the default behaviour would've been to merge the contents of the two folders and delete the source folder. I'll do some more research on this one when I get the chance.

Building The SQL Server 2012 Template (Version 1–With Windows Server 2008 R2 Core)

Why would we want to develop a SQL Server template? I can think of two main reasons. Firstly, configuring a SQL Server can be a time consuming process. By the time all the local policy settings, SQL settings etc have been configured it can take a full day!!! Templating speeds this up so that SQL Server deployment should take no longer than 30 minutes – simply deploy the template and reconfigure a handful of settings specific to the instance. Secondly templates help standardise the environment. This is particularly important when you have a number of DBAs in a team and everyone does things that little bit different.Before I go too much further it’s important to understand the design philosophy I’m taking with this approach. Rather than having a few large monolithic virtual SQL Servers I’m looking at having numerous smaller virtual SQL Servers. These smaller SQL Servers are easier to move around in virtual environments that use high availability technologies like Vmotion or Live Migrati…