<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Ryan Adams Blog</title> <link>http://www.ryanjadams.com</link> <description>SQL, Active Directory, Scripting</description> <lastBuildDate>Fri, 20 Aug 2010 15:21:22 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.0.1</generator> <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/RyanAdamsBlog" /><feedburner:info uri="ryanadamsblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><title>Vote NTSSUG BoD</title><link>http://feedproxy.google.com/~r/RyanAdamsBlog/~3/iwQ6aipgerA/</link> <comments>http://www.ryanjadams.com/2010/08/ntssug-bod/#comments</comments> <pubDate>Fri, 20 Aug 2010 15:21:22 +0000</pubDate> <dc:creator>Ryan Adams</dc:creator> <category><![CDATA[NTSSUG]]></category> <category><![CDATA[Personal]]></category> <category><![CDATA[SQL Saturday]]></category> <category><![CDATA[SQL Server]]></category><guid isPermaLink="false">http://www.ryanjadams.com/?p=322</guid> <description><![CDATA[Why I want to serve on North Texas SQL Server User Group Board of Directors.]]></description> <content:encoded><![CDATA[<p>The <a
href="http://northtexas.sqlpass.org" target="_blank">North Texas SQL Server User Group</a> currently has an open position on their board of directors.  I am eager to serve the SQL community and very excited to have the opportunity to run in this election.  If you follow my blog I need your support.  Below is a little information on my involvement in the SQL community, why I want to be on the BoD, and most importantly how you can vote for me!</p><h2>Community Involvement</h2><p>I have been an active NTSSUG participant for about 2.5 years.  I was a core team member for SQLSaturday 35 and handled the coordination of benefits for our sponsors after Jennifer McCown (<a
href="http://www.midnightdba.com/Jen/" target="_blank">Blog</a>|<a
href="http://twitter.com/midnightdba" target="_blank">Twitter</a>) brought them on board.  I also organized all of the volunteers for the day of the event.  I post all of our meetings on <a
href="http://communitymegaphone.com" target="_blank">communitymegaphone.com</a> so they get listed in the MSDN newsletter.  I have also created and maintain a LinkedIn group for NTSSUG and post our meetings on the <a
href="http://DFWITProfessionals.com" target="_blank">DFWITProfessionals.com</a> website to help increase our exposure and expand our group.  In addition, I actively blog and participate with the online community through <a
href="http://twitter.com/ryanjadams" target="_blank">Twitter</a>, <a
href="http://www.facebook.com/profile.php?id=1190612067" target="_blank">Facebook</a>, and <a
href="http://www.linkedin.com/in/ryanjadams" target="_blank">LinkedIn</a>.  Most recently I am serving on the core team for SQLSaturday BI Edition, and I am also serving on the organizing committee for SQLSaturday Houston.  As a follow-up to SQL Saturday 35 I setup <a
href="http://www.confio.com/" target="_blank">Confio</a> to be our sponsor for the month of August.  Lastly as another follow-up to my involvement with SQL Saturday 35 I secured a very special speaker for our January meeting.  I can tell you that you will not want to miss this meeting so clear your calendar now.  For more hints of what&#8217;s coming see Tim Mitchell&#8217;s (<a
href="http://timmitchell.net" target="_blank">Blog</a>|<a
href="http://twitter.com/Tim_Mitchell" target="_blank">Twitter</a>) blog post <a
href="http://timmitchell.net/post/2010/08/17/dallas-area-ntssug-happenings.aspx" target="_blank">HERE</a>.  If you are interested in my professional background you can view my BIO on my <a
href="http://www.ryanjadams.com/about-me/" target="_blank">About Me</a> page.</p><h2>Why</h2><p>I would be honored to be on the NTSSUG board.  This group has helped me and my career in many ways from meeting professional contacts to top notch technical training.  I want to give back to the group by being instrumental in providing others all the things this group has afforded me.  I am a firm believer in the SQL community where there is no comparison for professionalism, a network of people willing to lend a hand, and a comradeship that cannot be matched.  I believe I would be a great board member as I am highly motivated, extremely organized, and very passionate about the SQL community.  I want to search out opportunities and ways to grow our group into a premier chapter of SQLPass.</p><h2>How to Vote</h2><p>We&#8217;ve had some issues with our mailing list lately so here is the email with instructions on how you can vote.</p><p>Dear Members,</p><p>Thank you all for participating in this important process to elect another Member to the North Texas SQL Server User Group Board.</p><p>If you are hearing about this election for the first time, information on this special election can be found here.</p><p><a
href="http://northtexas.sqlpass.org/NTSSUGBoardVacancy/tabid/3031/Default.aspx" target="_blank">http://northtexas.sqlpass.org/NTSSUGBoardVacancy/tabid/3031/Default.aspx</a></p><p><strong>Voting Procedures</strong></p><p>1.      You must be a North Texas SQL Server User Group Member, else your vote will be invalidated.  Click on the link below to join the North Texas SQL Server User Group distribution list which will automatically make you a member.</p><p><a
href="http://northtexas.sqlpass.org/DistributionList/tabid/364/Default.aspx" target="_blank">http://northtexas.sqlpass.org/DistributionList/tabid/364/Default.aspx</a></p><p>2.     Only 1 vote per member.</p><p>3.     Send email to <a
href="mailto:vote@ntssug.com" target="_blank">vote@ntssug.com</a> with the last name of the candidate of your choice in the subject line.</p> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=iwQ6aipgerA:nL3s858b8VA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=iwQ6aipgerA:nL3s858b8VA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=iwQ6aipgerA:nL3s858b8VA:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=I9og5sOYxJI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=iwQ6aipgerA:nL3s858b8VA:ACf-c_HutVc"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=ACf-c_HutVc" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=iwQ6aipgerA:nL3s858b8VA:3QFJfmc7Om4"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?i=iwQ6aipgerA:nL3s858b8VA:3QFJfmc7Om4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=iwQ6aipgerA:nL3s858b8VA:2nqncYFp4_M"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=2nqncYFp4_M" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RyanAdamsBlog/~4/iwQ6aipgerA" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://www.ryanjadams.com/2010/08/ntssug-bod/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <feedburner:origLink>http://www.ryanjadams.com/2010/08/ntssug-bod/</feedburner:origLink></item> <item><title>NTSSUG Format Change</title><link>http://feedproxy.google.com/~r/RyanAdamsBlog/~3/vhlVJuSX2SU/</link> <comments>http://www.ryanjadams.com/2010/08/ntssug-format-change/#comments</comments> <pubDate>Wed, 18 Aug 2010 19:43:56 +0000</pubDate> <dc:creator>Ryan Adams</dc:creator> <category><![CDATA[NTSSUG]]></category> <category><![CDATA[SQL Community]]></category> <category><![CDATA[SQL Server]]></category><guid isPermaLink="false">http://www.ryanjadams.com/?p=329</guid> <description><![CDATA[NTSSUG is testing out a new format to get members more vested in the SQL community.]]></description> <content:encoded><![CDATA[<p>The <a
href="http://northtexas.sqlpass.org" target="_blank">North Texas SQL Server User Group</a> is trying out a new format for the August 19th, 2010 meeting.  The first part of the meeting will be a presentation from Janis Griffin of <a
href="http://www.confio.com/" target="_blank">Confio software</a>.  She will be presenting, &#8220;Tuna Helper &#8211; Proven Process for Tuning SQL.&#8221;  The second half of the meeting is the new part.  We will be breaking up into small discussion groups to talk about various topics.  Each group will have a moderator to help facilitate the discussion.  I think this is a really great idea and I hope it works well.  My hat is off to the NTSSUG board of directors for this idea!  NTSSUG is a very large group and we all know how powerful and beneficial networking with other professionals can be, but networking in a large group can also be a challenge.  The NTSSUG board was very forward thinking in recognizing this challenge and trying something new to help the situation.  I really think this idea will help those who are not so outgoing get to know others in the group in a smaller and less intimidating setting.  SQL server has many different facets (PBM pun intended) and most professionals seem to specialize or gravitate toward a select few of those facets.  I believe this format will help connect like-minded individuals to each other, but still maintain the broad scope of interests with the standard main presentation.  I am hopeful that this will create strong bonds by connecting members to each other and connecting members to the SQL community.  May the connections spread like wild fire and our plates overrun with bacon!</p><p>As a side note I will be moderating the discussion on, &#8220;How do I get a job as &lt;job title&gt; without experience?&#8221;  Here is the list of topics:</p><ul><li>How do you keep current with a training budget of zero?</li><li>How do I get a job as &lt;job title&gt; without experience?</li><li>Using blog, Twitter, and Facebook for professional networking and career improvement.</li><li>What benefits do you get from being part of a user group, and how could NTSSUG be a better resource for your professional development?</li></ul><p>Also a new position has opened up on the NTSSUG board of directors and the candidates will each have a short speech during the meeting.  If you are interested in joining this awesome leadership then check out the NTSSUG website for more details, <a
href="http://northtexas.sqlpass.org/NTSSUGBoardVacancy/tabid/3031/Default.aspx" target="_blank">HERE</a>.  As you can see this is a meeting you will not want to miss.  Here is what some others have posted.</p><p><a
href="http://www.midnightdba.com/Jen/2010/08/ntssug-meeting-tomorrow-side-of-awesomesauce/" target="_blank">Jennifer McCown</a> (MidnightDBA)</p><p><a
href="http://timmitchell.net/post/2010/08/17/dallas-area-ntssug-happenings.aspx" target="_blank">Tim Mitchell</a></p> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=vhlVJuSX2SU:0jW9bvt9BcU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=vhlVJuSX2SU:0jW9bvt9BcU:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=vhlVJuSX2SU:0jW9bvt9BcU:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=I9og5sOYxJI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=vhlVJuSX2SU:0jW9bvt9BcU:ACf-c_HutVc"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=ACf-c_HutVc" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=vhlVJuSX2SU:0jW9bvt9BcU:3QFJfmc7Om4"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?i=vhlVJuSX2SU:0jW9bvt9BcU:3QFJfmc7Om4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=vhlVJuSX2SU:0jW9bvt9BcU:2nqncYFp4_M"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=2nqncYFp4_M" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RyanAdamsBlog/~4/vhlVJuSX2SU" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://www.ryanjadams.com/2010/08/ntssug-format-change/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <feedburner:origLink>http://www.ryanjadams.com/2010/08/ntssug-format-change/</feedburner:origLink></item> <item><title>Extend Hyper-V Guest System Partition</title><link>http://feedproxy.google.com/~r/RyanAdamsBlog/~3/8Esuu1t0EmU/</link> <comments>http://www.ryanjadams.com/2010/07/extend-hyperv-guest-system-partition/#comments</comments> <pubDate>Tue, 27 Jul 2010 16:05:29 +0000</pubDate> <dc:creator>Ryan Adams</dc:creator> <category><![CDATA[HyperV]]></category> <category><![CDATA[Virtualization]]></category> <category><![CDATA[Windows Server]]></category> <category><![CDATA[DiskPart]]></category> <category><![CDATA[Hyper-V]]></category> <category><![CDATA[Virtual Server]]></category><guid isPermaLink="false">http://www.ryanjadams.com/?p=283</guid> <description><![CDATA[How to extend the boot partition on a Hyper-V guest]]></description> <content:encoded><![CDATA[<p>A co-worker messaged me today to ask for my help in giving one of our development domain controllers some additional disk space.  Due to space constraints and lack of funding I had to get creative last year in redesigning our development environment to handle four more servers for a new application with no new hardware.  I had 3 physical servers so here is how I set them up.  The first runs Hyper-V with four VMs that are our domain controllers.  The second and third servers run VMWare VSphere and each host two virtual machines for the new application.  The server he needed to get additional space on was our domestic domain controller running in Hyper-V.</p><h2>CAUTION!!!!</h2><p>I highly suggest that you make a copy of your VHD file after you shut the guest machine down.  Backups are Gold!</p><h2>Prepare the Guest</h2><p>Your first step is to shut down the guest machine.  Next you need to increase the virtual disk so it will be presented to the guest when you turn it back on.  It&#8217;s very simple and here is how:</p><ol><li>Open Hyper-V Manager</li><li>Select the desired Hyper-V server in the left pane</li><li>Select the desired virtual machine in the center pane</li><li>Select Edit Disk in the right pane</li><li>The edit virtual disk wizard opens. Select next on the welcome page</li><li>On the Locate Disk page click browse and select the virtual disk for your virtual machine</li><li>On the Action page select Expand</li><li>On the Configure Disk page change the disk size to the new desired size. Current and maximum sizes are provided in the window.</li></ol><h2>Prepare the VHD</h2><p>We are going to use the tried and true diskpart.exe to expand the disk.  Remember that this is a system partition and the general rule is that system partitions cannot be expanded without a third party tool.  Let&#8217;s prove them wrong by using diskpart on the drive while the OS is not running.  There are three ways I can think of to do this.  The first is booting the machine to floppy and running diskpart from there.  I know this can be done, but I personally have never been successful and have turned to third parties for the solution.  However, this is a virtual machine and not physical so I have other means of running diskpart on the drive without the OS running.  That leads me to the second option of attaching the drive to another virtual machine as a secondary drive.  You could then run diskpart on that partition from the other virtual machine.  The third option is what I used and will describe here.  It should be noted that Windows Server 2008 and Windows 7 can mount VHD drives natively and will not require the tool I will be using.  Here&#8217;s how we do it:</p><ol><li>Download Virtual Server 2005 R2 SP1 from <a
href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=bc49c7c8-4840-4e67-8dc4-1e6e218acce4" target="_blank">HERE</a></li><li>Install Virtual Server using the custom option and select ONLY the VHD Mount</li><li>Open a command prompt</li><li>Type vhdmount /p /f &lt;Fully Qualified Path to your VHD File&gt;</li><li>Type diskpart.exe</li><li>Type List Volume</li><li>Type Select Volume &lt;2 or whatever volume number is your VHD&gt;</li><li>Type Detail Volume to verify the free space and that your selected the correct drive</li><li>Type Extend</li><li>Type Detail Volume to verify the free space is now zero and the size is what you expect</li><li>Type Exit</li><li>Type vhdmount /u &lt;Fully Qualified Path to your VHD File&gt;</li></ol><p>Start up your virtual machine and you should now see your boot partition extended!</p> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=8Esuu1t0EmU:8qsJ9PoU7dU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=8Esuu1t0EmU:8qsJ9PoU7dU:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=8Esuu1t0EmU:8qsJ9PoU7dU:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=I9og5sOYxJI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=8Esuu1t0EmU:8qsJ9PoU7dU:ACf-c_HutVc"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=ACf-c_HutVc" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=8Esuu1t0EmU:8qsJ9PoU7dU:3QFJfmc7Om4"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?i=8Esuu1t0EmU:8qsJ9PoU7dU:3QFJfmc7Om4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=8Esuu1t0EmU:8qsJ9PoU7dU:2nqncYFp4_M"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=2nqncYFp4_M" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RyanAdamsBlog/~4/8Esuu1t0EmU" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://www.ryanjadams.com/2010/07/extend-hyperv-guest-system-partition/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <feedburner:origLink>http://www.ryanjadams.com/2010/07/extend-hyperv-guest-system-partition/</feedburner:origLink></item> <item><title>How to Backup Your WordPress Database</title><link>http://feedproxy.google.com/~r/RyanAdamsBlog/~3/XGVLFIqiNK8/</link> <comments>http://www.ryanjadams.com/2010/07/backup-wordpress-database/#comments</comments> <pubDate>Thu, 22 Jul 2010 20:42:12 +0000</pubDate> <dc:creator>Ryan Adams</dc:creator> <category><![CDATA[Blogging]]></category> <category><![CDATA[VBScript]]></category> <category><![CDATA[automation]]></category> <category><![CDATA[Backup WordPress database]]></category> <category><![CDATA[backups]]></category> <category><![CDATA[dbc backup]]></category> <category><![CDATA[WordPress]]></category> <category><![CDATA[wp-db-backup]]></category> <category><![CDATA[wp-mail-smtp]]></category><guid isPermaLink="false">http://www.ryanjadams.com/?p=269</guid> <description><![CDATA[Here is how to backup your WordPress database using the WP-DB-Backup or DBC Backup plugins.]]></description> <content:encoded><![CDATA[<p>The <a
href="http://wordpress.org/extend/plugins/wp-db-backup/" target="_blank">WP-DB-Backup</a> plugin works great to automatically email you database backups, however the email part does not seem to work for many people.  From what I have gathered this stems from a file size upload setting in PHP.  This can be remedied in several ways, the most common of which is editing your php.ini file.  I&#8217;m not a PHP guy so I won&#8217;t go into all those methods, but feel free to research on your own.  If you find a fix please post it in the comments for others.</p><p>You don&#8217;t want to store your backups on your site because if the site data gets destroyed so do your backups.  You need to keep them somewhere else, but how can you automate this?  I have two alternatives.</p><h2>SMTP Plugin</h2><p><a
href="http://wordpress.org/extend/plugins/wp-db-backup/" target="_blank">WP-DB-Backup</a> works if you install an SMTP plugin to handle your blogs email instead of the native PHP mailer.  This plugin is great because you can do backups on the fly as well as scheduling them to your desired frequency.  However, once you cross that PHP default threshold (4mb I believe) you will magically stop receiving your database backup emails.  I love this plugin and I wanted to make it work, so I contacted the author.  If you&#8217;re thinking of contacting him then good luck, as I have never received a response.  Here is a workaround to get this plugin working for you.</p><p>Download, install, and configure <a
href="http://wordpress.org/extend/plugins/wp-mail-smtp/" target="_blank">WP-Mail-SMTP</a>.  Once you have that setup the <a
href="http://wordpress.org/extend/plugins/wp-db-backup/" target="_blank">WP-DB-Backup</a> plugin will start working again.  Well technically it never stops working, it&#8217;s just that the PHP mailer never sends the email.  Not only does <a
href="http://wordpress.org/extend/plugins/wp-mail-smtp/" target="_blank">WP-Mail-SMTP</a> allow you to custom configure your SMTP server to something other than your ISP, it intercepts and handles anything coming to the PHP mailer method from WordPress.</p><h2>Script a DB Download</h2><p>Use <a
href="http://wordpress.org/extend/plugins/dbc-backup/" target="_blank">DBC Backup</a> to backup to your site.  This plugin allows you to define an export directory on your site where it will store the backups.  You can define the backup interval as well as how many backups to retain.  I suggest setting the plugin to remove all old backups so that only the newest one is available.  You will be pulling and storing them offsite anyway.  I have written a VBScript that you can schedule using windows task scheduler that will download all of the backup files in your export directory to your local machine or server.  I know it&#8217;s not PowerShell and shame on me, but I never seem to find the time to learn it as well as I know VBScript.  Make sure to schedule the task in task scheduler to run AFTER the time you have set the plugin to run and backup to your site.  I am a firm believer in code documentation through comments so I am not going to explain the code here.  You should be able to follow it easily with my comments.  If you have questions please email me or put a comment on this post as others may have the same question.</p><pre>'==========================================================================
'
' NAME: DownloadFromWeb.vbs
'
' AUTHOR: Ryan J. Adams
' DATE  : 7/21/2010
'
' COMMENT: This script downloads a WordPress DB Backup file created by the
'			"DBC Backup" WP Plugin.
'			Remember that you are hard coding your username and password so
'			either change the script to take them as input parameters or encode the script
'			I personally prefer encoding the script and encrypting it is even better!
'
'==========================================================================

Dim strUser, strPass, strURL
Dim objFSO, objShell, objFile
Dim strCommand, strLocalDir, strRemoteDir

strUser = "MyUser" 'Replace MyUser with your username
strPass = "MyPass" 'Replace MyPass with your password
strURL = "MyURL" 'Replace MyURL with your FTP URL or IP Address
strLocalDir = "c:\temp" 'Fully qualified path on your local system where you want the backup copied to
strRemoteDir = "httpdocs/wp-content/backup" 'directory on your FTP where the backup is located

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("Wscript.Shell")

'Here we delete the text file input for the FTP command if it exists
'The script re-creates the file each time it is run
If objFSO.FileExists(strLocalDir &amp; "\FTPCommand.txt") Then
	objFSO.DeleteFile strLocalDir &amp; "\FTPCommand.txt"
End If

'Here we create the FTP input command text file and populate it with our options
Set objFile = objFSO.CreateTextFile(strLocalDir &amp; "\FTPCommand.txt")
objFile.WriteLine "open " &amp; strURL
objFile.WriteLine strUser
objFile.WriteLine strPass
objFile.WriteLine "cd " &amp; strRemoteDir
objFile.WriteLine "mget Backup*.*"
objFile.WriteLine "quit"
objFile.Close

strCommand = "%comspec% /c cd\" &amp; Mid(strLocalDir,4) &amp; " &amp;&amp; FTP.exe -i -s:" &amp; strLocalDir &amp; "\FTPCommand.txt"
objShell.Run strCommand, 7, True

'Here we delete our input file so our passwords are not hanging out there in plain text
objFSO.DeleteFile strLocalDir &amp; "\FTPCommand.txt"

'Cleanup objects from memory
Set objFSO = Nothing
Set objShell = Nothing</pre><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=XGVLFIqiNK8:HJsMcCgooOk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=XGVLFIqiNK8:HJsMcCgooOk:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=XGVLFIqiNK8:HJsMcCgooOk:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=I9og5sOYxJI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=XGVLFIqiNK8:HJsMcCgooOk:ACf-c_HutVc"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=ACf-c_HutVc" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=XGVLFIqiNK8:HJsMcCgooOk:3QFJfmc7Om4"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?i=XGVLFIqiNK8:HJsMcCgooOk:3QFJfmc7Om4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=XGVLFIqiNK8:HJsMcCgooOk:2nqncYFp4_M"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=2nqncYFp4_M" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RyanAdamsBlog/~4/XGVLFIqiNK8" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://www.ryanjadams.com/2010/07/backup-wordpress-database/feed/</wfw:commentRss> <slash:comments>1</slash:comments> <feedburner:origLink>http://www.ryanjadams.com/2010/07/backup-wordpress-database/</feedburner:origLink></item> <item><title>SQLSaturday Sponsor Care</title><link>http://feedproxy.google.com/~r/RyanAdamsBlog/~3/Aht7Zl2UJo4/</link> <comments>http://www.ryanjadams.com/2010/07/sqlsaturday-sponsor-care/#comments</comments> <pubDate>Fri, 09 Jul 2010 22:24:45 +0000</pubDate> <dc:creator>Ryan Adams</dc:creator> <category><![CDATA[NTSSUG]]></category> <category><![CDATA[SQL Saturday]]></category> <category><![CDATA[SQL Server]]></category> <category><![CDATA[Dallas]]></category> <category><![CDATA[SQL]]></category> <category><![CDATA[SQLSaturday]]></category><guid isPermaLink="false">http://www.ryanjadams.com/?p=271</guid> <description><![CDATA[SQLSaturday Sponsor Coordination of benefits]]></description> <content:encoded><![CDATA[<p>Lately the organizer team for SQLSaturday #35 in Dallas has had several requests from other SQLSaturday organizers about how to get sponsors and handle the sponsorships.  For us Jen McCown (<a
href="http://www.midnightdba.com/Jen/" target="_blank">Blog</a>|<a
href="http://www.twitter.com/MidnightDBA" target="_blank">Twitter</a>) did an unbelievable job of finding sponsors and getting them involved in sponsoring the event.  In fact, she did such a wonderful job that it quickly became overwhelming and more than one person could handle.  That&#8217;s where I came in to help, but before you finish reading this post you need to read her blog on how she found the sponsors, contacted them, and defined the sponsorship levels. <a
href="http://www.midnightdba.com/Jen/2010/07/how-to-get-sponsors-for-your-sql-saturday/" target="_blank">READ HERE</a>.</p><p>My part was to handle the coordination of benefits with each of our sponsors to ensure they each got what their sponsorship level entitled them to.  Fortunately for me I am a very organized person, which was a benefit to me.  You have to be organized and able to communicate well.  You have to think ahead about all the small things you need to ask them in addition to their benefits.  Things like how many people are they sending, do any of them require a vegetarian lunch (we provided lunch for all sponsors and volunteers), do they require power, and how many items are they wanting to raffle.  You also need to make a list of things they simply need to be informed about like how big the table sizes are, as they might be bringing a table cloth.  Clear communication is paramount.  I sent each sponsor an email with a bulleted list of their benefits and the status of each item.  I also included a seperate list for the questions we needed answered that did not pertain to the sponsor benefits, and finally an ending paragraph of the informational things we wanted them to be aware of.  Getting everything possible in a single easy to read format avoids sending tons of emails about every little thing as you think of it.  This will save you time (which you will need), and help prevent you from annoying the sponsor with tons of email.  Remember you not only want them to sponsor this event, but also events in the future.  Make it easy for them and yourself by only including action items in follow up emails, and be as accomodating as you can while being strict with the rules of what their sponsorship level allows.  Sometimes this means doing some of the leg work yourself like picking up flyers for event bags, having them send stuff to you for their table and making sure it is ready for them that morning, and mailing back anything they have left over after the event.</p><p>The other thing you absolutely need is a good spreadsheat to track progress with each sponsor.  Make sure to include each benefit for their level, the answers to your questions not specific to their sponsorship, and the items they need to be informed about so nothing gets through the cracks.  You have to use your best judgement on the frequency of follow up emails concerning outstanding action items.  You don&#8217;t want to be that obsessive and pesky guy.  Do you really need to follow up with them every week when the event is three months away? No.  Three to four weeks on the other hand, you probably need to if those items are regarding them getting things mailed to you.</p><p>The bottom line is that you need to be organized and communicate clearly.  Make sure you thank them in your communications, and certainly be sure to thank them in person at the event.  Again you want them to sponsor future SQLSaturdays, so make sure they know how much you value their sponsorship.  Remember that sponsorships are great targeted business for the sponsors and great for our community!</p> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=Aht7Zl2UJo4:pvh0GDJA-I8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=Aht7Zl2UJo4:pvh0GDJA-I8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=Aht7Zl2UJo4:pvh0GDJA-I8:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=I9og5sOYxJI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=Aht7Zl2UJo4:pvh0GDJA-I8:ACf-c_HutVc"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=ACf-c_HutVc" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=Aht7Zl2UJo4:pvh0GDJA-I8:3QFJfmc7Om4"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?i=Aht7Zl2UJo4:pvh0GDJA-I8:3QFJfmc7Om4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=Aht7Zl2UJo4:pvh0GDJA-I8:2nqncYFp4_M"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=2nqncYFp4_M" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RyanAdamsBlog/~4/Aht7Zl2UJo4" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://www.ryanjadams.com/2010/07/sqlsaturday-sponsor-care/feed/</wfw:commentRss> <slash:comments>3</slash:comments> <feedburner:origLink>http://www.ryanjadams.com/2010/07/sqlsaturday-sponsor-care/</feedburner:origLink></item> <item><title>System.EnterpriseServices.dll &amp; SQLRS 2005</title><link>http://feedproxy.google.com/~r/RyanAdamsBlog/~3/oGPq1nB0oJ4/</link> <comments>http://www.ryanjadams.com/2010/06/system-enterpriseservices-dll-sqlrs-2005/#comments</comments> <pubDate>Thu, 17 Jun 2010 20:37:17 +0000</pubDate> <dc:creator>Ryan Adams</dc:creator> <category><![CDATA[Reporting Services]]></category> <category><![CDATA[SQL Server]]></category> <category><![CDATA[Windows Server]]></category> <category><![CDATA[.NET Framework 2.0]]></category> <category><![CDATA[SQL]]></category> <category><![CDATA[SQL Reporting Services]]></category> <category><![CDATA[SQLRS]]></category> <category><![CDATA[system.enterpriseservices.dll]]></category><guid isPermaLink="false">http://www.ryanjadams.com/?p=252</guid> <description><![CDATA[How to fix system.enterprisesystems.dll not found error while using SQL Reporting Services 2005]]></description> <content:encoded><![CDATA[<p>Every so often I get a call from a user saying he is trying to access some reports I wrote for him in SSRS 2005 and he gets the following error:</p><p>Cannot find or load System.EnterpriseServices.dll version=2.0.0</p><p>I&#8217;m not a .NET expert so the first thing I do is Boogle it.  You will get a ton of hits on this error, but none of them talk about the solution or cause I found.  Most of them tell you to copy c:\windows\microsoft.net\framework\v2.0<em>subversion</em>\system.enterpriseservices.dll to c:\windows\assembly.  All this does is register the missing DLL and put it back into the GAC (Global Assembly Cache).  The good news is that this method can save you from having to re-install the .Net Framework.  If you find that you do need to re-install, then I would suggest to first try re-applying the latest .Net Framework service pack first.</p><p>Although this may fix the issue, it did not explain why it kept happening on this system and at no defined interval.  What I finally figured out is that it happens every time Windows Update has downloaded a .NET Framework Service Pack and is ready to install it.  I still cannot explain how or why this would unregister the DDL from the GAC, but once I install the updates, Bingo!</p> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=oGPq1nB0oJ4:ZWF3_LhHNo8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=oGPq1nB0oJ4:ZWF3_LhHNo8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=oGPq1nB0oJ4:ZWF3_LhHNo8:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=I9og5sOYxJI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=oGPq1nB0oJ4:ZWF3_LhHNo8:ACf-c_HutVc"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=ACf-c_HutVc" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=oGPq1nB0oJ4:ZWF3_LhHNo8:3QFJfmc7Om4"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?i=oGPq1nB0oJ4:ZWF3_LhHNo8:3QFJfmc7Om4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=oGPq1nB0oJ4:ZWF3_LhHNo8:2nqncYFp4_M"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=2nqncYFp4_M" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RyanAdamsBlog/~4/oGPq1nB0oJ4" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://www.ryanjadams.com/2010/06/system-enterpriseservices-dll-sqlrs-2005/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <feedburner:origLink>http://www.ryanjadams.com/2010/06/system-enterpriseservices-dll-sqlrs-2005/</feedburner:origLink></item> <item><title>SQL Saturday Weekend Palooza</title><link>http://feedproxy.google.com/~r/RyanAdamsBlog/~3/rIkAnfSbJdo/</link> <comments>http://www.ryanjadams.com/2010/05/sql-saturday-weekend-palooza/#comments</comments> <pubDate>Fri, 28 May 2010 14:32:00 +0000</pubDate> <dc:creator>Ryan Adams</dc:creator> <category><![CDATA[NTSSUG]]></category> <category><![CDATA[SQL Saturday]]></category> <category><![CDATA[SQL Server]]></category> <category><![CDATA[Dallas]]></category> <category><![CDATA[SQL]]></category><guid isPermaLink="false">http://www.ryanjadams.com/?p=147</guid> <description><![CDATA[SQL Saturday 35 Dallas]]></description> <content:encoded><![CDATA[<p>How did I get here?  Most of my career has been spent with Windows administration, architecture, and design.  Several years ago I started to see the writing on the wall with Microsoft using SQL Server as the backend of all their new product lines.  I have a passion for technology and a pension for learning so I dove right into the SQL pool.  After a couple of SQL certifications and a Microsoft SQL Server Launch event, I discovered the North Texas SQL Server User Group.  I still have not found a community geared toward Active Directory and Windows architecture, so finding a group and community dedicated to my new passion; I knew right away this was my new home.  After all the friends and free monthly training, it was only natural that I wanted to jump in and help wherever I could when the group announced holding a Dallas SQL Saturday.</p><p>I volunteered and ended up organizing the volunteers and also coordinating with all of the sponsors.  Jen McCown (<a
title="Jennifer McCown Blog" href="http://www.midnightdba.com/Jen/" target="_blank">Blog</a>|<a
title="Jennifer McCown Twitter" href="http://www.twitter.com/MidnightDBA" target="_blank">Twitter</a>) of MidnightDBA started the sponsor process, but had too much on her plate with other SQL Saturday volunteer responsibilities, moving her family to a new home, and being a speaker.  I&#8217;m pretty sure she got all of two hours sleep the entire week of SQL Saturday Dallas.  Thanks Jen for everything you did, you are a true SQL Superstar!</p><p>I won&#8217;t even delve into all the pre-planning activities, but start with Thursday of that week.  We hold NTSSUG meetings at the Microsoft campus in Irving, TX on the third Thursday of every month.  Since I do not live or work nearby, I office out of one of my company&#8217;s other buildings on NTSSUG meeting days to avoid traffic.  That also means I start my day at about 5:30am.  The night before, I loaded my truck (both the bed and cab) with sponsor SWAG and material.  After my regular work day, I headed over to the Microsoft campus for our monthly NTSSUG meeting where Brad McGehee (<a
title="Brad McGehee Blog" href="http://www.bradmcgehee.com" target="_blank">Blog</a>|<a
title="Brad McGehee Twitter" href="http://www.twitter.com/bradmcgehee" target="_blank">Twitter</a>) was speaking on PAL.  After the meeting we asked for volunteers to help us stuff the attendee bags and actually got it done in about an hour.  With my truck re-packed and even fuller than before, I managed to get home around 11pm.</p><p>I was up early again on Friday, but this time to be at the Dallas Stars annual warehouse sale.  My wife and I are huge fans and this event means we can actually afford some Stars gear.  Fast forward to 4pm I arrive at the venue to unload my truck and start preparing.  My first task was to make sure all the sponsor tables were setup, along with anything any of them sent me for their setups.  We had 18 sponsors including the facility and 11 of them had tables and 4 of them had lunch sessions.  After getting all of that setup and determining where the lunch sessions would be held it was now time to work on making sure I was prepared for organizing all of the volunteers.  Early in the week I realized there was no way the morning of the event that I could handle a volunteer orientation and the sponsors as they showed up.  I had Andy Eggers, one of the NTSSUG volunteers, help me out.  That night I walked him through the room and equipment setup, and how everything needed to run the following morning.  Thank you Andy, you saved my life!  After everything was setup we headed over to the speaker party for some awesome networking.</p><p>Saturday morning I arrived at the venue at 6:15am.  I am not a morning person and do not function well without sleep, and the late night/early morning patterns were starting to catch up to me.  Fortunately I have a little one at home and have had recent training in the art of little sleep, and I knew some coffee would fix me right up.  I am a very organized person and had everything printed up, check lists ready and a pen in hand.  The event was great, even though my volunteer duties prevented me from sitting in on the entirety of any of my desired sessions.  We provided breakfast for free, lunch at a low cost, free afternoon snacks, and even free ice cream!  Every session I attended was top notch.  We ended the day with sponsor give aways and various other SWAG that included top end SQL software, XBOX360, 1.5TB hard drives, iPOD shuffles, and an iPAD.  We can&#8217;t thank our sponsors enough for their support!  After some cleanup we headed out to the after party which was an incredible time of networking.</p><p>Did I mention we had a photographer?  Thanks go out to Emad Kamel and the link for pictures is <strong><a
title="SQL Saturday 35 Dallas Pictures" href="http://cid-c0718057ff28b3de.skydrive.live.com/browse.aspx/SQL%5E_Saturday%5E_Dallas" target="_blank">HERE</a></strong></p><p>This event was so great you should take the time to read what others are saying.  Here is a list of those that have blogged about SQL Saturday Dallas so far.</p><p>Bill Fellows (<a
title="Bill Fellows Blog" href="http://billfellows.blogspot.com/" target="_blank">Blog</a>|<a
title="Bill Fellows Twitter" href="http://www.twitter.com/billinkc" target="_blank">Twitter</a>)  <a
href="http://bit.ly/b7q7HC" target="_blank">http://bit.ly/b7q7HC</a></p><p>Wes Brown (<a
title="Wes Brown Blog" href="http://www.sqlservercentral.com/blogs/sqlmanofmystery/" target="_blank">Blog</a>|<a
title="Wes Brown Twitter" href="http://www.twitter.com/WesBrownSQL" target="_blank">Twitter</a>)  <a
href="http://bit.ly/9orJXc" target="_blank">http://bit.ly/9orJXc</a></p><p>David Stein (<a
title="David Stein Blog" href="http://www.made2mentor.com" target="_blank">Blog</a>|<a
title="David Stein Twitter" href="http://twitter.com/Made2Mentor" target="_blank">Twitter</a>)  <a
href="http://bit.ly/aFb3Yw" target="_blank">http://bit.ly/aFb3Yw</a></p><p>AJ Mendo  (<a
title="AJ Mendo Blog" href="http://sqlaj.wordpress.com/" target="_blank">Blog</a>|<a
title="AJ Mendo Twitter" href="http://www.twitter.com/SQLAJ" target="_blank">Twitter</a>)  <a
href="http://bit.ly/bPptxb" target="_blank">http://bit.ly/bPptxb</a></p><p>Jonathan Gardner (<a
title="Jonathan Gardner Blog" href="http://www.jonathanagardner.com" target="_blank">Blog</a>|<a
title="Jonathan Gardner Twitter" href="http://www.twitter.com/jgardner04" target="_blank">Twitter</a>)  <a
href="http://bit.ly/a9VQh0" target="_blank">http://bit.ly/a9VQh0</a></p><p>Allen Kinsel (<a
title="Allen Kinsel Blog" href="http://www.allenkinsel.com" target="_blank">Blog</a>|<a
title="Allen Kinsel Twitter" href="http://www.twitter.com/sqlinsaneo" target="_blank">Twitter</a>)  <a
href="http://bit.ly/aJ3pkB" target="_blank">http://bit.ly/aJ3pkB</a></p><p>Jennifer McCown (<a
title="Jennifer McCown Blog" href="http://www.midnightdba.com/Jen/" target="_blank">Blog</a>|<a
title="Jennifer McCown Twitter" href="http://www.twitter.com/MidnightDBA" target="_blank">Twitter</a>)  <a
href="http://bit.ly/9ihxAA" target="_blank">http://bit.ly/9ihxAA</a></p><p>Stuart Ainsworth (<a
title="Stuart Ainsworth Blog" href="http://www.codegumbo.com/" target="_blank">Blog</a>|<a
title="Stuart Ainsworth Twitter" href="http://www.twitter.com/stuarta" target="_blank">Twitter</a>)  <a
href="http://bit.ly/daoEzE" target="_blank">http://bit.ly/daoEzE</a></p><p>Here is a list of the sponsors that helped make this such a great event.</p><ul><li><a
href="http://www.attunity.com/index.aspx" target="_blank">Attunity</a></li><li><a
href="http://www.confio.com/" target="_blank">Confio</a></li><li><a
href="http://www.cozyroc.com/" target="_blank">CozyRoc</a></li><li><a
href="http://www.expressor-software.com/" target="_blank">Expressor</a></li><li><a
href="http://www.fusionio.com/" target="_blank">FusionIO</a></li><li><a
href="http://www.idera.com/" target="_blank">Idera</a></li><li><a
href="http://www.intellinet.com/" target="_blank">Intellinet</a></li><li><a
href="http://www.matrixresources.com/" target="_blank">Matrix Resources</a></li><li><a
href="http://www.microsoft.com/sqlserver/" target="_blank">Microsoft</a></li><li><a
href="http://www.nitrosphere.net/" target="_blank">Nitrosphere</a></li><li><a
href="http://www.novedea.com/" target="_blank">Novedea</a></li><li><a
href="http://www.paciugo.com/" target="_blank">Paciugo</a></li><li><a
href="http://www.quest.com/" target="_blank">Quest</a></li><li><a
title="Redgate" href="http://www.red-gate.com/?utm_source=ug&amp;utm_medium=uglogo&amp;utm_content=ntssug&amp;utm_campaign=redgate" target="_blank">Redgate</a></li><li><a
href="http://www.sqlpass.org/" target="_blank">SQLPass</a></li><li><a
href="http://www.telerik.com/" target="_blank">Telerik</a></li><li><a
href="http://westclintech.com/" target="_blank">WestClinTech</a></li><li><a
href="http://www.region10.org/" target="_blank">Region 10 Education Service Center</a></li><li><a
href="http://www.midnightdba.com/" target="_blank">MidnightDBA</a></li></ul> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=rIkAnfSbJdo:Ek_QTdI8dpM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=rIkAnfSbJdo:Ek_QTdI8dpM:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=rIkAnfSbJdo:Ek_QTdI8dpM:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=I9og5sOYxJI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=rIkAnfSbJdo:Ek_QTdI8dpM:ACf-c_HutVc"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=ACf-c_HutVc" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=rIkAnfSbJdo:Ek_QTdI8dpM:3QFJfmc7Om4"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?i=rIkAnfSbJdo:Ek_QTdI8dpM:3QFJfmc7Om4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=rIkAnfSbJdo:Ek_QTdI8dpM:2nqncYFp4_M"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=2nqncYFp4_M" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RyanAdamsBlog/~4/rIkAnfSbJdo" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://www.ryanjadams.com/2010/05/sql-saturday-weekend-palooza/feed/</wfw:commentRss> <slash:comments>1</slash:comments> <feedburner:origLink>http://www.ryanjadams.com/2010/05/sql-saturday-weekend-palooza/</feedburner:origLink></item> <item><title>Turbo Charge Active Directory</title><link>http://feedproxy.google.com/~r/RyanAdamsBlog/~3/yqSwQxRpU4U/</link> <comments>http://www.ryanjadams.com/2010/05/turbo-charge-active-directory/#comments</comments> <pubDate>Thu, 06 May 2010 22:22:36 +0000</pubDate> <dc:creator>Ryan Adams</dc:creator> <category><![CDATA[Active Directory]]></category> <category><![CDATA[Forefront Identity Manager]]></category> <category><![CDATA[Windows Server]]></category> <category><![CDATA[AD]]></category> <category><![CDATA[automation]]></category> <category><![CDATA[change notification]]></category> <category><![CDATA[identity management]]></category> <category><![CDATA[replication]]></category> <category><![CDATA[Urgent Replication]]></category><guid isPermaLink="false">http://www.ryanjadams.com/?p=139</guid> <description><![CDATA[Turbo charge your active directory by enabling change notifications]]></description> <content:encoded><![CDATA[<p>Want to speed up your AD replication?  You might want to if users call your helpdesk for a password reset, try to login right after the reset, and they still get denied.  Maybe you use some sort of identity management software or web site automation where users can update things like title or phone number, and they don&#8217;t see their changes for awhile.  That might be acceptable in some environments, but certainly not in all of them.</p><p>AD has something called <a
title="Urgent Replication Events" href="http://technet.microsoft.com/en-us/library/cc772726(WS.10).aspx#w2k3tr_repup_how_huzs" target="_blank">Urgent Replication</a> where certain events like account lockouts replicate immediately, as opposed to the default replication interval.  What if your network has very large pipes across the forest and you can afford to have everything replicated immediately?  Keep in mind that large network pipes might not be necessary in every scenario.  Enabling change notifications means constant updates, but they are small in size.  On the other hand, using the default replication interval means less traffic, but larger amounts of data.  It is up to you to decide what is best for your environment.</p><p>So what are Change Notifications and how do I enable them?  Enabling Change Notifications tells AD that all attributes are to be considered urgent replication.  Instead of a domain controller queuing up all the changes it receives and then replicating them at its defined replication interval, it replicates all changes as they occur.  Here is how you can enable them:</p><ol><li>Open ADSI edit</li><li>Connect to and expand the Configuration container</li><li>Navigate to Sites-&gt; Inter-Site Transports container</li><li>Select CN=IP &#8211; Note you cannot enable change notification for SMTP links</li><li>Right click and select properties for each site link object for the sites you wish to enable</li><li>Select the &#8220;Options&#8221; property</li><li>In the edit attribute box, if the value is &lt;not set&gt; then change it to 1.  If it contains a value, you must get the new value by performing a Boolean BITWISE-OR calculation on the old value.  This would be <em>old_value</em> BITWISE-OR 1.</li></ol><p> </p><p>The above will enable change notifications on all connection object in those sites <strong>that are managed by the KCC.</strong>  If you have created any manual connection objects, which are <strong>not</strong> managed by the KCC they will <strong>not</strong> inherit the change notification setting from the site settings.  You will have to set each of those individually.  Here is how:</p><ol><li>Open ADSI edit</li><li>Connect to and expand the Configuration container</li><li>Navigate to Sites-&gt; My sitename with manual connections-&gt; Servers-&gt; My Server-&gt; NTDS Settings</li><li>Right click and select properties for each manual connection object in this folder.</li><li>Select the &#8220;Options&#8221; property.  Note that if the value is 1 then it is an intrasite connection object and owned by the KCC.  If the value is 5 then it is an intersite connection object and owned by the KCC.  If it is one of these values and owned by the KCC then do NOT change it.  It should be changed at the site level instead, otherwise if you change the value on a connection object that is owned by the KCC you force it out KCC control and the KCC will no longer manage it.</li><li>In the edit attribute box, change the value to 12.</li></ol><p> </p><p>How much of a difference can this really make?  Well mileage will certainly vary according to network and forest architecture.  I implemented this for a large world wide fortune 100 company with large network pipes.  Here are the total convergence times across each geographic region and also forest wide.</p><p><strong><span
style="text-decoration: underline;">EMEA</span></strong></p><p>Before &#8211; 24 minutes 25 seconds</p><p>After &#8211; 48 seconds</p><p><strong><span
style="text-decoration: underline;">Asia Pacific</span></strong></p><p>Before &#8211; 9 minutes 28 second</p><p>After &#8211; 51 seconds</p><p><strong><span
style="text-decoration: underline;">North America</span></strong></p><p>Before &#8211; 25 minutes 35 seconds</p><p>After &#8211; 58 seconds</p><p><strong><span
style="text-decoration: underline;">Entire Forest</span></strong></p><p>Before &#8211; 58 minutes 4 seconds</p><p>After &#8211; 2 minutes 57 seconds</p> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=yqSwQxRpU4U:68jUlkeMSi0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=yqSwQxRpU4U:68jUlkeMSi0:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=yqSwQxRpU4U:68jUlkeMSi0:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=I9og5sOYxJI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=yqSwQxRpU4U:68jUlkeMSi0:ACf-c_HutVc"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=ACf-c_HutVc" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=yqSwQxRpU4U:68jUlkeMSi0:3QFJfmc7Om4"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?i=yqSwQxRpU4U:68jUlkeMSi0:3QFJfmc7Om4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=yqSwQxRpU4U:68jUlkeMSi0:2nqncYFp4_M"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=2nqncYFp4_M" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RyanAdamsBlog/~4/yqSwQxRpU4U" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://www.ryanjadams.com/2010/05/turbo-charge-active-directory/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <feedburner:origLink>http://www.ryanjadams.com/2010/05/turbo-charge-active-directory/</feedburner:origLink></item> <item><title>SQLSaturday 35 Dallas Update</title><link>http://feedproxy.google.com/~r/RyanAdamsBlog/~3/mgnoo6w9bXQ/</link> <comments>http://www.ryanjadams.com/2010/05/sqlsaturday35update/#comments</comments> <pubDate>Wed, 05 May 2010 20:49:31 +0000</pubDate> <dc:creator>Ryan Adams</dc:creator> <category><![CDATA[NTSSUG]]></category> <category><![CDATA[Personal]]></category> <category><![CDATA[SQL Saturday]]></category> <category><![CDATA[SQL Server]]></category><guid isPermaLink="false">http://www.ryanjadams.com/?p=135</guid> <description><![CDATA[SQLSaturday 35 Sold Out. Verify your registration status.]]></description> <content:encoded><![CDATA[<p>I am very excited to be a part of the core planning committee for <a
title="SQLSaturday 35 Dallas" href="http://www.sqlsaturday.com/35/eventhome.aspx" target="_blank">SQLSaturday 35</a> in Dallas on May 22nd, 2010.  The Dallas area is a technology hot spot and we have quite a local SQL community.  The North Texas SQL Server User Group averages 80 people every month.  If Sean McCown (<a
title="Sean McCown Twitter" href="http://twitter.com/midnightdba" target="_blank">Twitter</a>|<a
title="Midnight DBA" href="http://midnightdba.itbookworm.com/midnightdba/blog/" target="_blank">Blog</a>)  is teaching a class before the meeting we rarely have under 100 people.  SQLSaturday is no exception, and current registrations put those numbers to shame.  This is our first time to hold a SQLSaturday in Dallas and planning an event this size is quite an under-taking.  I&#8217;m only handling two things and that is almost a full time job itself.  The planning committee has done quite a bang up job and this event will NOT disappoint.</p><p>There&#8217;s even a RUMOR that ice cream will be provided! I know what you are thinking, &#8220;Where do I signup?&#8221;  Well I&#8217;m sorry to tell you that you missed the bandwagon, but also excited to say that we are full and at capacity.  <strong>We have over 500 registrations with 50 people on the waitlist!</strong>  This is going to be one big event.</p><p>If you are already registered you can verify your registration and lunch paid status <a
title="SQLSaturday35 Registration Status" href="http://northtexas.sqlpass.org/portals/9/SQL_Sat_Files/registration_status.pdf" target="_blank">HERE</a>.</p> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=mgnoo6w9bXQ:lsVC0ykWJ5Y:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=mgnoo6w9bXQ:lsVC0ykWJ5Y:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=mgnoo6w9bXQ:lsVC0ykWJ5Y:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=I9og5sOYxJI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=mgnoo6w9bXQ:lsVC0ykWJ5Y:ACf-c_HutVc"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=ACf-c_HutVc" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=mgnoo6w9bXQ:lsVC0ykWJ5Y:3QFJfmc7Om4"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?i=mgnoo6w9bXQ:lsVC0ykWJ5Y:3QFJfmc7Om4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=mgnoo6w9bXQ:lsVC0ykWJ5Y:2nqncYFp4_M"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=2nqncYFp4_M" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RyanAdamsBlog/~4/mgnoo6w9bXQ" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://www.ryanjadams.com/2010/05/sqlsaturday35update/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <feedburner:origLink>http://www.ryanjadams.com/2010/05/sqlsaturday35update/</feedburner:origLink></item> <item><title>AD LastLogon Utility</title><link>http://feedproxy.google.com/~r/RyanAdamsBlog/~3/MD9d7gVbqNo/</link> <comments>http://www.ryanjadams.com/2010/03/lastlogon/#comments</comments> <pubDate>Fri, 26 Mar 2010 20:07:33 +0000</pubDate> <dc:creator>Ryan Adams</dc:creator> <category><![CDATA[Active Directory]]></category> <category><![CDATA[VBScript]]></category> <category><![CDATA[Windows Server]]></category> <category><![CDATA[HTA]]></category><guid isPermaLink="false">http://www.ryanjadams.com/?p=127</guid> <description><![CDATA[HTA utility to discover, manage, and report AD user last logon times.]]></description> <content:encoded><![CDATA[<p>A couple of years ago I had a group that used a sharepoint web front end that created AD users on the fly in the backend. The problem is that people would either not use it again after the first login, or they would just signup again if they forgot their credentials. Although all of that COULD have been handled by the developers on the front end, it was not and my concern was AD. For the sake of a clean AD, additional replication overhead, and SOX compliancy, unused accounts needed to be removed. Of course let&#8217;s not forget the security implications.</p><p>It was the application owners&#8217; responsibility to maintain the accounts, but without any AD knowledge they needed a dummied down way to clean up the accounts. At that time I was still learning VBScript and decided to kick it up a notch and write my script in an HTA. I swear my scripts are much cleaner these days. I&#8217;m not going to go over all the code, but please leave any comments if you have questions. After you copy the code and save it as an .HTA you will need to change the LDAP paths according to your AD, the maximum age for enabled accounts, and the maximum age for disabled accounts. The reason for querying whether the account is disabled or not is so you can do something like disable an account that is 30 days past and delete it if more than 60 days past. You should also know that I use the LastLogonTimeStamp attribute since it is replicated to all domain controllers. Conversely the LastLogon attribute is not replicated and will vary from DC to DC. For more on the workings of the LastLogonTimeStamp attribute and its replication frequency (14 days) see this <a
href="http://blogs.technet.com/heyscriptingguy/archive/2010/01/27/dandelions-vcr-clocks-and-last-logon-times-these-are-a-few-of-our-least-favorite-things.aspx" target="_blank">TechNet article</a>.</p><p>This HTA will not only show you your unused accounts, but will let you save it in a spreadsheet, selectively disable, enable, or delete the accounts, and let you save your changes to a spreadsheet.  Just for reference you can also find this script in the Microsoft Scripting Guys&#8217; Script Repository <a
href="http://gallery.technet.microsoft.com/ScriptCenter/en-us/760c81d2-51c5-4fb1-909f-255949056308" target="_blank">HERE</a>.  Don&#8217;t panic, I didn&#8217;t steal it; I submitted it to them to add to their community submitted scripts.</p><p><a
href="http://www.ryanjadams.com/wp-content/downloads/LastLogon.zip" target="_blank"><img
class="alignnone size-full wp-image-131" title="Download" src="http://www.ryanjadams.com/wp-content/uploads/2010/03/Download.png" alt="Download File" width="145" height="145" /></a></p> <div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=MD9d7gVbqNo:Pegl__dstms:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=MD9d7gVbqNo:Pegl__dstms:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=MD9d7gVbqNo:Pegl__dstms:I9og5sOYxJI"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=I9og5sOYxJI" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=MD9d7gVbqNo:Pegl__dstms:ACf-c_HutVc"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=ACf-c_HutVc" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=MD9d7gVbqNo:Pegl__dstms:3QFJfmc7Om4"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?i=MD9d7gVbqNo:Pegl__dstms:3QFJfmc7Om4" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RyanAdamsBlog?a=MD9d7gVbqNo:Pegl__dstms:2nqncYFp4_M"><img src="http://feeds.feedburner.com/~ff/RyanAdamsBlog?d=2nqncYFp4_M" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RyanAdamsBlog/~4/MD9d7gVbqNo" height="1" width="1"/>]]></content:encoded> <wfw:commentRss>http://www.ryanjadams.com/2010/03/lastlogon/feed/</wfw:commentRss> <slash:comments>0</slash:comments> <feedburner:origLink>http://www.ryanjadams.com/2010/03/lastlogon/</feedburner:origLink></item> </channel> </rss><!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (enhanced)
Database Caching 4/41 queries in 0.035 seconds using disk
Object Caching 633/723 objects using disk

Served from: www.ryanjadams.com @ 2010-08-20 15:22:02 -->
