Author: way0utwest

  • Daily Coping 29 Mar 2022

    I started to add a daily coping tip to the SQLServerCentral newsletter and to the Community Circle, which is helping me deal with the issues in the world. I’m adding my responses for each day here. All my coping tips are under this tag.

    Today’s tip is to notice what is going well, even when things are difficult.

    Overall my life is amazing. The problems I have are just minor annoyances, really, and I try to remember that. I’m not always successful, but my wife helped me remember that recently.

    We took a trip to see my daughter recently. This was a long weekend, leaving Thur, returning Monday. A snow storm was scheduled for Monday, so my wife was concerned and wanted us to change and come back Sunday. My daughter has been having a hard time and didn’t come home for Spring Break, so I wanted to see her, support her, and get some time.

    All of this was on my mind when we boarded a plane for a 945a departure at 910, and more on my mind when the 12 of us that got on packed up and left at 915. There was some issue with the toilet being broken, so we needed a new plane.

    Not the end of the world, and as I fly a lot, usually a couple times a year there’s some issue. In this case, we had to change gates and wait for a plane. It was scheduled to depart now around 1110. The plane didn’t arrive at the gate until about 1045, and after unloading and cleaning, we didn’t load until around 1130. We moved away from the gate, went to de-icing, and things were looking up. Slightly stressed as I had a 2 hour drive on the other end and wasn’t sure we’d get dinner with my girl, but that’s a minor issue.

    We got to the runway and then turned around and returned to the gate. Some sort of brake issue. I like brakes on planes, so I took it in stride. A little stressed, but OK. At the gate, they announced this might take some time, so they let people get off. I’d been upgraded (again, my life is easy and amazing), so my wife drank mimosas while I read a bit. I tried to relax, but it was hard.

    They announced it was a sensor, so they brought people back on. Then this wasn’t the sensor, so more mechanics, and people off the plane again. We stayed on again, more mimosas for me wife, but stress for me. At this point I was wondering if we’d leave. If we pushed to Friday and left Sunday, that would start to feel silly.

    My wife reminded me that we were getting time together, whatever happened. We could find a way to go out another week or have my daughter come home. We didn’t have any big commitments, so I should relax.

    I tried, and it was a good reminder that things were going well. I was in a first class seat. I could have a drink (I declined, citing my diet), and I was with my wife on a trip. I didn’t relax much, but I did at least see the good things.

    We did manage to finally go, six hours late, and we arrived at the AirBNB at 1130. Too late for dinner, but we had a great weekend with my daughter, and we stayed through Monday. Everything worked out.

  • Starting LocalDB–#SQLNewBlogger

    Another post for me that is simple and hopefully serves as an example for people trying to get blogging as #SQLNewBloggers.

    Lots of people have never worked with LocalDB, which is an in-process version of SQL Express. No service account, just a SQL Server instance running with your app. It’s a nice lightweight way to get SQL Server running quickly without a hassle.

    This is a SQL Server Express version, but the bare bones for development. This post looks at how you can get this running.

    This version of SQL is installed with SQL Express, and with Visual Studio. If you look in this path: C:\Program Files\Microsoft SQL Server\150\Tools\Binn, there is a SQLLocalDB.exe. You can see that here.

    2022-03-03 09_08_00-Binn

    This is my SQL Server 2016 version of LocalDB. I can start a new instance by calling this with the CREATE option. I can give this a name as well, as I might want to stat multiple instance for different apps. Here I’ll create an instance called app1.

    SQLLocalDB create app1

    I then call the same command, but use START instead of CREATE. You can see this reports as started from the CLI. I also add the INFO call to get status.

    2022-03-03 09_10_35-C__Windows_System32_cmd.exe

    Now I can connect. I use (LocalDB)\app1 to connect:

    2022-03-03 09_11_39-Connect to Database Engine

    I see I’m connected to a version of LocalDB then:

    2022-03-03 09_12_03-SQLQuery2.sql - (localdb)_app1.master (ARISTOTLE_Steve (70))_ - Microsoft SQL Se

    Now it’s just an instance of SQL Server I can use.

     

    SQL New Blogger

    I needed to check something for a customer and realized I hadn’t started LocalDB in a long time, so I needed to check the docs. I spent 10 minutes putting this post together.

    An easy type of post for any of you out there. Learn something, try something, write something.

  • Easily Repeating Work

    I love this idea from Ken Fisher: saving your work. I don’t act as a DBA anymore, but when I did, I did something similar. We often logged the scripts we used in a file,  as a part of a log, so that if we broke something and another DBA got a new ticket, they could check what you had done. Over the years, we tried two different methods. First was using the desktop of the instance itself, since we often went to a room to log into the server in those days

    The second way was in an Exchange public folder, where we added a new entry for each day. This way we could note the server and the scripts run. Since most tickets were dated, we could easily find the scripts if we were looking at a ticket. Since a user often updated or re-opened the ticket, we could use the public folder as a central note location from the DBA team. We could even point to this folder for our ISO and SOX auditors to show them what had been logged by people who supported the systems. Not a perfect auditing system, but one that often was accepted by auditors.

    However, the one thing missing in there, from my perspective, is version control. While I think it is important to track these scripts in a team of DBAs, I also think we want to ensure that as we grow and change these scripts, we know how and why. Junior people can learn from changes made by senior ones, and if a DBA alters one of these scripts and breaks something, just as a developer might refactor code and introduce a bug or break functionality. After all, these scripts are code.

    If there is a problem, we want to be able to roll back, which means that we ought to save these scripts into a repository of some sort. While I like the idea of a share that all DBAs can access, I more like the idea of a (secure) Git repository that can be downloaded anywhere, provides a second backup, and can be audited over time. All of these are important features that any enterprise should implement, especially one that is regulated. We want to protect ourselves if a DBA gets hit by the proverbial bus.

    I like collaboration, sharing knowledge, and tracking the work you do in a team. It’s important for raising the skills of everyone on the team and helping new members get up to speed quickly. This facilities consistent results, and if done using a tool like version control, helps ensure that your scripts are backed up in a way that preserves the knowledge in your code through any changes made by the team.

    Steve Jones

    Listen to the podcast at Libsyn, Stitcher, Spotify, or iTunes.

  • Daily Coping 28 Mar 2022

    I started to add a daily coping tip to the SQLServerCentral newsletter and to the Community Circle, which is helping me deal with the issues in the world. I’m adding my responses for each day here. All my coping tips are under this tag.

    Today’s tip is to listen to a piece of music without doing anything else.

    I saw a list of acoustic guitar songs recently and on it was Babe I’m Gonna Leave You by Led Zeppelin. I listened to a lot of their music as a youth, and I’d forgotten about this song. So, I pulled it up on Spotify, closed my eyes, and just listened.

    Like many of their songs, there is some beautiful, peaceful guitar part that moves into a rock opera. An interesting lick that quickly gets buried inside of a heavy bass and drum part. At times, the loud singing is at odds with the guitar.

    An interesting piece.

    Another one, which I actually heard while swimming recently, was Starship by Kanye West. I was moving along and found myself distracted by this tune, actually hearing the words. I know I’d heard the song before, but I don’t know I had listened to the words, but enjoyed that one, completely distracted from the effort of the monotonous laps.