Recetas/mariadbbasico

De FESOL. Proyectos de Software Libre ULS
Saltar a: navegación, buscar

Resumen de la receta

Requisitos

  • Debian GNU/Linux Stretch 9.x
  • mariadb-server 10.1
  • Conocimiento básico de lenguaje SQL
  • Tener configurado los repositorios, ver Recetas/repositorio

Instalación de programas

Vamos a instalar el servidor de mariadb con el metapaquete mariadb-server. En caso de que solo quisieramos instalar el cliente podemos instalar el paquete mariadb-client.

apt-get install mariadb-server

Configuración

Crear Usuario

Para la crear el usuario y la base de datos, se puede hacer desde modo grafico con mysql workbench, modo web con phpmyadmin o en modo cli. Acá lo haremos en modo cli. Es de diferenciar los comandos ejecutados en la SHELL de GNU/Linux (llevan el caracter #) y los comandos ejecutados en el CLI de MariaDB (Tienen el caracter >).

Ingresamos al modo CLI de MariaDB

 # mysql  -u root

Cambiamos a la base de datos MariaDB

  MariaDB [(none)]>use mysql

Listamos las tablas de esa DB

 MariaDB [mysql]>show tables;

Listamos los usuarios que existen

 MariaDB [mysql]>select * from user;

Creamos el usuario uls

 MariaDB [mysql]>create user 'uls'@'%';

Listamos de nuevo los usuarios

 MariaDB [mysql]>select * from user;

Le asignamos una clave al neuvo usuario

 MariaDB [mysql]>set password for 'uls'@'%'  = password('uls');

Verificamos que se le haya asignado la clave al usuario

 MariaDB [mysql]>select * from user;

Nos salimos del CLI de MySQL

 MariaDB [mysql]>exit

Verificamos desde la terminal de GNU/Linux las credenciales del nuevo usuario

 #mysql -u uls -p 

Observamos que bases puede ver el nuevo usuario

 MariaDB [(none)]>show databases;

Nota: en caso de que le hayamos asignado una clave al usuario, se debe pasarle el parámetro -p de modo que el comando quedaría como mysql -u root -p

Crear Base de datos

Creamos la base de datos

MariaDB [(none)]>create database prueba;

Definiendo Privilegios

Para ver los niveles de privilegios, pueden verlos desde [1] Asignando privilegios al usuario uls en la base de datos uls

MariaDB [(none)]> grant all privileges on prueba.* to 'uls'@'%';

ó

MariaDB [(none)]> grant create,drop,index,create view,trigger,alter,select,update,insert on prueba.* to 'uls'@'%';

Aplicamos los cambios de privilegios

MariaDB [(none)]> flush privileges;

Nos vamos a la base de mysq para ver cuales son los usuarios que tiene mysql

MariaDB [(none)]> use mysql
MariaDB [(none)]> select * from user;

Verificamos los privilegios que tiene el usuario usuario que se conecta desde localhost

MariaDB [(none)]> show grants for 'uls'@'%';

Nos conectamos a la base de datos prueba

Creando las Tablas

Para crear las tablas y sus datos, usaremos el nuevo usuario creado.

mysql -p -u uls

E ingresamos la clave que le configuramos. Si todo salio bien, deberá aparecernos el cli de MariaDB

Listamos las bases

MariaDB [prueba]> show databases

Seleccionamos la base donde insertaremos los datos

MariaDB [prueba]> use prueba

Creamos dos tablas simples de pruebas llamadas aula y curso relacionada con la llave ID de que cada curso tiene un aula asignada

MariaDB [prueba]>  CREATE TABLE aula(id INT NOT NULL, nombre VARCHAR(20), PRIMARY KEY ( id ) );
MariaDB [prueba]>  CREATE TABLE curso(id INT NOT NULL, nombre VARCHAR(20),id_aula INT, PRIMARY KEY ( id ),FOREIGN KEY (id_aula) REFERENCES aula(id)   );

Verificamos que la tabla haya sido creada

MariaDB [prueba]>  show tables;

Mostramos los campos de la tabla creada

MariaDB [prueba]> describe  curso;

Insertando Datos en las Tablas

Insertamos datos en la tabla

MariaDB [prueba]> insert into aula values(1,'Computo B1');
MariaDB [prueba]> insert into aula values(2,'Computo C1');
MariaDB [prueba]>  insert into curso values(1,'redes I',1); 
MariaDB [prueba]>  insert into curso values(2,'Sistemas',2); 

Verificamos los datos insertados

MariaDB [prueba]> select * from aula;
MariaDB [prueba]> select * from curso;

Nos salimos

MariaDB [prueba]> exit

Instalacion phpmyadmin

apt-get install phpmyadmin

Ahora se abrir en el navegador http://<IP del servidor>/phpmyadmin

Referencias