Instalando e configurando mysql em banco de dados dedicado
Índice |
Introdução
Neste tutorial a seguir, iremos mostrar a instalação e configuração de uma maquina de banco de dados dedicado para uso do MYSQL.
O que sera instalado:
- MYSQL
- PHP
- NGINX
- PHPMYADMIN
Antes de começar
Algumas maquinas centOS podem não conter todos os comandos utilizados no tutorial. Instale alguns necessários assim:
yum install wget yum install unzip
Instalando o Mysql
1. No endereço abaixo, vamos escolher a versão do mysql desejada. Neste tutorial seguiremos o padrão da versão 5.6.
Versões - http://dev.mysql.com
1.1. Baixando e instalando o repositorio oficial do mysql 5.6:
wget http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm rpm -Uvh mysql-community-release-el6-5.noarch.rpm
1.2. Instalando os pacotes mysql, mysql-community-client, mysql-community-libs e mysql-community-server
yum install mysql mysql-server

2.2. Iniciando o Mysql:
service mysqld start
2.1. Confirme se o mysql foi iniciado:
service mysqld status

Configurando o Mysql
Definindo uma senha para o mysql
1. Entre no mysql:
mysql -u root
2. Use o comando abaixo para definir sua senha:
UPDATE mysql.user SET Password=PASSWORD('SUA_SENHA_AQUI') WHERE User='root';
2.1. Salve a senha:
FLUSH PRIVILEGES;
IMPORTANTE: Saiba que o método de senha pode haver mudanças em versões mais atuais.
Instalando e configurando o PHP
1. Adicione os repositorios REMI e EPEL:
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm sudo yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
2. Instale o pacote yum-utils e ative o php na versão desejada. Neste tutorial usaremos a versão 7.4:
sudo yum -y install yum-utils sudo yum-config-manager --enable remi-php74
3. Atualize o sistema e instale o PHP 7.4 ( este processo pode demorar um pouco ):
sudo yum update sudo yum install php php-cli
4. Confirme a versão instalada:
php -v
5. Por fim, instale alguns dos pacotes PHP necessários:
yum install --skip-broken php-curl php-idn php-pear php-imagick php-mcrypt php-memcache php-mbstring php-ming php-ps php-pspell php-recode php-snmp php-sqlite php-tidy php-xmlrpc php-xsl mcrypt nano php-pgsql php-fpm proftpd
Instalando e configurando NGINX
1. Habilite o repositorio oficial do NGINX
echo '[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=0 enabled=1' >> /etc/yum.repos.d/nginx.repo
2. Instale o nginx:
yum install nginx
2.1 Inicie o nginx:
service nginx start
3. Inicialmente, precisamos adicionar um usuario no sistema no qual servirá de configuração do nginx e FTP:
3.1 Adicionando usuário:
adduser USUARIO
3.2 Configurando uma senha ( após o comando abaixo, sera solicitado uma senha para o usuario):
passwd USUARIO
Configurando o PHP-FPM para trabalhar com nginx
1. Faça o backup do arquivo padrão:
mv /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf.bk
1.1 Crie um novo arquivo limpo:
vi /etc/php-fpm.d/www.conf
1.2. Adicione o conteudo abaixo no arquivo, lembrando que deve alterar o campo USUARIO para o usuario que criou anteriormente:
; Start a new pool named 'www'. [www] listen = /var/run/php5-fpm.sock listen.allowed_clients = 127.0.0.1 listen.owner = nginx listen.group = nginx listen.mode = 0660 user = USUARIO group = USUARIO pm = dynamic pm.max_children = 30 pm.start_servers = 2 pm.min_spare_servers = 2 pm.max_spare_servers = 20 ;pm.max_requests = 500 slowlog = /var/log/php-fpm/www-slow.log php_admin_value[error_log] = /var/log/php-fpm/www-error.log php_admin_flag[log_errors] = on php_value[session.save_handler] = files php_value[session.save_path] = /tmp php_value[soap.wsdl_cache_dir] = /var/lib/php/wsdlcache
Configurando nginx
1. Faça backup do arquivo padrão:
mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bk
1.1 Crie um novo arquivo limpo:
vi /etc/nginx/conf.d/default.conf
1.2 Adicione o conteudo abaixo no arquivo, lembrando que deve alterar o campo USUARIO para o usuario que criou anteriormente:
server { listen 80 default_server; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { client_max_body_size 25M; root /home/USUARIO/public_html; index index.php index.html index.htm; try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { root /home/USUARIO/public_html; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } error_page 404 /404.html; location = /404.html { root /usr/share/nginx/html; } # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ /\.ht { deny all; } }
Criando diretorio public_html para servir o nginx
1. Inicialemnte, vamos remover da maquina serviços que não serão utilizados, padrão do centOS:
chkconfig httpd off yum remove httpd -y
chkconfig sendmail off yum remove sendmail -y
2. Em seguida, vamos criar as session para o PHP e dar as permissões corretas:
mkdir -p /var/lib/php/session chown root.nginx /var/lib/php/session chmod 777 /var/lib/php/session ls -la /var/lib/php/session
3. Criando diretorio public_html para servir NGINX e serviços na web ( Lembrando que USUARIO é sempre o usuario que criamos para o sistema):
mkdir /home/USUARIO/public_html chmod 755 /home/USUARIO
4. Por fim, vamos iniciar o PHP-FPM, NGINX e PROFTPD:
service php-fpm start service nginx start service proftpd start
Instalando phpMyAdmin para trabalhar com Mysql
1. Inicialmente, vamos entrar no diretorio public_html criado para servir o phpMyAdmin na web:
Lembre-se de substituir sempre o USUARIO pelo seu criado anteriormente.
cd /home/USUARIO/public_html/
2. Baixando phpMyAdmin:
wget https://files.phpmyadmin.net/phpMyAdmin/4.9.7/phpMyAdmin-4.9.7-all-languages.zip
3. Descompacte o zip baixado:
unzip phpMyAdmin-4.9.7-all-languages.zip
4. Vamos renomear o diretorio para php-my-admin:
mv phpMyAdmin-4.9.7-all-languages php-my-admin
5. Por fim, faremos uma cópia do arquivo de configuração do phpMyAdmin:
COPIANDO:
cp -p /home/USUARIO/public_html/php-my-admin/config.sample.inc.php /home/USUARIO/public_html/php-my-admin/config.inc.php
Removendo segurança de login padrão do phpMyAdmin:
sed "s/\$cfg['blowfish_secret']/#\$cfg['blowfish_secret']/" /home/USUARIO/public_html/php-my-admin/config.inc.php -i echo "\$cfg['blowfish_secret'] = 'SUA_SENHA_MYSQL_AQUI';" >> /home/USUARIO/public_html/php-my-admin/config.inc.php
6. Pronto, seu servidor esta configurado. O phpMyAdmin poderá ser acessivel com seu IP da maquina VPS, desta forma de exemplo:
http://SEU-IP-AQUI/php-my-admin
Extras
1. O firewall pode barrar o acesso ao phpMyAdmin. Se ocorrer, basta limpa-lo com os comandos abaixo:
iptables --flush iptables-save setenforce permissive