Diferencia entre revisiones de «Recetas/mariadbbasico»
(Página creada con « == Resumen de la receta == == Requisitos == * Debian GNU/Linux Stretch 9.x * mariadb-server 10.1 * Tener configurado los repositorios, ver Recetas/repositorio ==...») |
|||
(No se muestran 10 ediciones intermedias del mismo usuario) | |||
Línea 1: | Línea 1: | ||
== Resumen de la receta == | == Resumen de la receta == | ||
− | + | Instalación y configuración de un servidor de bases de datos de MariaDB. | |
+ | Video disponible en: [https://youtu.be/sCUaaYDzZiI] | ||
== Requisitos == | == Requisitos == | ||
Línea 7: | Línea 8: | ||
* Debian GNU/Linux Stretch 9.x | * Debian GNU/Linux Stretch 9.x | ||
* mariadb-server 10.1 | * mariadb-server 10.1 | ||
+ | * Conocimiento básico de lenguaje SQL | ||
* Tener configurado los repositorios, ver [[Recetas/repositorio]] | * Tener configurado los repositorios, ver [[Recetas/repositorio]] | ||
− | |||
== Instalación de programas == | == 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 | apt-get install mariadb-server | ||
== Configuración == | == Configuración == | ||
− | 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. | + | === 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 | + | Ingresamos al modo CLI de MariaDB |
− | mysql -u root | + | # mysql -u root |
− | 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'' | + | 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 | Creamos la base de datos | ||
− | + | MariaDB [(none)]>create database prueba; | |
− | + | ||
− | + | === Definiendo Privilegios === | |
+ | |||
+ | Para ver los niveles de privilegios, pueden verlos desde [https://mariadb.com/kb/en/library/grant/] | ||
+ | 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 | 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 | 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'' | 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 | Nos conectamos a la base de datos prueba | ||
− | mysql> use prueba | + | |
− | Creamos | + | === 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 | Verificamos que la tabla haya sido creada | ||
− | + | MariaDB [prueba]> show tables; | |
Mostramos los campos de la tabla creada | Mostramos los campos de la tabla creada | ||
− | + | MariaDB [prueba]> describe curso; | |
+ | |||
+ | === Insertando Datos en las Tablas === | ||
Insertamos datos en la tabla | 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 | Verificamos los datos insertados | ||
− | + | MariaDB [prueba]> select * from aula; | |
+ | MariaDB [prueba]> select * from curso; | ||
Nos salimos | Nos salimos | ||
− | + | MariaDB [prueba]> exit | |
+ | |||
+ | == Instalacion phpmyadmin == | ||
− | + | apt-get install phpmyadmin | |
− | |||
− | |||
+ | Ahora se abrir en el navegador http://<IP del servidor>/phpmyadmin | ||
== Referencias == | == Referencias == | ||
+ | * https://mariadb.com/kb/en/library/grant/ | ||
+ | * |
Revisión actual del 09:53 20 may 2018
Contenido
Resumen de la receta
Instalación y configuración de un servidor de bases de datos de MariaDB. Video disponible en: [1]
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 [2] 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