Saturday, September 6, 2014

how to tell collation


SELECT 
   DATABASEPROPERTYEX('[DBNAME]', 'Collation') DBCollation
 , SERVERPROPERTY ('Collation') "ServerCollation";

Wednesday, July 30, 2014

apache2

Notes for managing vhosts on apache2 (Apache 2.2.16 Ubuntu)



Add new vhosts:
1. create folder for site in /var/www/vhosts/
2. create vhost file in /etc/apache2/sites-available
3. create ln to sites-available file from sites-enabled
4. Restart Apache
/etc/init.d/apache2 restart



To check version:

apache2ctl -v or apache2 -v 

Friday, July 18, 2014

Steps to clean install new Mule ESB server version

  1. unregister old version in MMC
  2. mule stop
  3. mule remove
  4. archive old version folder
  5. remove old version folder
  6. unzip new version of mule
  7. Change %MULE_HOME% environmental variable to point to new version
  8. start new command shell
  9. check echo %MULE_HOME% to confirm value set to new version
  10. mule -installLicense licensefile.lic
  11. mule install
  12. mule start
  13. register new version in MMC
  14. deploy mule apps

Find OS User for command shell spawn from SQL Server context

If the policy on the server allows execution of xp_cmdshell then can find out the windows user that owns the spawned shell to handle OS commands executed from within sql server context


   EXEC xp_cmdshell 'whoami'

to get the value into a variable can do following


   DECLARE @whoisit nvarchar(4000)
   CREATE TABLE #test ( output nvarchar(4000) null )

   INSERT INTO #test (output)
   EXEC xp_cmdshell 'whoami'

   SELECT top 1 @whoisit = output 
     FROM #test 
    WHERE output IS NOT NULL

   SELECT @whoisit "whoisit"

   DROP TABLE #test

Thursday, July 17, 2014

Permission paths for login



You can look for the permission paths used by a login as follows:

EXEC xp_logininfo 'DOMAIN\USER_A', 'all'

Wednesday, June 25, 2014

SQL Server 2012: Kill all processes for a specific database



          SELECT 'KILL ' + cast(A.session_id as varchar)
            FROM sys.dm_exec_sessions A WITH (NOLOCK)
      INNER JOIN sys.databases B WITH (NOLOCK)
              ON A.database_id = B.database_id
           WHERE B.name = 'your.dbname.here'


Tuesday, February 11, 2014

Why don’t software development methodologies work?

My long standing thesis that you cannot apply assembly line theory to software development, it is the people that make it succeed or fail not the process.

People all too often look to a tool or a process to fix their problem, but what typically happens is that all these things serve to do is divert attention away from the problem and distract people with process and tools.

Kind of like buying gym memberships or exercise equipment expecting them to make you healthy.  The thing is, if someone isn't already exercising on their own (jogging, doing push-ups and sit-ups), then no amount of equipment or tools will solve their problem.  Instead, if a person is already in the right mindset and demonstrating the right behavior, then tools can help leverage performance to the next level -- basically do the right thing, better.

My experiences and conclusions mirror those of the author of the article linked to below:

Why don’t software development methodologies work?

[Excerpt] It’s common now for me to get involved in a project that seems to have no adult supervision. Surprisingly, left to themselves programmers don’t revert to cowboy coding—they adopt or create methodologies stricter and more filled with ritual than anything I experienced in 1980. In fact programmers today can be much more rigid and religious about their methodologies than they imagine a 1970s-era COBOL shop was. I now routinely get involved with projects developed by one or two people burdened with so much process and “best practices” that almost nothing of real value is produced.