Introdução ao MySQL Server
O que é o MySQL Server?
Existem muitos sistemas RDBMS disponíveis no mercado para gerenciamento de bancos de dados, sendo o mais popular o MySQL. O MySQL é um Sistema de Gerenciamento de Banco de Dados Relacional (RDBMS) de código aberto e é baseado na Linguagem de Consulta Estruturada (SQL - que é uma linguagem para gerenciar o Banco de Dados e executar operações CRUD, como criar, ler, atualizar e excluir). aqui discutimos o servidor MySQL.
MySQL, uma breve jornada:
- Foi criado e possuído por uma empresa sueca chamada MySQL AB com seu primeiro lançamento inicial no ano de 23 de maio de 1995.
- Em 2008, o MySQL AB foi adquirido pela Sun Microsystems em um acordo de 1 bilhão.
- Em 2010, a Sun Microsystems foi adquirida pela Oracle.
- A versão mais recente do servidor MySQL é 8.0, lançada em 19 de abril de 2018.
O MySQL pode rodar virtualmente em qualquer plataforma, como Linux, Solaris e Windows, e é o RDBMS mais popular e mais amplamente porque é um servidor de banco de dados de código aberto e freeware que oferece funcionalidades de banco de dados muito avançadas.
Poucos exemplos em que o MySQL Server é usado são:
- Google, Facebook, Yahoo e muitos outros gigantes da tecnologia empregaram o MySQL para aprimorar seus recursos de processamento de dados.
- O MySQL é um componente muito importante para o LAMP, que é uma plataforma de desenvolvimento web com Linux como sistema operacional, Apache como servidor web, MySQL como RDBMS e PHP como linguagem de programação. No entanto, o Python ou o Perl também podem ser usados, em vez do PHP, como a linguagem de programação ou script.
- Pode ser usado em qualquer lugar, onde os dados precisam ser armazenados de maneira relacional, ou seja, em formato de tabela. Toda tabela tem uma chave primária e as linhas podem se relacionar usando essa chave primária.
Vantagens do servidor MySQL:
-
Portátil -
Pode ser executado em um grande número de plataformas como UNIX, Solaris, Windows, OS / 2, etc.
-
Código aberto -
Mais importante, o MySQL é disponibilizado a todos como um software de código aberto e qualquer pessoa pode usá-lo gratuitamente, concordando com seus termos e condições.
-
Segurança -
Todas as bases de dados do MySQL são muito seguras e estão bloqueadas com senhas criptografadas usando algoritmos complexos e nunca é fácil violá-las.
-
Conectividade -
Há um bom número de mecanismos disponíveis para conexão com servidores MySQL, como TCP / IP, soquetes UNIX e pipes nomeados
-
Atualizações regulares e desenvolvimento contínuo
Sendo uma plataforma de código aberto, o MySQL possui uma enorme comunidade de desenvolvedores e eles lançam patches e atualizações para o MySQL regularmente.
Arquitetura do servidor MySQL:
A arquitetura do MySQL consiste principalmente nos seguintes componentes:
- Servidor MySQL
- Clientes MySQL
- Diretório de dados
- Mecanismo de armazenamento
O MySQL é baseado em um modelo cliente-servidor.
Fonte: http://actimem.com/wp-content/uploads/2015/09/mysql.png.webp?x78177
Servidor MySQL:
É uma instância do MySQL onde os dados reais estão sendo armazenados e processados. Este componente é responsável pelo processamento das consultas recebidas dos clientes MySQL e manipula as tabelas do banco de dados. Também é responsável por aceitar as conexões com o banco de dados provenientes dos MySQL Clients. Programas importantes do componente MySQL Server são:
-
MySQL:
É um programa daemon para servidor MySQL. Ele roda em segundo plano e gerencia solicitações de clientes MySQL.
-
mysqld_safe:
É um programa que reinicia o servidor sempre que ocorre um erro. Esse era um recurso de segurança desse programa; o outro é que ele mantém os logs das informações de tempo de execução em um log de erros.
-
mysql.server:
É um utilitário MySQL que foi fornecido para iniciar o script mysqld_safe.
-
mysqld_multi:
Este programa é usado para gerenciar muitos processos mysqld que escutam conexões em diferentes canais de conexão como TCP / IP, soquetes UNIX, etc.
Clientes MySQL:
Os clientes MySQL são basicamente os utilitários usados para se comunicar com o servidor MySQL. Em outras palavras, esses são os programas que se comunicam com o servidor MySQL. Exemplos de clientes MySQL são programas como Perl, PHP, Java, MySQL, mysqladmin e ferramentas como MySQL dump, mysqlcheck, myisamchk. Programas importantes sob clientes MySQL são:
- MySQL é um shell SQL onde se pode escrever e executar instruções SQL. Pode ser interativo ou não interativo. Quando usados interativamente, os resultados são retornados em um formato tabular, enquanto o uso não interativo retorna o resultado em um formato separado por tabulação.
- mysqladmin é um cliente para administrar o servidor MySQL. Pode ser usado para verificar arquivos de configurações, atualizá-los, verificar o status atual do servidor e também para criar e eliminar bancos de dados, etc.
- O mysqldump é um utilitário cliente e um programa de backup de banco de dados que executa backups lógicos.
- mysqlcheck e myisamchk são clientes usados para executar manutenção nas tabelas do banco de dados, como reparar, otimizar e analisar as tabelas.
Diretório de dados:
O Diretório de dados contém os dados reais que estão sendo armazenados como resultado de operações contínuas em qualquer aplicativo / software ou servidor. Inclui bancos de dados, tabelas, arquivos de log, procedimentos armazenados, etc.
- O local padrão para o datadir no Linux é: / var / lib / mysql
- O local padrão para o datadir no Windows é: C: \ ProgramData \ MySQL \ MySQL Server 5.8
- O nome do arquivo de configuração que contém o caminho para o datadir é mysqld.cnf
- o cnf pode ser encontrado em /etc/mysql/mysql.conf.d/mysqld.cnf
- Na verdade, é possível alterar o local de armazenamento do datadir, caso alguém fique sem espaço alocado. Consulte o artigo abaixo, que explica lindamente como isso pode ser alcançado:
https://www.digitalocean.com/community/tutorials/how-to-move-a-mysql-data-directory-to-a-new-location-on-ubuntu-16-04
Mecanismo de armazenamento:
Um mecanismo de armazenamento é um módulo de software que está sendo usado pelo RDBMS para executar operações CRUD (criar, ler, atualizar e excluir).
Os mecanismos de armazenamento são de dois tipos no MySQL:
- Transacional
- Não Transacional
A principal diferença entre o mecanismo de armazenamento Transacional e Não Transacional é que as tabelas transacionais registram todas as operações do banco de dados em um arquivo de log, portanto, mesmo se o MySQL travar, você ainda poderá recuperar seus dados, embora esse não seja o caso dos Mecanismos Não Transacionais. No entanto, para apontar, os mecanismos não transacionais são muito mais rápidos e também possuem requisitos de espaço em disco mais baixos. Abaixo estão alguns dos Mecanismos de Armazenamento que estão sendo usados pelo MySQL, o mais amplamente usado entre eles é o InnoDB.
Mecanismos de armazenamento suportados pelo MySQL:
- InnoDB
- MyISAM
- Memória
- CSV
- Mesclar
- Arquivo
- Federado
- Blackhole
- Exemplo
Artigos recomendados
Este foi um guia para o servidor MySQL. Aqui neste artigo, estudamos exemplos, vantagens e arquitetura do servidor MySQL. Você também pode consultar os seguintes artigos para saber mais -
- Folha de dicas MySQL
- O que é o Tableau Server?
- MySQL vs SQL Server