?>
1-mysql Básico
Exercícios
?>

Introdução a Banco de Dados

Com sql/mysql/php

Uma Abordagem Prática

Márcio Fantini
fantini@coltec.ufmg.br
2026


Apresentação do Curso

  • Essas notas de aula apresentam conceitos básicos e intermediários sobre banco de dados e sistemas de gerenciamento de banco de dados.

  • As notas aqui apresentadas foram baseadas (tradução, adaptação e acréscimo de exemplos/exercícios) principalmente nas seguintes referências

  • Ferramentas e Ambientes do Curso

    O curso está preparado para usarmos o mysql (servidor e cliente) no Ubuntu. Usaremos também o MysqlWorkBench. E como ferramentas para acesso ao banco via web, veremos o PHP e a ferramenta phpmyadmin. Para termos o PHP rodando usamos o servidor web Apache.

    SQL e Mysql

    Por ser essencialmente prático, o curso aborda a linguagem SQL juntamente com o "ambiente" Mysql. Ou seja, não estudaremos a SQL de forma abstrada, mas ao contrário, veremos a linguagem de forma prática, trabalhando com exemplos reais dentro do mysql.


    Introdução ao Banco de Dados

    O que é um banco de dados?

    Banco de dados é uma coleção de dados que estão relacionados entre si de alguma maneira.

    O que é um Sistema de Gerenciamento de Banco de Dados (SGBD)?

    É um conjunto de programas que pode ser usado para gerenciar um banco de dados.

    Modelos de SGBD

    Os SGBDs podem ser de diferentes tipos:

    SGBD Hierárquico

    Nesse modelo os dados são organizados e classificados segundo uma hierárquia descendente (vide figura abaixo). O sistema faz uso de apontadores entre os diversos dados para identificá-los e ordená-los.

    fig1

    SGBD de Rede

    Nesse modelo os dados são organizados numa hierárquia não necessariamente numa forma descendente (vide figura). Assim como no modelo anterior, o modelo em rede é criado a partir de apontadores entre as entidades.

    fig2

    SGBD Relacional

    É o mais usado, mesmo hoje em dia, com o crescimento dos modelos não relacionais. O modelo relacional define uma organização baseada em tabelas que se relacionam.

    fig3

    SGBD Orientado a Objetos

    É um modelo que faz uso do paradigma da POO. Os dados são organizados em objetos e as relações definidas a partir de métodos e propriedades.

    fig4

    Existem no mercado dezenas de SGBDs. A maioria é do tipo relacional.

    SGBD Relacional

    Exemplos de SGBD relacionais

    Existem no mercado vários sistemas de gerenciamento de banco de dados relacionais, alguns pagos outros gratuito. Veja alguns deles na lista a seguir.

    1. MySQL;

    2. MariaDB

    3. Oracle;

    4. Microsoft SQL-Server

    5. IBM Db2

    6. PostgreSQL

    7. mSQL;


    Outra opção de Ferramenta

    Além dos sistemas de gerenciamentos (como os listados acima), existe a opção de se trabalhar com banco de dados a partir de bibliotecas específicas de acesso a arquivos.

    É o caso do SQLite.

    SQLite é uma biblioteca em linguagem C e é um dos bancos de dados relacionais mais conhecidos do mundo

    Funciona basicamente como um servidor próprio e independente pois a biblioteca SQLite é gerada e armazenada diretamente no arquivo do banco de dados.

    Veja mais em:


    Mysql

    No nosso curso veremos o modelo relacional. Mais especificamente veremos O SGBD relacional denominado Mysql.

    Arquitetura cliente-servidor

    Para trabalhar com o Mysql precisamos do servidor (Mysql-Server) e do cliente.

    Mysql opera em um ambiente de rede usando uma arquitetura cliente / servidor. Um programa central atua como um servidor e vários programas clientes se conectam ao servidor para a busca/manipulação dos dados.

    Mysql Server ou mysqld é o programa servidor de banco de dados. Ele gerencia o acesso aos bancos de dados reais no disco ou na memória.

    Os clientes Mysql são programas de comunicação com o servidor para manipular as informações dos bancos de dados que o servidor gerencia.

    Por exemplo, mysql é o programa de linha de comando que atua como uma interface baseada em texto para o servidor.

    Podemos usar também o phpMyAdmin para acessarmos o servidor.


    Veja o site oficial do Mysql programa clicando aqui

    Uma forma para aprender sobre o Mysql é via seu site oficial, ou mais especificamente, estudando seu manual de referência.

    Veja o manual de referência clicando aqui

    Versões Mysql

    Repare que o Mysql mais novo (até a data de hoje, Novembro de 2020) está na versão 8.0.

    Nesse curso estamos usando a versão 8.0.22 do mysql-server.

    mf@dell:~$ mysql -V
    mysql Ver 8.0.26-0ubuntu0.20.04.2 for Linux on x86_64 ((Ubuntu))

    Instalação

    Como dito anteriormente, uma forma de se instalar o Mysql é a partir do XAMPP. Caso deseje instalá-lo separadamente, pode-se obter o pacote no site oficial, ou no caso do Ubuntu, via apt-get.


    Nas próximas seções veremos o Mysql mais detalhadamente. Nas próximas Unidades, voltaremos com conceitos teóricos sobre banco de dados.

    É importante lembrar que toda a documentação necessária para trabalhar com Mysql está no site oficial do programa.