Introducción a las bases de datos
Introducción
Uno de los usos más comunes de un desarrollo web en PHP es crear páginas que permitan consultar y/o editar información almacenada en bases de datos. Si bien PHP soporta diferentes tipos de bases de datos, tales como SQLite, Oracle, SQL Server, PostgreSQL, MySQL y muchas otras, solo nos centraremos en MySQL, un sistema gestor de bases de datos relacionales de código abierto. MySQL incorpora varios motores de almacenamiento, siendo los más conocidos:- MyISAM: el motor por defecto, es muy rápido pero no utiliza integridad referencial, una propiedad según la cual la clave externa de una tabla de referencia siempre debe aludir a una fila válida de la tabla a la que se haga referencia ni tablas transacionales (para poder ejecutar varias operaciones sobre la tabla o base de datos en una única operación o transacción).
- InnoDB: es ma´s lento pero soporta tanto las tablas transaccionales como la integridad referencial.
Instalación de phpMyAdmin en Ubuntu
Adicionalmente, puedes utilizar como interfaz web de administración de tu base de datos la librería escrita en php phpMyAdmin, que en el caso de XAMPP está instalada por defecto y puedes acceder a ella desde http://localhost/phpmyadmin o que puedes instalar fácilmente en tu servidor Ubuntu mediante las siguientes instrucciones (extraídas de un tutorial de Digital Ocean):- Accede a la consola o termina de tu servidor Linux mediante SSH o telnet.
- Ejecuta el comando sudo apt update para actualizar todas los paquetes.
- Instala phpmyadmin y las librerías asociadas mediante el comando sudo apt install phpmyadmin php-mbstring php-gettext.
- Como opciones, selecciona apache2, db-config-common y cuando te pida la password utiliza la misma de instalación root de MySQL.
- Al finalizar y para poder acceder a través de la dirección http://localhost/phpmyadmin, o bien creas un usuario MySQL específico o modificas el usuario root para que permita autenticarse por password (por defecto es por socket).
Modificar el usuario root de MySQL para autenticación con password
- Accede a la consola del terminal y ejecuta sudo mysql.
- Introduce la password.
- Ejecuta SELECT user,authentication_string,plugin,host FROM mysql.user; para comprobar que root está configurado para autenticación via socket.
- Ejecuta ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; para modificarlo (siendo password la introducida en la instalación de MySQL).
- Ejecuta MYSQL FLUSH PRIVILEGES; para renovar los privilegios de los usuarios.
Fuentes para la definiciones: Wikipedia y php.net