Ryan Adams Blog

SQL, Active Directory, Scripting

In an effort to be transparent, as I promised I would in my campaign, I want to explain my actions regarding the email sent out through the PASS Virtual Chapter.  As part of my campaign, I reached out to my personal network and asked folks if they would be willing to send out a note on my behalf.  I asked chapter leaders and that included the leaders of the Performance Virtual chapter, of which I am President.  Some graciously chose to send an email on my behalf, and the Performance Virtual Chapter was one of them.  I did not send anything myself and I did not coerce anyone into doing it.  I verified the rules prior to making the request, but I didn’t think about the perception that it would send to the community.

I had no intention of ill will or being unfair since all candidates have the same right to ask community members and leaders for support.  I also had no intention of taking advantage of my position in leadership.  However, I see that it was wrong to send the request that I did.

I’ve come to see that leaders should strive to adhere to a standard higher than simply following the rules.  Leaders should avoid even the appearance of impropriety.  I failed at both those tasks.  I created a situation where people were concerned that I had abused my position as a VC leader.  The fact that I didn’t break any rules doesn’t matter, I am 100% responsible.

This has been a painful experience for me in many ways but it has also helped me to be a better leader. Moving forward my goal won’t simply be to follow the rules. My goal will be to always avoid a situation where anyone might ever accuse me of using a position of public trust to benefit myself.

I apologize to the community and my supporters for the harm this has caused.  Please be assured that I have learned from this.  I view myself as a man of integrity and I will continue to exemplify that in everything I do.

The Rules | NomCom Response

Today I am going to continue with my PASS Election Questions and Answers series.  Here is where you can find the rest of the series and my campaign landing page.

Question 1

If elected, what would prompt you to step down before the end of your term?


I always complete a commitment. That is something that was instilled in me by my parents and something I teach my children. The only reason I would ever step down would be an illness in my immediate family.

Question 2

Where do you stand on PASS BAC? Should we do it?


Yes this is something we should be doing…for now.  The market is changing constantly and trends are pointing businesses toward analyzing their data to get business insights. PASS needs to remain relevant in the current market place to support industry workers. A part of remaining relevant is to consistently evaluate current programs against the industry and look for opportunities to engage in new ways.

The PASS BAC Conference has been in the green which indicates that the interest and market exist.  As the business and data groups grow closer together it makes sense for PASS to serve this branch of our growing market.

Most DBAs don’t like this because they think it means PASS is moving away from SQL Server DBAs which is the core that PASS grew from.  I’m a DBA myself and I understand this sentiment and here is where the rubber meets the road.  I think it makes sense now for PASS to test this new market and extend itself that way.  I don’t think PASS should be moving toward BA and away from a DBA centric focus.  I also think that just because it makes sense now doesn’t mean it will always be that way.  Things should always be re-evaluated on a regular basis.  Does this meet business goals?  Is this inline with the mission of PASS to Connect…Share…Learn?  Right now I think it does.  Will it next year?  We need to re-evaluate it and make sure it is still the right thing to do.

You wouldn’t create a DR plan or have backups and never test them, right?

Question 3

What will you do if PASS BAC needs every portfolio owner to give up 25% of their budget?


This is tough without knowing specifics, but a request like that would need to be justified with an ROI and KPI on the benefits to PASS. Value needs to be shown before a decision can be made and a request like that would need some impressive margins.

Question 4

How will you grow PASS?


PASS is a grassroots organization and we can continue to grow PASS by nurturing the areas that touch PASS at those levels. I also think we can stimulate future growth by getting involved with our youth in the educational systems.

As we continue through the campaign period for this year’s PASS Board of Directors Election (Voting opens tomorrow morning), I want to continue to show our community members the type of board member I would be by asking myself some questions.  You can find my first questions post here.  I also want our members to know that this is the type of transparency you can expect from me.  I’ll blog about everything I can and solicit your feedback.

Here are the other posts in the series.


Question 1

How will you influence progress in the portfolio you are given?


I am a very organized and goal driven person. I will influence progress through close relationships with PASS HQ and making sure we have a plan with documented steps that we can apply to an agreed upon timeline.

Question 2

If what you want to do and the budget you have is not enough, what will you do?


I will start looking for alternatives that would be more cost effective. If it is something beneficial to multiple portfolios I would look to share the cost for a mutual benefit. If it is something that might be beneficial to other organizations I would look to see if a partnership might be established. I will also look into what can be done in the current year budget to increase funds for the following year.

Question 3

If you don’t get any support from any board member for something you are passionate about, what will you do?


Sometimes we can let our passion get the best of us and it causes us to be blind to the bigger picture.  This is something that I am very aware of working in such a large corporation for so many years.  That experience has allowed me to identify those situations, step back, and evaluate it again.

You have to ask yourself what it is that everyone else sees that you do not. Discussions with individual board members to understand their thinking would be needed to reconcile my passion with the true needs of the community.  The needs of the community will always be my focus.

The 2014 NomCom made some changes to how the election process works and it’s something you need to pay attention to.  It was posted on the PASS blog, but not really advertised that much so I want to highlight those changes and their importance.  I served on the NomCom in 2013 and we knew changes were needed and I think the changes that were made are a great move in the right direction.  The first thing the 2014 NomCom changed are the minimum requirements to even be considered for an interview.  You now need to meet the following requirements:

• Be a current eligible voting member of PASS
• Have direct volunteer experience with PASS
• Work with one of the Microsoft data technologies
• Be free of conflict of interest that would affect eligibility
• Be fluent in written and spoken English
• Agree to the time and travel commitments required to serve on the PASS Board of Directors
• Submit three references with a statement of support

The Big Change

This is something I encourage EVERY voter to pay close attention to.  In the past, all candidates were ranked from 1-10 or however many candidates there were.  As a voter that gives you some indication of how successful and prepared a candidate is to serve the community.  However, we are data folks and that’s just not enough information to make an informed decision.  It gives you a scale without any context around it.  Wouldn’t it be better if you could see what candidates were graded on and how they compare?  Well now you can.  The rankings are now gone and as a voter you get to see the scores of every candidate and how they stack up with some context around what they mean.

I think this was a great change and something every voter should look at as they consider their vote.  Below are the scores and here is a link to the PASS Campaign Site.  I didn’t beat out the incumbents, but considering how small the scale is I think I gave them a run for their money.  I hope this shows my dedication and ability to lead this great organization as well as your vote.

SCALE: Weak (1) Acceptable (2) Strong (3) Very Strong (4)


Candidate Experience with PASSVision for PASSUnderstanding of OrganizationOther Board Experience
Ryan Adams
Argenis Fernandez2.
Tim Ford4.
Jen Stirrup4.


Candidate Written & Verbal Commun
ication Skills
Management Experience/
Budget Experience
ReferencesRegional Influence
Ryan Adams
Argenis Fernandez3.
Tim Ford3.
Jen Stirrup3.

I’m going to hopefully show examples of some qualities I have that will benefit me if chosen as a board member.  I’m going to do that by pretending you folks asked me some questions.  Here we go!

Here are the other posts in the series.



Question 1

Board members are expected to take ownership of projects, sometimes projects of their own creation. Can you tell us about a time where you saw an opportunity to either join or create a project that was a success?


The most recent was the 2015 Performance Palooza we held as the Performance Virtual Chapter. As the President I oversaw the budget, assigned volunteer roles, hosted sessions, and followed up with attendees and speakers. We delivered 8 hours of training to almost 3,000 attendees and had a lot of amazing feedback. The team (Carlos Bossy, Jeff Renz, Paul Hiles, and Leslie Weed) made it a smashing success with a 174% growth over last year.  My hat is off to them for all their hard work and time!

Question 2

Can you describe a situation in which you were able to use persuasion to successfully convince someone to see things your way?


For our next SQLSaturday I wanted precons to be chosen by the community.  Some board members were not comfortable with that because they felt good sessions that would sell might not be chosen.  It’s the community that attends these sessions and I wanted to put the power in their hands to choose what they would attend.  It might fail, but I thought it was worth trying to find out, keep the community involved, and increase transparency in the process.  I was able to persuade them into trying my idea by putting some parameters around the submission process.

Question 3

Can you give me an example of when you showed initiative and took the lead?


When I started as a Regional Mentor the parameters and goals were very loosely defined. I took the initiative in my region to start regular bi-monthly calls with the leaders. I would even host webcasts to demonstrate new features of the PASS websites and various other changes in the portfolio over time. I would also provide call notes back to the leaders as well as the Director over that portfolio and PASS HQ. Now every RM is encouraged to have regular calls with their region and the template for holding those calls was written by myself and Karla.


I hope this gives you some insight into my character, my ability to execute and get things done, and my focus on the community members in everything I do.  Stay tuned for more!

SQL Saturday Dallas

I’ll be doing a precon for SQLSaturday #447 in my home town of Dallas on October 2nd, 2015 titled “Creating a High Availability and Disaster Recovery Plan” .  If you are in the area or thinking of attending this event, I would love to have you in the class.  We are going to cover backups, windows clustering, AlwaysOn Failover Cluster Instances, AlwaysOn Availability Groups, and more.  This class will take each of those technologies in a progressive order to build on each other.  At the end of the day we will have a single solution built out in virtual machines on my laptop that use all of those technologies to build a comprehensive and real world high availability and disaster recovery plan.

Still not convinced?  Here are some testimonials from previous classes.

Oklahoma City Attendee

This is the best class I have attended in my entire life!

Denver Attendee

This past weekend was SQL Saturday #331 Denver. I always enjoy SQL Saturdays, but I was especially looking forward to this weekend because I was going to attend a SQL Saturday Pre-Con for the first time! The pre-con was fantastic! The Denver SQL Server User Group did an outstanding job, and it was a wonderful day of learning and networking.

I attended Ryan Adams’ session A Day of High Availability and Disaster Recovery. Ryan did an excellent job with this all-day session. You could tell that his agenda was carefully planned to build upon each module. Ryan’s first module was an in-depth tour of backups and restores, pointing out that these concepts were foundational to all High Availability (HA) and Disaster Recovery (DR) solutions. In his next module, Ryan expanded on backup/restores as he introduced us to mirroring. Ryan then walked us through the concept of Windows Server Failover Clustering (WSFC). Culminating in his module on AlwaysOn Failover Cluster Instances and Availability Groups, Ryan tied all the concepts together providing a holistic view of HA/DR. I would definitely recommend this all-day session to anyone looking to expand his or her knowledge of HA/DR. To find out more about Ryan Adams, you should check out his blog at ryanjadams.com.

Madison Attendee

One thing I liked the most about this session is the speed of the presenter was just right.  He would get our feedback frequently to see how fast or slow we want to move.  He had a lot of real world examples from his own experience and from other participants.

Madison Attendee

Great lecture!  Ryan is a very logical presenter; made the material extremely easy to understand.  I greatly enjoyed the class.

Want the full description?  Here it is:

Abstract: You have been tasked to configure a high availability and/or disaster recovery plan to ensure your company’s systems are always up and running while able to withstand a disaster. SQL Server offers several options, but how do you choose the right one to meet your business requirements? I’ve been faced with this same problem. I’ll help you figure out how to choose the right technology. We will start off with a solid foundation in backups and demonstrate how to configure them for initializing the various HA/DR technologies while also cutting your backup and restore time in half. You will see how you can keep an offsite copy of your database in sync with your production system with mirroring.

You’ve read that several of the HA/DR solutions require Windows Failover Clustering, but you don’t know anything about managing a complicated Windows cluster. I’ll show you how to setup and configure a Windows cluster and we’ll build on that with SQL Server AlwaysOn Failover Clustering Instances that provide the 99.999% of up-time your management demands. Lastly we’ll dive into how to setup AlwaysOn Availability Groups to solve both HA and DR in one solution. We will see how all these technologies work together by discussing a case study and developing a comprehensive solution just like you have to do when you return to the office. Here’s what you will learn:

Planning a backup strategy to avoid a data disaster
Cutting your backup and restore time in half when initializing DBs for Mirroring or Availability Groups
Configuring mirroring to keep production in real-time sync with an offsite database copy
Learning configuration tips to increase throughput
Configuring a Windows Failover Cluster to meet that five 9s business requirement
Discovering how to properly configure a Windows Cluster quorum to support the AlwaysOn feature set
Implementing a SQL AlwaysOn Failover Cluster Instance
Creating a SQL AlwaysOn Availability Group to solve both your HA and DR requirements in one solution

You’re just as excited and convinced as these fine folks, right? Then click the link below to get signed up.


I built a brand new virtual machine running Windows 2012 R2 and SQL Server 2016 CTP 2.2 (the June edition).  The exact version as shown in the error is 13.0.0407.1 but in SSMS it returns 13.0.407.1.  As some of you may know, one of the new things in SQL 2016 is that Microsoft decoupled the install for management studio so you can now download and install it separately.  They also added an auto update functionality that alerts you when new versions are available for download.

A few weeks after I installed, a new version was made available and I got a notification in the system tray.  I clicked the notification which sent me to the download page and I downloaded the new version.  The new version is the July edition 13.0.400.91.  When I went to install it I got this.


I did some asking around and the problem is that SSMS and the engine share some libraries and if the SSMS install were allowed to proceed and update those libraries you would have a version mismatch.  This would only happen on a server with SSMS and the engine installed.  Microsoft is aware of the issue and working on providing a better experience, but until then you have 2 workarounds.

  1. Upgrade the engine and then you can upgrade SSMS.
  2. Install SSMS on a different machine by itself.

I opened a Microsoft connect bug on the issue so they can track it.  Feel free to up vote it so it stays fresh in their memory.



On July 15th, 2015 I spoke to the PASS Architecture Virtual Chapter about AlwaysOn Failover Cluster Instances and AlwaysOn Availability Groups.  Obviously we focused on the technology from an architectural standpoint.  We discussed a lot of things that come into play when designing an AlwaysOn infrastructure whether it be FCIs and/or AGs.  We answered questions like, “Where are my replicas located on the network and how they are connected?”, “What OS should I use?”, “How import is the Windows Clustering piece?” and many others.  However, we only had time for a handful of questions so I thought I would just blog all the questions and my answers here.

  1. Although we can use a readable replica for reporting, we can’t have different indexes on the primary and the replica, true?
    1. Correct.  All indexes must be created and maintained on the primary and they all get replicated to the secondary replicas.
  2. How do you handle synchronizing system databases in Disaster Recovery setup?
    1. It’s true that you cannot mirror system databases nor can you add them to an AG.  You can, however, protect them with an FCI, log ship them, and replicate them.  NONE of those are a replacement for backups though, so go do that first.
  3. You recommended SQL Server 2012, why not 2014?
    1. I didn’t recommend SQL Server 2012, I recommended Windows 2012.
  4. Here is the situation: I have 5 instances on 64CPU/256Gb/SAN multi TB storage. 5 instances SQL Server 2008 with over 250 databases on each. All are in sync mirroring. Per MS: 10 availability groups 100 databases should be fine. How would you handle the situation to transition from mirroring to Always-On?
    1. There are actually several questions buried in this one, but I think the real question is that you have some DBs mirrored today so how do you move those to AGs?  You could create a cluster with your mirrored servers, break the mirror, and create the AG (You’ll need to do some cleanup though).  The other solution would be to create an AG on other servers and migrate from the mirrored servers to the AG.  So there is more than one solution and there are more than just these two.  The direction you choose really lies within your business requirements and current hardware.
  5. For Availability Groups: If you use the default instance for both Primary and Secondary replicas.  Can both/either servers support multiple SQL instances where the other instances are not using AG?
    1. Yes you can have other instances running that do not have any AGs.  You can also have other instances that do have AGs.  For the latter, you cannot have a DB in an AG whose replicas are different instances on the same OS.
  6. I’d be interested in your thoughts (blog post?) regarding why DBCC CHECKDB on a secondary without doing it on the primary is insufficient. Does that also apply to needing to do it on a PROD server even if the databases are restored to a TEST server on a scheduled basis and DBCC CHECKDB is done as part of the restore job?
    1. My reasoning is the same for both scenarios.  If you run DBCC on a secondary replica or test server the physical checks are looking at completely different drives and hardware.  That means I’m never checking the physical side of my production server.  An alternative that I have seen many folks do, especially with larger databases, is to run a full DBCC on the test server and run it with the PhysicalOnly parameter on the primary.
  7. For secondary node does it make much difference keeping read-intent or readable secondary except mentioning read intent in connection?
    1. Let me try and rephrase this one.  What is the difference between setting a secondary replica’s “Read Only” property to “Yes” versus “Read-intent Only”?  Yes means that anyone that has access can connect and read data.  Read-intent Only means that anyone that has access can connect so long as they have “applicationintent=readonly” or “applicationintent=yes” in the connection string.  This is a way to “hide” users from reading your secondaries when you might have an application like SSRS that needs read only and they should be using that instead of accessing it directly.  It’s not a security feature and it only takes a user an internet search to find the secret sauce.  Of course you can also select No for the option and prevent read on that replica entirely.
  8. Do we need to do log backups on the secondary server?
    1. That is entirely up to you.  You can take log backups on the primary or secondary.  The log chain is kept in tact regardless of which replica you take a log backup on.

SQL in the City Seattle 2015

Redgate will be hosting another SQL in the City event on the Monday right before the PASS Summit 2015.  This is a free all day event that you can take advantage of by coming into town a little early.  The event will feature some of the best speakers and SQL Server MVPs in the industry, so I’m honored to have been picked to speak this year.  In addition to the sessions you will have the ability to provide direct feedback to the developers of Redgate’s many products.  You will get to network with other professionals in the industry and see how they use SQL Server and Redgate’s products in different and interesting ways.

I’ll be presenting a session on how to monitor Policy Based Management.  We will talk about how you can monitor it with native SQL Server alerts and what you need to see those alerts in Redgate SQLMonitor.  I’ll also show you how you can trend the alerts over time and provide reporting solutions to your management.

You can click on the banner at the top to find out more and get registered.  I hope to see you there!

SQLSaturday Dallas

The North Texas SQL Server User Group Board of Directors has decided to do something a little bit different for selecting Precons for our next SQLSaturday.  The SQLSaturday event will be held on October 3rd with the precons on October 2nd.  We have decided that since it is the community and our user group members that attend these precons that they should choose who gets selected.  Our leadership is constantly looking for ways to stay rooted in the community and give back so we’re excited since we think this does exactly that.  If you are paying money to attend these valuable full day training sessions shouldn’t you have some say in what the topics are?  Well now you do!

We are going to open the call for Precon speakers from August 1st to August 14th.  If you want to submit, you just need to send the track (DBA, BI, Developer), your Bio, and Abstract to precons@ntssug.com. We’ll post all of the submissions HERE by August 15th and the voting will begin from there until August 21st.  In order to vote, Click Here to send an email with the precon title as your subject, between August 15th and 21st.  You are only allowed to vote for 1 precon since you can only be in one place at a time, so vote for the one you would want to attend.  We’ll tally the votes for the top DBA session, BI session, and developer session.  The winners will be announced by August 24th.

The precons will be held on October 2nd at the Microsoft offices in Irving.  7000 North Highway 161 Irving, Texas 75039 Building LC-1.  We’ll have an early bird price of $99 and the full price will be $125.