Um banco de dados é resumidamente uma coleção organizada de dados estruturados, armazenados eletronicamente em um sistema de computador. Para que esses dados fiquem "organizados" e possam ser gerenciados você precisa ter um sistema gerenciador de banco de dados. Hoje temos vários desses sistemas, como Mysql, PostgressSQL... Cada um com suas particularidades.
Sql (Standard Query Language) é a linguagem que permite você fazer as consultas dos dados nos bancos de dados relacionais.
Bom, isso é apenas um resumo. Se quiser se aprofundar mais, seguem umas fontes: