Baixe Windows + WSL + Apache + PHP + NodeJS e outras Exercícios em PDF para Web Design e Desenvolvimento, somente na Docsity!
Aula 04_1 - Windows + WSL + Apache + PHP + NodeJS
Resumão ( TL;DR / Direto ao Ponto )
Aba o PowerShell ou Terminal como ADMINISTRADOR (Win + x)
Habilitar o recurso do WSL no Windows 10 e 11
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Habilitar a Plataforma de Máquina Virtual no Windows 10 e 11
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Definir a versão padrão do WSL como WSL 2
wsl --set-default-version 2
Baixar e instalar o Ubuntu
Isso pode ser feito também diretamente na loja da Microsoft
wsl --install -d Ubuntu
Para listar as Distros Instaladas
wsl -l -v
Para acessar uma Distro
wsl -d
wsl -d Ubuntu
Caso seja necessário REMOVER uma Distro (Apagar compleamente)
wsl --unregister <NOME_DA_DISTRO>
wsl --unregister Ubuntu
Atualizar pacotes do sistema no Ubuntu
sudo apt update && sudo apt upgrade -y
Instalar e iniciar o Apache
sudo apt install apache2 -y sudo systemctl start apache sudo systemctl enable apache
Instalar PHP e módulos necessários
sudo apt install php libapache2-mod-php php-pdo php-sqlite3 -y
Instalar o Composer
sudo apt install curl -y curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer
Instalar Node.js e npm
sudo apt install -y nodejs sudo apt install -y npm
Instalar o MariaDB
sudo apt install mariadb-server
Executando o script de configuração e segurança do MariaDB
1 2 3 4 5 6 7 8 9
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
Instalação do WSL no Windows 10 e 11 (Passo a Passo e com calma)
sudo mysql_secure_installation
siga as seguintes opções
Switch to unix_socket authentication [Y/n] Y Change the root password? [Y/n] Y Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] N Remove test database and access to it? [Y/n] N Reload privilege tables now? [Y/n] Y Thanks for using MariaDB!
configuração do MariaDB
sudo mariadb
use os seguintes comando SQL dentro do MariaDB (no terminal mesmo)
GRANT ALL ON . TO 'aluno'@'localhost' IDENTIFIED BY 'aluno' WITH GRANT OPTION; FLUSH PRIVILEGES; exit
testanto o bando de dados
sudo systemctl status mariadb
Instalando o phpMyAdmin - Observe o uso da senha criada no passo anterior
sudo apt install phpmyadmin php-mbstring php-zip php-gd php-json php-curl -y
Verificar a instalação do Apache
apache2 -v
Verificar a instalação do PHP
php -v
Verificar a instalação do Composer
composer -v
Verificar a instalação do Node.js e npm
node -v npm -v
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
1. Habilitar o recurso do WSL no Windows 10 e 11:
Abra o PowerShell como administrador ( Win + X ) e execute:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
1
2 3
1. Instalar o WSL 2:
Ainda no PowerShell como administrador, execute:
(^1) wsl --set-default-version 2
1. Instalar a distribuição Ubuntu:
(^1) # Baixar e instalar o Ubuntu
(^2) sudo apt install -y npm
1. Instalação do MariaDB Server (Banco de Dados)
sudo apt install mariadb-server
Executando o script de configuração e segurança do MariaDB
sudo mysql_secure_installation
Entendendo a autenticação unix_socket:
=================================
Em sistemas Unix/Linux, os processos podem se comunicar usando "sockets".
A autenticação "unix_socket" permite que o usuário root do MariaDB seja
autenticado usando as credenciais do usuário do sistema operacional.
Isso significa que, se você estiver logado no sistema operacional como um usuário
com privilégios de root, você também poderá acessar o MariaDB como o usuário root,
sem precisar de uma senha separada.
Switch to unix_socket authentication [Y/n] Y
... Troque a senha do usuário root do Banco de Dados
Change the root password? [Y/n] Y
... crie agora uma senha para o usuário root, em ambiente de desenvolvimento
geralmente criamos a senha padrão, que é 'root', mas tome cuidado com isso.
Removendo usuário anônimo
=================================
Por padrão, uma instalação do MariaDB tem um usuário anônimo, permitindo que
qualquer um faça login no MariaDB sem precisar ter uma conta de usuário criada
para eles. Isso é destinado apenas para teste e para tornar a instalação
um pouco mais suave. Você deve removê-los antes de mover para um ambiente de
produção. Remove anonymous users? [Y/n] Y
Permira, ou não, que o usuário root acesse o banco de dados remotamente,
a partir de outro computador. Avalie essa opção no seu caso.
Em ambiente de produção isso deve ser bloqueado por padrão
Disallow root login remotely? [Y/n] N
Por padrão, o MariaDB vem com um banco de dados chamado 'test' que
qualquer um pode acessar. Ele também é destinado apenas para testes e
deve ser removido antes de mover para um ambiente de produção.
Remove test database and access to it? [Y/n] N
Reload privilege tables now? [Y/n] Y
Thanks for using MariaDB!
1 2 3 4 5 6 7 8 9
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
1. Criação de um usuário administrativo que emprega autenticação de senha
Em sistemas Ubuntu executando MariaDB 10.5, o usuário root MariaDB é definido para autenticar
usando o unix_socket_plugin por padrão em vez de uma senha. Isso permite maior segurança e
usabilidade em muitos casos, mas também pode complicar as coisas quando você precisa permitir
direitos administrativos a um programa externo (por exemplo, phpMyAdmin ).
Embora muitos usuários precisem da funcionalidade de um sistema de gerenciamento de banco de
dados como o MySQL ou MariaDB, eles podem não se sentir confortáveis interagindo com o sistema
apenas do prompt do MySQL/MariaDB.
O PHPMyadmin foi criado para que os usuários possam interagir com o MySQL/MariaDB através de
uma interface da Web.
Acesse o banco de dados como super usuário ´sudo´
sudo mariadb
Agora você está DENTRO do terminal do bando de dados, por isso
esses comandos são em SQL.. criamos o usuário "aluno", garantindo acesso total
a definimos a senha dele como "aluno"
GRANT ALL ON . TO 'aluno'@'localhost' IDENTIFIED BY 'aluno' WITH GRANT OPTION;
recarregue a tabela de privilégio
FLUSH PRIVILEGES;
sair do terminal do MariaDB e volta automaticamente para o terminal do Ubuntu
exit
1 2 3 4 5 6 7 8 9
10 11 12 13 14
testando o MariaDB
sudo systemctl status mariadb
você terá uma resposta mais ou menos assim...
=============================
● mariadb.service - MariaDB 10.11.8 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; preset:
enabled)
Active: active (running) since Sat 2025-03-22 20:38:03 -03; 41min ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 16373 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 10 (limit: 76138)
Memory: 168.5M ()
CGroup: /system.slice/mariadb.service
└─16373 /usr/sbin/mariadbd
=============================
Observe a linha para identificar se o bando está executando (running) \m/
-- Active: active (running)
usar as teclas CTRL+C para parar o monitoramento do status do banco
1 2 3 4 5 6 7 8 9
10 11 12 13 14 15 16 17 18 19 20 21 22
1. Instalando o PHPMyAdmin para Gerenciar o MariaDB
E pronto! Agora você tem um ambiente completo de desenvolvimento no Ubuntu dentro do WSL no
Windows 10 ou 11.
(^1) composer --version
Verificar a instalação do Node.js e npm:
node -v npm -v
1 2
Verificar a instalação do MariaDB:
(^1) mariadb --version
Verificar a instalação do Git:
(^1) git --version