SQL Database Files

Today I encountered a little bit of a misconfiguraiton on the SQL Server for SCCM and WSUS.  The database files (.MDF) and log files (.LDF) were on the same drive.  That is not good for performance.  Ideally we would want a separate drive for the data files, log files, tempDB, and TempDB log file.  NOTE:  Depending on how many processors you have you may want to create multiple TempDB files on different drives.

Pretty easy to move all the databases.

  1. Look up how to move the Master database.  You will use SQL Configuration Manager to do this
  2. Start moving the system databases and then the user databases.  Plenty of information on the net in regards to this.  Basically it is an Alter Database command
  3. Stop SQL Server
  4. Move the files
  5. Start SQL Server
Posted in Uncategorized | Leave a comment

I’m back!

Hi everyone, the EmptyGarden blog is back and alive. 

I just started a new job with Concurrency and thus will be blogging quite a bit…hopefully.

Following me on Twitter too:  @TheEmptyGarden

Posted in Uncategorized | Leave a comment

Config Manger 2012 SDK–Prerelease


Posted in Uncategorized | Leave a comment

Holy Cow–PDF technical documentation for the entire System Center suite


Posted in Uncategorized | Leave a comment

Notes from the Minnesota System Center Users Group


Last Friday at the Minnesota System Center Users Group I had the pleasure of seeing Wally Mead speak! His session lasted about three hours and he covered Config Manger 2012 SP1.

  • Configuration Manger 2012 – SP1 – probably won’t be released until Windows 8 is released.
  • Windows 8
      • No more WAIK.
      • WAIK is replaced by the ADK (Assessment and Deployment Kit) – ADK is a separate download
  • Adding support for UEFI-32 and 64 bit
      • This is the thing that happens between BIOS and CTRL-ALT-DEL or something like that!
  • Always on always connected (AOAC)
      • Newer slate devices have this
      • Helps preserve battery life
  • Configuration Mgr can no longer keep the OS from sleeping
  • Configuration Mgr client behavior was adapted to be a good citizen to act differently in these new states
      • On battery only
      • Configuration manager will not perform non-end user initiated tasks, unless those tasks were missed/overdue
      • On AC – normal Configuration Manger behavior
      • Network connected
      • No network – Configuration manger won’t attempt tasks that require network
      • Windows maintenance hour
        • Configuration Manger can take advantage of this new feature in Windows 8
  • New deployment type for METRO Apps.
  • Deep Links
      • End user goes to the Configuration Mgr 2012 Application Catalog. An application can be configured to download from the Windows Store
      • Thus, the SCCM admin does not need to repackage an application.
      • The downside is that instead of using a local DP for the content, the content will be hosted online.
  • Configuration Mgr SP1 can manage
      • Windows 8 Client Side Caching, Roaming User Profiles, Folder Redirection
  • Network Cost Support (only Windows 8 clients)
      • Configuration Manger can block network traffic if the Windows 8 machine is on a 3G or 4G network.
  • Windows To Go
      • Configuration Mgr can create and provision a Windows-To-Go device
  • New Platform Support
      • Supports more Nokia devices (E6, Nokia 701, Nokia C7, N8, Nokia 603)
      • Apple Mac OS
        • Supports 10.6 (snow leopard) and 10.7 (lion)
        • Hardware Inventory, Software Dist, Software updates, settings management
  • Endpoint protection
    • Linux client support
    • Linux server support
  • Feature Improvements
      • Can add a Central Administration Site (CAS) later
      • Configuration Manger 2012 to Configuration Mgr 2012 migration
        • Scenario: you have two primary 2012 sites. You can only attach ONE of them to the new CAS. You would need to build another 2012 site and attach it to the CAS. Then you could migrate the standalone 2012 site to the newly attached one.
        • Scenario: lab to production
      • Granular control over SQL Server Replication
  • Server Infrastructure Support
      • Exchange connector support
        • E14 SP2
        • E15
  • SQL Server 2012 support (only for Configuration Mgr SP1)
  • End User Client UI improvements
      • Software Center supports multi-select
      • No more ActiveX control – it now depends on Silverlight 5
  • OS Deployment Improvements
      • Prestage media now supports additional content types
        • Before: WIM only
        • Now: WIM, applications, drives, package / programs
      • Task Sequences can now be applicable to WinPE only
  • Endpoint Protection
      • Automatically deploy definition updates 3 times per day
      • Real time actions
      • Run Definition updates
      • Run Quick Scan
      • Run Full Scan
      • Allow threats
      • Exclude paths and / or files
  • App-V
      • App-V 4.6 SP2 support (this is needed for Windows 8 support)
      • App-V 5.0 support
  • PowerShell support
      • PowerShell provider
  • Alerts
      • All alerts support email notification
      • Admin can choose to ignore specific types of alerts
  • Software updates
      • If the client is Internet based and can’t get their updates from the SUP they can be configured to go to Windows Update
  • Configuration Manger 2012 SDK comes out at the end of June 2012
Posted in Uncategorized | Leave a comment

Windows 8 with Hyper-V

Last Friday at the Minnesota System Center Users Group I had the pleasure of seeing Wally Mead speak!  I noticed that Wally had Windows 8 on his laptop, but he was also using Virtual Machines.  I asked him if those were Hyper-V machines and he said yes.  At this point I was confused!  He told me that Windows 8 has a Hyper-V feature.  He went on to say that Windows 8 is the first client OS he has had on his laptop in a long time, since before he had to use a server OS.

I can’t wait to throw Windows 8 on my new Malibal Satori laptop with 256GB mSATA drive (for the OS), three 750GB drives (two of which are RAID 0), 32 GB RAM, Intel Core i7-3920XM and (most importantly) a matte screen.  Perhaps now Brian Mason (Config Manager MVP) will stop teasing me about my current EliteBook 2540p!

Posted in Uncategorized | Leave a comment

SCCM Client Inventory and WSUS Scan state

Here is a view that you can use to see SCCM Client inventory and WSUS scan state information.

CREATE view [dbo].[v_SCCM_Health_Check] as

select distinct a.name0 as 'MachineName'
, a.itemkey
, a.operating_system_name_and0 as 'OperatingSystem'
, os.CSDVersion0 as 'OS_ServicePack'
, a.client0 as 'SCCM_Client'
, a.Client_Version0 as 'SCCM_ClientVersion'
, case when a.User_Name0 like '%\%' then substring(a.User_Name0,charindex('\',a.User_Name0)+ 1,charindex('\',a.User_Name0))
    else a.User_Name0 end AS 'LastLoggedOnUser'
, case when scud.TopConsoleUser0 like '%\%' then substring(scud.TopConsoleUser0,charindex('\',scud.TopConsoleUser0)+ 1,charindex('\',scud.TopConsoleUser0)) 
    else scud.TopConsoleUser0 end as 'MainUser'
, nlp.FullName0 as 'MainUserFullName'
, a.AD_Site_Name0 as 'AD_Site'
, ou.OU
, a.Resource_Domain_OR_Workgr0 as 'Domain'
, e.SiteCode as 'SCCM_Site_Code'
, b.LastHWScan as 'SCCM_LastHWscan'
, c.LastUpdateDate as 'SCCM_LastSWscan'
, Dateadd(hour,(datediff(hour,getutcdate(),getdate())),d.lastscantime) as 'Last_WSUSscan'
, scan.StateName 'WSUSscan_State'
, scan.ErrorStatusID
, scan.ErrorCode
, scan.HexErrorCode
, uagent.version00 'WSUS_AgentVersion'
, d.lastlocation as 'WSUSserver'
, CCMService.State0 as 'SMS_Agent_Host_Service'
, AutoUpdates.State0 as 'Auto_Updates_Service'
from SMS_CEN.dbo.System_DISC a 
left join SMS_CEN.dbo.WorkstationStatus_DATA b
on a.itemkey = b.machineid  
left join SMS_CEN.dbo.SoftwareInventoryStatus c
on a.itemkey = c.clientid  
left join SMS_CEN.dbo.Update_ScanStatus d
on a.itemkey = d.machineid 
left join SMS_CEN.dbo.Windows_Update_Agent__DATA uagent
on a.itemkey = uagent.machineid 
left join SMS_CEN.dbo.Sites_DATA e  
on a.itemkey = e.machineid  
left join dbo.SCCM_Health_Check_DATA f
on a.itemkey = f.machineid 
left join dbo.Operating_System_DATA os
on a.itemkey = os.machineid  
left join
select uss.ResourceID, SN.StateName, uss.LastStatusMessageID&0x0000FFFF as ErrorStatusID,
    isnull(uss.LastErrorCode,0) as ErrorCode,
    dbo.fnConvertBinaryToHexString(convert(VARBINARY(8), isnull(uss.LastErrorCode,0))) as HexErrorCode
 from v_UpdateScanStatus uss
    join v_R_System rsys on rsys.ResourceID = uss.ResourceID and isnull(rsys.Obsolete0,0)<>1
    join v_SoftwareUpdateSource sus on uss.UpdateSource_ID = sus.UpdateSource_ID 
    join v_RA_System_SMSAssignedSites sass on uss.ResourceID = sass.ResourceID
    join v_StateNames sn on sn.TopicType = 501 and 
        sn.StateID = (case when (isnull(uss.LastScanState, 0)=0 and Left(isnull(rsys.Client_Version0, '4.0'), 1)<'4') then 7 else isnull(uss.LastScanState, 0) end)
) scan
on a.itemkey = scan.ResourceID  
on a.itemkey = scud.resourceID
left join dbo.v_GS_NETWORK_LOGIN_PROFILE nlp
on nlp.name0 = scud.TopConsoleUser0 and nlp.resourceID = scud.resourceid
left join
    select machineid, State0
    from     dbo.Services_DATA
    where name0 = 'ccmexec'
    ) CCMService
on a.itemkey = CCMService.machineid
left join
    select machineid, State0
    from     dbo.Services_DATA
    where name0 = 'wuauserv'
    ) AutoUpdates
on a.itemkey = AutoUpdates.machineid
left join
    select itemKey, max(system_ou_name0) as 'OU'
    from dbo.System_System_OU_Name_ARR
    group by itemkey
    ) OU
on a.itemkey = ou.itemkey

.csharpcode, .csharpcode pre
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
background-color: #f4f4f4;
width: 100%;
margin: 0em;
.csharpcode .lnum { color: #606060; }

Posted in Uncategorized | Leave a comment