Você está na página 1de 17

RDBMS

MySQL

27 JULHO

UFCD 5105
Professor Tiago Teixeira
Paulo Barata
MySQL

Conteúdo
Breve história .............................................................................................................. 3
Requisitos mínimos ..................................................................................................... 3
Distribuições................................................................................................................ 4
Instalação .................................................................................................................... 5
Configuração ............................................................................................................. 14
Logs ........................................................................................................................... 14
Optimização .............................................................................................................. 15
Backups ..................................................................................................................... 15
Replicação ................................................................................................................. 16
Segurança e Criptografia ............................................................................................ 16
Comparação com Microsoft SQL Server ..................................................................... 16
Plataformas suportadas ......................................................................................... 16
Linguagens de programação suportadas ................................................................ 16
Formas de Armazenamento de Dados (Storage Engines)........................................ 16
Backups ................................................................................................................. 17
Edições .................................................................................................................. 17
Breve história
O MySQL é um software de RDBMS (Relational DataBase Management System ou seja
em português Sistema de Gestão de Bases de Dados Relacionais), que está disponível
tanto em versões gratuitas (Community Editions) como em pagas. O desenvolvimento
original foi feito por David Axmark e Michael Widenius em 1994, que juntamente com
Allan Larsson fundaram a empresa MySQL AB. Mais tarde em 2008 a MySQL é comprada
pela Sun Microsystems, que por sua vez em 2010 é comprada pela Oracle, passando
assim a MySQL a fazer parte do gigante das bases de dados empresariais.
Após a compra pela Oracle houve receios que o software deixasse de ser de código livre
o que levou o seu co-criador Michael Widenius a criar uma nova variante do DBMS
chamada MariaDB.
O MySQL é um DBMS muito popular sendo parte de várias distribuições criadas para
servidores WEB (LAMP e WAMP), aplicações WEB (Drupal, Joomla, Wordpress) e
websites (Facebook, Twitter, Youtube).

Requisitos mínimos
O MySql Server não têm, segundo a própria MySql, requisitos mínimos para a sua
instalação sendo estes apenas definidos pela complexidade das bases de dados nele
definidas e as suas dimensões. Partindo do pressuposto que se o equipamento consegue
correr o sistema operativo também consegue correr o MySql, podemos determinar quais
os requisitos necessários para a complexidade das bases de dados instaladas usando por
exemplo a ferramenta disponibilizada em http://www.mysqlcalculator.com/ que com a
qual e para as configurações por defeito do MySql indica que a memória necessária para
o seu funcionamento ronda os 600 MB. O MySql conforme as versões pode ser instalado
nas seguintes plataformas.

Sistema Operativo Arquitetura Versões

8.0 5.7 5.6

Oracle Linux / Red Hat / CentOS

Oracle Linux 8 / Red Hat Enterprise Linux 8 / CentOS 8 x86_64, ARM 64 •

Oracle Linux 7 / Red Hat Enterprise Linux 7 / CentOS 7 ARM 64 •

Oracle Linux 7 / Red Hat Enterprise Linux 7 / CentOS 7 x86_64 • • •

Oracle Linux 6 / Red Hat Enterprise Linux 6 / CentOS 6 x86_32, x86_64 • • •

Oracle Solaris

Solaris 11 (Update 4+) SPARC_64, x86_64 • • •

Solaris 10 (Update 11+) SPARC_64, x86_32, x86_64 •

Canonical

Ubuntu 20.04 LTS x86_64 •


Sistema Operativo Arquitetura Versões

Ubuntu 18.04 LTS x86_32, x86_64 • •

Ubuntu 16.04 LTS x86_32, x86_64 • •

SUSE

SUSE Enterprise Linux 15 / OpenSUSE 15 x86_64 •

SUSE Enterprise Linux 12 (12.4+) x86_64 • • •

Debian

Debian GNU/Linux 10 x86_64 • •

Debian GNU/Linux 9 x86_32, x86_64 • • •

Microsoft Windows Server

Microsoft Windows 2019 Server x86_64 •

Microsoft Windows 2016 Server x86_64 • • •

Microsoft Windows 2012 Server R2 x86_64 • • •

Microsoft Windows

Microsoft Windows 10 x86_64 • •

Apple

macOS 10.15 x86_64 •

macOS 10.14 x86_64 • •

FreeBSD

FreeBSD 12 x86_64 •

Distribuições
Pudemos dividir a forma como o MySql é distribuído em 2 braços principais: as versões
comerciais (suportadas pela Oracle) e as gratuitas (suportadas pela comunidade). As
versões comerciais são ainda divididas em 4 edições que apresentam um conjunto de
funcionalidades distintas conforme a seguinte tabela.

Funcionalidades Edições MySQL


Classic Standard Enterprise Cluster CGE
MySQL Database Server ✔ ✔ ✔ ✔
MySQL Connectors ✔ ✔ ✔ ✔
MySQL Replication ✔ ✔ ✔ ✔
MySQL Fabric ✔ ✔
MySQL Router ✔ ✔
MySQL Partitioning ✔ ✔
MySQL Utilities ✔ ✔
MySQL Workbench ✔ ✔ ✔ ✔
Storage Engine: MyISAM ✔ ✔ ✔
Storage Engine: InnoDB ✔ ✔ ✔
Storage Engine: NDB ✔
Oracle Enterprise Manager for MySQL ✔ ✔
MySQL Enterprise Monitor ✔ ✔
MySQL Enterprise Backup ✔ ✔
MySQL Enterprise Security ✔ ✔
MySQL Enterprise Scalability ✔ ✔
MySQL Enterprise High Availability ✔ ✔
MySQL Cluster Manager ✔
MySQL Cluster Geo-Replication ✔
Oracle Products Certification ✔ ✔ ✔
Instalação
O processo de instalação do MySql tem sido continuamente melhorado ao longo das
versões pelo que neste momento a instalação do software nos sistemas da família
Windows é extremamente simples. Para procedermos à instalação temos de primeiro
descarregar e instalar a aplicação Installer disponível no endereço
dev.mysql.com/downloads/Windows/installer/8.0.html

Após o arranque da aplicação de instalação devemos selecionar o tipo de instalação


pretendida
O sistema descarrega então eventuais librarias necessárias por exemplo .Net
Framework ou Visual C++ Redistributable requeridas pelo software.

E após a sua instalação as aplicações MySql


Após a descarga de todo o software necessário é feita a instalação do mesmo

Após a instalação, passamos à fase de configuração


Temos que escolher o tipo de servidor a instalar (se simples ou multiserver Cluster)

O tipo de utilização que vamos dar ao nosso servidor


Qual a porta que pretendemos usar para comunicar com o servidor

E a forma de autenticação
A password do utilizador Root (Administrador) e os utilizadores que pretendamos
adicionar

Neste caso vamos criar um utilizador com funções de administração para evitar usar o
Root prevenindo falhas de segurança
Definir se pretendemos que o servidor corra como um serviço do Windows

Após a criação da configuração inicial do servidor procedemos à sua aplicação


Após a aplicação da configuração inicial

Podemos concluir o processo ou iniciar a aplicação de monitorização/gestão do


servidor Workbench
A aplicação Workbench permite-nos configurar o servidor, as bases de dados, os
utilizadores, proceder a backups das bases de dados (parciais ou totalidade) e arranque
ou suspensão do seu funcionamento.

Ou monitorizar o desempenho do servidor (consumo de memória, ligações


concorrentes, trafego, etc)
Configuração
A configuração do servidor pode ser efetuada na aplicação Workbench (em Options
File) ou editando diretamente o ficheiro my.ini (em C:\ProgramData\MySQL\MySQL
Server 8.0)

Logs
Os ficheiros de log que estejam ativos na configuração podem ser facilmente
consultados na aplicação Workbench (em Server Logs) ou nas respetivas pastas
definidas na configuração.
Optimização
A optimização do servidor ou de determinada base de dados pode ser monitorizada e
ajustada na aplicação Workbench usando as opções para esse efeito.

Backups
É possível executar backups da totalidade das bases de dados até a apenas uma tabela
com a ferramenta mysqldump. Uma forma simples de automatizar o backup é
definindo o que queremos salvaguardar na aplicação Workbench, guardar o script
criado e posteriormente definir nas tarefas agendadas a chamada ao script nas datas e
horas pretendidas.
Replicação
O servidor MySql suporta várias formas de replicação (master/slave e multimaster) e
de topologias como por ex. Anel, Árvore, Estrela e Malha (nas versões Cluster e
Community)

Segurança e Criptografia
A segurança do servidor MySql é garantida através do controle dos utilizadores, suas
funções e permissões e da possibilidade de usar ligações encriptadas segundo os
protocolos TLS e x.509 o que previne a intercepção das comunicações entre a aplicação
cliente e o servidor.

Comparação com Microsoft SQL Server


Plataformas suportadas
Ambos os softwares permitem a utilização de servidores baseados em Windows, Linux,
MacOS.

Linguagens de programação suportadas


As principais linguagens de programação têm librarias que lhes permitem comunicar
com estes servidores nomeadamente Java, PHP, C++, Python, Ruby, VB.

Formas de Armazenamento de Dados (Storage Engines)


Ao contrário do MS SQL Server o MySql suporta diferentes tipos de armazenamento do
dados (InnoDB, MyIsam, entre outros) o que lhe dá alguma versatilidade ao permitir
escolher aquele que melhor se ajusta ao modelo de dados a guardar.
Backups
Ambos os sistemas possuem ferramentas que lhe permitem salvaguardar os dados, a
principal diferença é que enquanto o Sql Server durante o backup não impede o acesso
às bases de dados o MySql não permite a escrita de novos dados durante a execução
do backup. Mas o que alguns podem considerar uma desvantagem do MySql outros
consideram que é uma mais-valia em termos de garantia da fidelidade dos dados
salvaguardados.

Edições
Ambos os servidores possuem versões pagas e gratuitas mas ao contrário do Sql Server
em que a versão gratuita é uma versão limitada, a versão gratuita do MySql possui
todas as funcionalidades das versões pagas.

Você também pode gostar