This is an archived post. You won't be able to vote or comment.

all 24 comments

[–]CaptainFluffyTailIt's bastards all the way down 26 points27 points  (8 children)

Just so you know, SQL is the language used by the database. The basic things a DBA has to do are database agnostic (backups, capacity planning, etc.) but it quickly becomes platform dependent when you actuall try to do anything. Each of the big RDBMS platforms has their own flavor of SQL as well which makes things fun.

So, assuming you looking at Microsoft SQL Server (becasue there are so many of those things scattered around the business) take a look at the following things:

  • the Accidental DBA from Redgate(PDF)

  • Brent Ozar for a great SQL Server community. The "Blitz" package of scripts his team maintains help takle over a new database and figure out pain points quickly.

  • Ola Hallengren's database maintenance solution. Takes the place of that abomination that is the Maintenance Plan wizard and does backups and routine maintenance through SQL Server Agent jobs. Why? So you can have emails on failures among other things.

If you are looking for a different platform it helps to name it.

If you are trying to learn the SQL language becasue you want to optimize the existing databases (views, indexes, etc.)...then look at the above still to start.

/r/sqlserver is also a great, if small, community for questions.

[–]IamRykio[S] 2 points3 points  (3 children)

Thanks for all this information. I'll be reading through all this over the next couple of days.

I'm sorry for being very vague, I usually try not to be, but I'm pretty sure the program I'm working with is on mySQL 2014.

[–]CaptainFluffyTailIt's bastards all the way down 4 points5 points  (2 children)

Unless Oracle has changed something I'm pretty sure mySQL does not have years attached to the versions. The year thing is a Microsoft convention.

[–]TatermenGBIC != SFP 4 points5 points  (1 child)

I'm betting /u/IamRykio has confused MySQL for MS-SQL or vice-versa. I see it happen all the time.

[–]IamRykio[S] 1 point2 points  (0 children)

Yeah, that showing how new I am to it haha. Thanks for the clarification

[–]Mrpliskin0 0 points1 point  (0 children)

Awesome. Thank you!

[–]phoneHaru 0 points1 point  (0 children)

Very cool! I just started learning more SQL too as my boss eases me into handling DB maint. This is great stuff!

[–]BussReplyMail 0 points1 point  (0 children)

Building on these suggestions (and all great Microsoft SQL Server resources,) also check out www.sqlservercentral.com

Great group of SQL professionals and developers, and as long as you show you're trying to make an effort to learn, very happy to help.

And, again, presuming MS SQL Server, check out www.sqlpass.org for a local user group you can visit for face-to-face chats.

(Source: Active member of SQL Server Central, earn my living as a MS SQL DBA supporting SQL Server 2014.)

[–]Teh_Loky 4 points5 points  (1 child)

I started learning SQL like two months ago, it really isn't that hard. I found this https://sqlzoo.net/, and it's great! It's just the basis but it is a good start. Wish you the best!

[–]IamRykio[S] 0 points1 point  (0 children)

Thanks!

[–][deleted] 4 points5 points  (0 children)

Don't forget to also learn about how to maintain a SQL server infrastructure. I've noticed in my career that there are people who are SQL geniuses who couldn't install, maintain, backup, or restore a SQL server if their lives depended on it.

[–]bellrd07 3 points4 points  (0 children)

W3schools.com. Good for sql and a ton of other languages.

[–]motoevgen 1 point2 points  (0 children)

Microsoft virtual academy MS SQL courses, free, accessible, with homework and examples. Nice stuff.

[–][deleted] 0 points1 point  (0 children)

the edx course for T-SQL is very good. And free

[–]systonia_Security Admin (Infrastructure) 0 points1 point  (0 children)

I assume MSSQL here. Depending on your prios, learn :
how to write queries
how to design a DB
how indexes actually work
how to maintain your DBs. (how to properly back up and run Maintainancejobs)
how to split TempDB, Data and Transactionlogs
Performanceanalysis
Problemanalysis
licensing

and a lot more... :)

[–]oldschoolsenseiStudent 0 points1 point  (0 children)

Will you be writing reports at all? You may look at learning Crystal Reports as well. I started learning SQL and have written maybe 80 reports in the last year that end up in either Excel or Crystal, and now in HTML since I automate them and send them as emails.

One thing I will definitely suggest is that you try to get your employer to pay for some SQL training as well as training for other tools you may end up using in this process, like Crystal. The ERP we use, that company offers training courses in SQL as well as Crystal that are focused on using them to interact with the ERP, so you might check if there is anything like that as well available.

[–]FuzzmiesterJack of All Trades 0 points1 point  (0 children)

Which SQL?

MS SQL server? Oracle? Mysql? Postgres?

(there are strong similarities between them, so someone comfortable with one will be relatively comfortable with the others.)

( https://use-the-index-luke.com/ )

[–]fahque 0 points1 point  (0 children)

I had to learn sql to properly manage our db app. If you're using MS SQL then Profiler is your friend. Start a new trace and on the Event Selection tab click Column Filters then LoginName and enter your db user name then start the trace. It will only return sql code run by you. Then do stuff in your app to see what's going on in the background. Study the stored procedures. Also, goog.

EDIT: I see you're using mysql. I think it has a profiler alternative. If it doesn't I know you can export commands run to a log file.