Instale MariaDB 11.0 com phpMyAdmin no Rocky/AmaLinux
- AlmaLinux
- Bancos de dados
- Como
- mariadb
- Linux rochoso
MariaDB é um dos populares sistemas de gerenciamento de banco de dados relacional (RDBMS). Ele foi criado como um fork do MySQL depois que seus proprietários queriam torná-lo um software pago. Ao longo dos anos com desenvolvimento contínuo, os usuários do MariaDB têm a flexibilidade de selecionar a versão que melhor atende às suas necessidades e está alinhada com suas aplicações de negócios. Existem vários outros motivos pelos quais o MariaDB é preferido, alguns dos quais incluem:
- Código Aberto: Isso significa que está disponível gratuitamente para uso, modificação e distribuição. A sua natureza de código aberto incentiva o envolvimento da comunidade, promove a inovação e permite ciclos rápidos de desenvolvimento. Ele também oferece maior transparência, segurança e flexibilidade em comparação com sistemas de banco de dados proprietários.
- Alta disponibilidade e replicação: também inclui recursos robustos para garantir alta disponibilidade e redundância de dados. Ele oferece suporte a vários métodos de replicação, incluindo replicação mestre-escravo e replicação multifonte, permitindo a criação de clusters de bancos de dados confiáveis e tolerantes a falhas. Isso garante a disponibilidade contínua de dados críticos e minimiza o risco de perda de dados.
- Comunidade Ativa e Suporte: Possui uma grande comunidade de usuários, desenvolvedores e colaboradores. Esta comunidade fornece suporte valioso, atualizações regulares, correções de bugs e melhorias de recursos. Os usuários podem acessar extensa documentação, fóruns e recursos, facilitando a resolução de problemas e mantendo-se atualizados com os desenvolvimentos mais recentes.
- Desempenho e escalabilidade: Possui diversas melhorias e otimizações de desempenho em relação aos seus antecessores. Ele fornece otimização aprimorada de consultas, processamento de dados mais rápido e uso eficiente dos recursos do sistema. Além disso, o MariaDB oferece recursos de escalabilidade, como processamento paralelo, multithreading e suporte para computação distribuída, permitindo lidar com grandes conjuntos de dados e altas cargas de trabalho.
- Compatibilidade: Foi projetado para ser altamente compatível com MySQL. Isso quer dizer que aplicativos e sistemas desenvolvidos para MySQL podem fazer uma transição perfeita para MariaDB. Essa compatibilidade garante um caminho de migração tranquilo para empresas que usam MySQL e permite que aproveitem os benefícios do MariaDB sem grandes modificações.
Atualmente, a versão mais recente é o MariaDB 11.0. Porém, esta versão ainda é RC e não recomendada para ambientes de Produção.
Esta atualização mais recente traz melhorias significativas ao Optimizer no MariaDB. Uma mudança notável é a remoção do InnoDB Change Buffer, que teve um impacto significativo no desempenho. Além disso, diversas variáveis foram descontinuadas, indicando que seu uso não é mais recomendado. Essas variáveis obsoletas incluem innodb_defragment, innodb_defragment_n_pages, innodb_defragment_stats_accuracy, innodb_defragment_fill_factor_n_recs, innodb_defragment_fill_factor, innodb_defragment_frequency, innodb_file_per_table e innodb_flush_method.
Além disso, a atualização também remove as seguintes variáveis obsoletas: innodb_change_buffer_max_size e innodb_change_buffering. Essas variáveis foram eliminadas porque não são mais consideradas necessárias ou benéficas para operações ideais de banco de dados.
Estas alterações refletem o esforço contínuo para melhorar o desempenho e a estabilidade do MariaDB, garantindo que os utilizadores tenham acesso a um sistema de base de dados ágil e eficiente. Ao descontinuar e remover recursos e variáveis desatualizados, o MariaDB permanece focado em fornecer uma solução otimizada e preparada para o futuro para o gerenciamento de bancos de dados relacionais.
PhpMyAdmin é um aplicativo baseado na web desenvolvido em PHP. Esta ferramenta permite aos usuários gerenciar bancos de dados, especificamente MariaDB e MySQL, usando uma interface intuitiva. Esta ferramenta gratuita e de código aberto permite aos usuários realizar várias outras tarefas de gerenciamento de banco de dados que incluem execução de consultas, criação e modificação de tabelas, importação e exportação de dados, gerenciamento de permissões de usuário e muito mais, tudo por meio de uma interface web amigável.
Hoje aprenderemos como instalar o MariaDB 11.0 com phpMyAdmin no Rocky/AmaLinux.
Passo 1: Instale o MariaDB 11.0 no Rocky/AmaLinux
Para poder instalar o MariaDB 11.0 no Rocky/AmaLinux, você precisa adicionar os repositórios ao sistema.
curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=11.1
Depois de adicionado, redefina o repositório AppStream MariaDB com os comandos:
sudo dnf -qy module disable mariadb
sudo dnf module reset mariadb -y
Agora instale o MariaDB 11 e as dependências necessárias:
sudo dnf install MariaDB-server MariaDB-client MariaDB-backup vim
Árvore de dependência:
.....
Transaction Summary
==============================================================================================
Install 9 Packages
Total download size: 65 M
Installed size: 321 M
Is this ok [y/N]: y
Depois de concluído, verifique com o comando:
$ mariadb -V
mariadb from 11.0.1-MariaDB, client 15.2 for Linux (x86_64) using readline 5.1
Inicie e ative o serviço:
sudo systemctl enable --now mariadb
Verifique se o serviço está em execução:
$ systemctl status mariadb
● mariadb.service - MariaDB 11.0.1 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mariadb.service.d
└─migrated-from-my.cnf-settings.conf
Active: active (running) since Sun 2023-05-21 05:14:12 EDT; 4s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 9808 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 9787 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ] && systemctl set-environment _WSREP_STA>
Process: 9785 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Main PID: 9797 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 11 (limit: 23505)
Memory: 197.5M
CGroup: /system.slice/mariadb.service
└─9797 /usr/sbin/mariadbd
...
Endurecer MariaDB 11.0
Após a instalação, você precisa proteger a instância.
sudo mariadb-secure-installation
Proceda conforme mostrado:
Enter current password for root (enter for none): Press Enter
OK, successfully used password, moving on...
.....
Switch to unix_socket authentication [Y/n] y
...
Change the root password? [Y/n] y
New password: Set root password
Re-enter new password: Re-enter the password
Password updated successfully!
....
Remove anonymous users? [Y/n] y
....
Disallow root login remotely? [Y/n] y
....
Remove test database and access to it? [Y/n] y
...
Reload privilege tables now? [Y/n] y
... Success!
...
Thanks for using MariaDB!
Crie um banco de dados para PhpMyAdmin
Precisamos criar um banco de dados para ser utilizado pelo PhpMyAdmin. Primeiro, acesse o shell usando a senha root criada:
mysql -u root -p
Agora crie o banco de dados, usuário e senha com o comando:
CREATE DATABASE phpmyadmin CHARACTER SET utf8 COLLATE utf8_unicode_ci;
CREATE USER 'phpmyadmin'@'%' IDENTIFIED BY 'Passw0rd';
GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'%';
FLUSH PRIVILEGES;
exit
Etapa 2: instale o PHP e as extensões necessárias
PhpMyAdmin requer PHP e vários outros módulos para funcionar. O PHP pode ser instalado no Rocky Linux/AmaLinux usando qualquer um dos guias abaixo:
- Como instalar PHP no Rocky Linux 8/AlmaLinux 8
Você também pode instalar a versão padrão disponível e as dependências necessárias com o comando:
sudo dnf -y install php php-{cli,common,fpm,curl,gd,mbstring,process,snmp,xml,zip,memcached,mysqlnd,json,mbstring,pdo,pdo-dblib,xml}
Verifique a instalação:
$ php --version
PHP 8.2.6 (cli) (built: May 9 2023 06:25:31) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.2.6, Copyright (c) Zend Technologies
with Zend OPcache v8.2.6, Copyright (c), by Zend Technologies
Configure seu fuso horário:
$ sudo vim /etc/php.ini
date.timezone = Africa/Nairobi
Você também precisa editar o PHP-FPM conforme mostrado:
sudo vim /etc/php-fpm.d/www.conf
Faça as alterações abaixo:
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
;listen = 127.0.0.1:9000
listen = /run/php-fpm/www.sock
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
Agora inicie e habilite o PHP-FPM:
sudo systemctl enable php-fpm
sudo systemctl restart php-fpm
Instale o Nginx:
sudo dnf install nginx -y
Você também precisa iniciar e ativar o NGINX
sudo systemctl start nginx
sudo systemctl enable nginx
Etapa 3: Instale o PhpMyAdmin no Rocky/AmaLinux
PhpMyAdmin não existe no Rocky/AmaLinux padrão. Para verificar isso, emita o comando abaixo:
$ dnf whatprovides phpmyadmin
Error: No Matches found
Agora, para instalar e usar o PhpMyAdmin, baixe a versão mais recente na página de downloads do phpMyAdmin. Você pode obter a versão mais recente do Wget:
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
Crie um diretório para PhpMyAdmin
sudo mkdir /usr/share/nginx/phpmyadmin
Extraia o arquivo para o diretório:
sudo tar xzf phpMyAdmin-latest-all-languages.tar.gz -C /usr/share/nginx/phpmyadmin --strip-components=1
Crie uma configuração de exemplo:
sudo cp /usr/share/nginx/phpmyadmin/config{.sample,}.inc.php
Crie um segredo, você pode usar o segredo do Blowfish online e adicionar o segredo ao arquivo:
sudo vim /usr/share/nginx/phpmyadmin/config.inc.php
Faça a alteração abaixo:
$cfg['blowfish_secret'] = 'k[a9LgO=Yo:n1ayWfi:UcR=sDx;vceBl';
Defina as permissões necessárias para o arquivo:
sudo chown -R nginx:nginx /var/lib/php/session/
sudo chown -R nginx:nginx /usr/share/nginx/phpmyadmin
Configure os contextos SELinux necessários:
sudo yum -y install policycoreutils-python-utils
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/usr/share/nginx/phpmyadmin(/.*)?"
sudo restorecon -Rv /usr/share/nginx/phpmyadmin
Etapa 4: configurar o servidor Nginx para phpMyAdmin
Para poder acessar o phpMyAdmin, precisamos criar um arquivo virtualhost conforme mostrado:
sudo vim /etc/nginx/conf.d/phpmyadmin.conf
No arquivo adicione as linhas abaixo:
server {
listen 80;
server_name phpmyadmin.computingforgeeks.com;
root /usr/share/nginx/phpmyadmin;
access_log /var/log/nginx/phpmyadmin_access.log;
error_log /var/log/nginx/phpmyadmin_error.log;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_intercept_errors on;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/run/php-fpm/www.sock;
}
}
Verifique a sintaxe da configuração:
$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Reinicie o Nginx:
sudo systemctl restart nginx
Permita o serviço através do firewall:
sudo firewall-cmd --zone public --add-service http
sudo firewall-cmd --permanent --zone public --add-service http
sudo firewall-cmd --reload
Etapa 5: acesse e use o phpMyAdmin
Agora você pode acessar o phpMyAdmin através do navegador usando a URL http://domain_name
Faça login usando o usuário e senha criados ou o usuário root para privilégios de administrador no MariaDB anteriormente. Uma vez autenticado, você verá isto:
Agora você pode usar o phpMyAdmin para gerenciar o MariaDB 11.0. Primeiro, crie um banco de dados de teste.
Você pode então criar tabelas nele:
Livros recomendados sobre MySQL/MariaDB:
- Melhores livros para aprender bancos de dados MySQL/MariaDB
Veredito
Esse é o fim deste guia sobre como instalar o MariaDB 11.0 com phpMyAdmin no Rocky/AmaLinux. phpMyAdmin fornece uma maneira fácil de gerenciar o servidor MariaDB. Aqui você não precisa memorizar os comandos SQL necessários para administração do banco de dados. Espero que isso tenha sido significativo.
- Como instalar o PHPMyAdmin no Kali Linux
- Como instalar o MariaDB 11.0 no Ubuntu
- Instale Apache, MariaDB, PHP (LAMP) no Rocky Linux 9