Introducción
PhpMyAdmin es una aplicación web que le permite utilizar MySQL a través del navegador.
Si su intención es instalar phpMyAdmin en un servidor Ubuntu 18.04 de forma remota, siga leyendo; de lo contrario, si desea instalar phpMyAdmin en su computadora local, omita el primer párrafo "Conectando al servidor" y lea el siguiente.
Conexión al servidor
Para acceder al servidor, necesita conocer la dirección IP. También necesitará su nombre de usuario y contraseña para la autenticación. Para conectarse al servidor como root, escriba el siguiente comando:
ssh root@IP_DEL_SERVER
A continuación, deberá ingresar la contraseña del usuario root.
Si no está utilizando el usuario root, puede iniciar sesión con otro nombre de usuario utilizando el mismo comando, luego cambie root a su nombre de usuario:
ssh VOSTRO_UTENTE@IP_DEL_SERVER
Luego se le pedirá que ingrese su contraseña de usuario.
El puerto estándar para conectarse a través de ssh es 22, si su servidor usa un puerto diferente, deberá especificarlo usando el parámetro -p, luego escriba el siguiente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Ahora está conectado a su servidor, está listo para iniciar la instalación de phpMyAdmin.
Prerrequisitos
- Instalación de Apache en Ubuntu 18.04 o Nginx en Ubuntu 18.04.
- Instalación de MySQL: cómo instalar MySQL en Ubuntu 18.04 LTS.
Instalar PhpMyAdmin
Para instalar phpMyAdmin, dé estos simples comandos de terminal:
sudo apt update
sudo apt install phpmyadmin php-mbstring php-gettext
ATENCIÓN Durante la instalación, aparecerá una pantalla que le preguntará si está utilizando Apache2 o Lighttpd. Apache2 aparecerá seleccionado porque está iluminado, pero no lo está. Presione la barra espaciadora para seleccionarlo, de lo contrario la instalación no generará los enlaces necesarios con Apache.
Después de seleccionar Apache2, se le pedirá que use dbconfig-common, seleccione YES.
Ingrese su contraseña de administrador de la base de datos.
Elija y confirme la contraseña de phpMyAdmin.
Habilite la extensión mbstring:
sudo phpenmod mbstring
Reinicie Apache2:
sudo service apache2 restart
Si está utilizando Nginx en su lugar, deberá crear manualmente un enlace simbólico, entre Nginx y PhpMyAdmin, como este:
sudo ln -s /usr/share/phpmyadmin//var/www/html/
Ahora es posible iniciar sesión en phpmyadmin con el usuario phpmyadmin y la contraseña establecida durante la fase de instalación.
PhpMyAdmin por defecto no podrá usar credenciales de root en su lugar.
Puede encontrar los siguientes errores:
#1698 - Access denied for user 'root'@'localhost'
mysqli_real_connect(): (HY000/1698): Access denied for user 'root'@'localhost'
La solución más simple (y segura) es crear un nuevo usuario y otorgar los privilegios requeridos.
Cambiar el método de autenticación
A partir de la versión 5.7 de MySQL, el usuario root de MySQL está configurado para autenticarse a través del complemento auth_socket de forma predeterminada en lugar de una contraseña.
Para usar una contraseña para conectarse a MySQL como usuario root, debe cambiar el método de autenticación, de auth_socket a mysql_native_password.
Como aún no se ha establecido una contraseña, puede conectarse al servidor MySQL simplemente usando el comando mysql o sudo mysql si ha iniciado sesión como usuario normal. A continuación, deberá usar el comando mysql -u root -p como root, de lo contrario sudo mysql -u root -p como usuario normal.
Entonces, si ha iniciado sesión como root, escriba en la terminal:
mysql
De lo contrario, si ha iniciado sesión como un usuario normal con privilegios de sudo:
sudo mysql
Para verificar el método de autenticación asociado con las cuentas mysql:
SELECT user,authentication_string,plugin,host FROM mysql.user;
Debería recibir un mensaje similar a este:
+------------------+-------------------------------------------+-----------------------+-----------+
| user | authentication_string | plugin | host |
+------------------+-------------------------------------------+-----------------------+-----------+
| root | | auth_socket | localhost |
| mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *5852386AB32C5DAD5DDA4F5FED911A70DA342656 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)
Como puede ver, el método de autenticación auth_socket está configurado por defecto para el usuario root.
Para utilizar la autenticación de contraseña para la cuenta raíz, realice los siguientes cambios:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'TUA_PASSWORD';
Atención:Your password does not satisfy the current policy requirements.
este tutorial
Actualizar las tablas:
FLUSH PRIVILEGES;
Ahora puede verificar el nuevo método de autenticación asociado con el usuario raíz:
SELECT user,authentication_string,plugin,host FROM mysql.user;
Debería recibir un mensaje similar a este:
+------------------+-------------------------------------------+-----------------------+-----------+
| user | authentication_string | plugin | host |
+------------------+-------------------------------------------+-----------------------+-----------+
| root | *E6A3377941E640ADEDCC8907E390B06B0C863862 | mysql_native_password | localhost |
| mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *5852386AB32C5DAD5DDA4F5FED911A70DA342656 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)
Salga del indicador de MySQL:
exit;
Para iniciar sesión nuevamente en el servidor MySQL ahora, deberá ingresar una contraseña, luego desde la terminal:
Si ha iniciado sesión como root, escriba en la terminal:
mysql -u root -p
De lo contrario, si ha iniciado sesión como un usuario normal con privilegios de sudo:
sudo mysql -u root -p
De esta forma, podrá acceder a PhpMyAdmin u otro software similar con el usuario root.
Opción 2: agregar privilegios de root para el usuario phpmyadmin Ejecute los siguientes comandos:
GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
Ahora puede iniciar sesión con el usuario phpmyadmin y tener todos los privilegios del usuario root.
Opción 3: crear un nuevo usuario Ahora puede conectarse a la base de datos a través de PhpMyadmin usando el nombre de usuario "phpmyadmin" y la contraseña ingresada en los pasos anteriores.
Alternativamente, puede crear un nuevo usuario y asignar los privilegios necesarios:
CREATE USER 'nuovo_utente'@'localhost' IDENTIFIED BY 'nuova_password';
Atención:Your password does not satisfy the current policy requirements.
este tutorial
Asocie los privilegios de administración con el usuario recién creado:
GRANT ALL PRIVILEGES ON *.* TO 'nuovo_utente'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;
Ahora puede conectarse a su dirección IP pública oa localhost agregando /phpmyadmin al final de la dirección.
http://vostro_dominio/phpmyadmin
http://localhost/phpmyadmin
Conclusión
La instalación y configuración de PhpMyAdmin en Ubuntu 18.04 LTS ha finalizado.