Instalación de MariaDB 10.1 en Debian Jessie y ejecución de varias consultas MariaDB


En nuestro último artículo, la historia detrás de la adquisición de "MySQL" y el auge de "MariaDB" fue muy apreciada. En este artículo, ya hemos discutido la necesidad de bifurcar MySQL, el surgimiento de MariaDB, Características de la misma, un estudio comparativo de MariaDB y MySQL, Movimiento de algunas de las corporaciones y empresas de renombre mundial (Google, Wikipedia) de MySQL a MariaDB y muchos otros aspectos técnicos y no técnicos de la misma.

Aquí vamos a instalar MariaDB 10.1 en Debian Jessie (Prueba) y lo probaremos creando tablas pequeñas y ejecutando varias consultas en el proceso de aprendizaje y comprensión.

Instale MariaDB 10.1 en Debian Jessie

En los sistemas Debian, se recomienda encarecidamente instalar el paquete " python-software-properties ", antes de dirigirse a la instalación de MariaDB desde los repositorios oficiales.

# apt-get install python-software-properties

A continuación, importe y registre la clave GPG, que permite que apt verifique la integridad del software que descarga.

# apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db

Ahora, agregue el siguiente repositorio oficial de MariaDB a su archivo sources.list, usando el siguiente comando.

# add-apt-repository 'deb http://mariadb.biz.net.id//repo/10.1/debian sid main'

Si agregar el repositorio arroja un error como " add-apt-repository: comando no encontrado ", debe instalar "software-properties-common" como se muestra a continuación.

# apt-get install software-properties-common

Actualice la lista de paquetes disponibles en el sistema.

# apt-get update

Finalmente, instale MariaDB Server and Client, usando los siguientes comandos.

# apt-get install mariadb-server mariadb-client

Si la instalación se realiza sin problemas, verifique la versión de MariaDB instalada.

# mysql -V 

mysql  Ver 15.1 Distrib 5.5.38-MariaDB, for debian-linux-gnu (x86_64) using readline 5.1

Inicie sesión en MariaDB usando root (no recomendado), seguido de contraseña.

$ mysql -u root -p
Welcome to the MariaDB monitor.  Commands end with ; or \g. 
Your MariaDB connection id is 28 
Server version: 5.5.38-MariaDB-1 (Debian) 

Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. 

MariaDB [(none)]>

NOTA: El "ninguno" anterior, significa que no hay ninguna base de datos seleccionada actualmente.

Ejecución de varias consultas MariaDB

Cómo crear un usuario en MariaDB. Utilice la siguiente sintaxis para crear un usuario en MariaDB.

CREATE USER 'USER_NAME' IDENTIFIED BY 'PASSWORD';

Por ejemplo, para crear el usuario " sam " con la contraseña " sam123 ", debemos ejecutar.

MariaDB [(none)]> CREATE USER 'sam' IDENTIFIED BY 'sam123'; 
Query OK, 0 rows affected (0.00 sec)

Ahora salga de MariaDB e inicie sesión con el usuario sam .

$ mysql -u 'sam' -p 
Enter password: 

Welcome to the MariaDB monitor.  Commands end with ; or \g. 
Your MariaDB connection id is 36 
Server version: 5.5.38-MariaDB-1 (Debian) 

Copyright (c) 2000, 2014, Oracle, Monty Program Ab and others. 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. 

MariaDB [(none)]>

Eliminar/soltar al usuario de MySQL "sam".

MariaDB [(none)]> DROP USER sam; 
Query OK, 0 rows affected (0.00 sec)

Ver toda la base de datos disponible.

MariaDB [(none)]> SHOW DATABASES; 

+--------------------+ 
| Database           | 
+--------------------+ 
| information_schema | 
| mysql              | 
| performance_schema | 
+--------------------+ 
3 rows in set (0.04 sec)

NOTA: MariaDB utiliza internamente todas las bases de datos que se muestran arriba. No edite estas bases de datos a menos que sepa lo que está haciendo.

Seleccione una base de datos de la lista (necesaria para ejecutar consultas).

MariaDB [(none)]> USE mysql; 
Reading table information for completion of table and column names 
You can turn off this feature to get a quicker startup with -A 

Database changed 
MariaDB [mysql]>

Muestre todas las tablas dentro de la base de datos.

MariaDB [mysql]> SHOW TABLES; 

| Tables_in_mysql           | 
+---------------------------+ 
| columns_priv              | 
| db                        | 
| event                     | 
| func                      | 
| general_log               | 
| help_category             | 
| help_keyword              | 
| help_relation             | 
| help_topic                | 
.....
24 rows in set (0.00 sec)

Vea todas las columnas de una tabla que diga "usuario" de la base de datos "mysql". Utilice cualquiera de las dos consultas.

SHOW COLUMNS FROM user;

or 

DESCRIBE user;

El resultado de ambas consultas es el mismo.

MariaDB [mysql]> describe user; 
+------------------------+-----------------------------------+------+-----+---------+-------+ 
| Field                  | Type                              | Null | Key | Default | Extra | 
+------------------------+-----------------------------------+------+-----+---------+-------+ 
| Host                   | char(60)                          | NO   | PRI |         |       | 
| User                   | char(16)                          | NO   | PRI |         |       | 
| Password               | char(41)                          | NO   |     |         |       | 
| Select_priv            | enum('N','Y')                     | NO   |     | N       |       | 
| Insert_priv            | enum('N','Y')                     | NO   |     | N       |       | 
| Update_priv            | enum('N','Y')                     | NO   |     | N       |       | 
| Delete_priv            | enum('N','Y')                     | NO   |     | N       |       | 
| Create_priv            | enum('N','Y')                     | NO   |     | N       |       | 
| Drop_priv              | enum('N','Y')                     | NO   |     | N       |       | 
.......
42 rows in set (0.01 sec)

Consulte la información detallada sobre el estado del servidor de MariaDB.

MariaDB [mysql]> SHOW STATUS; 
+------------------------------------------+----------------------+ 
| Variable_name                            | Value                | 
+------------------------------------------+----------------------+ 
| Aborted_clients                          | 0                    | 
| Aborted_connects                         | 0                    | 
| Access_denied_errors                     | 0                    | 
| Aria_pagecache_blocks_not_flushed        | 0                    | 
| Aria_pagecache_blocks_unused             | 15737                | 
| Aria_pagecache_blocks_used               | 2                    | 
| Aria_pagecache_read_requests             | 176                  | 
| Aria_pagecache_reads                     | 4                    | 
| Aria_pagecache_write_requests            | 8                    | 
....
419 rows in set (0.00 sec)

Vea la declaración MariaDB que se usó para crear la base de datos y diga "mysql".

MariaDB [mysql]> SHOW CREATE DATABASE mysql; 
+----------+------------------------------------------------------------------+ 
| Database | Create Database                                                  | 
+----------+------------------------------------------------------------------+ 
| mysql    | CREATE DATABASE `mysql` /*!40100 DEFAULT CHARACTER SET latin1 */ | 
+----------+------------------------------------------------------------------+ 
1 row in set (0.00 sec)

Vea la declaración de MariaDB que se usó para crear la tabla y diga "usuario".

MariaDB [mysql]> SHOW CREATE TABLE user; 
+ 
| Table | Create Table                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
+-------
| user  | CREATE TABLE `user` ( 
  `Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '', 
  `User` char(16) COLLATE utf8_bin NOT NULL DEFAULT '', 
  `Password` char(41) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '', 
  `Select_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
  `Insert_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N', 
....

Vea los derechos de seguridad otorgados a un/todos los usuarios de MariaDB.

MariaDB [mysql]> SHOW GRANTS; 
+----------------------------------------------------------------------------------------------------------------------------------------+ 
| Grants for [email protected]                                                                                                              | 
+----------------------------------------------------------------------------------------------------------------------------------------+ 
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*698vsgfkemhvjh7txyD863DFF63A6bdfj8349659232234bs3bk5DC1412A' WITH GRANT OPTION | 
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION                                                                           | 
+----------------------------------------------------------------------------------------------------------------------------------------+ 
2 rows in set (0.00 sec)

Consulte las ADVERTENCIAS del servidor MariaDB.

MariaDB [mysql]> SHOW WARNINGS; 
+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
| Level | Code |Message                                                                                                                                                      | 
+-------+------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
| Error | 1064 | You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'ON mysql' at line 1 | 
+-------+------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
1 row in set (0.00 sec)

Consulte Errores del servicio MariaDB.

MariaDB [mysql]> SHOW ERRORS; 

+-------+------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
| Level | Code | Message                                                                                                                                                      | 
+-------+------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
| Error | 1064 | You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'ON mysql' at line 1 | 
+-------+------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+ 
1 row in set (0.00 sec)

Eso es todo por ahora. La declaración "MOSTRAR" tiene muchas características, que discutiremos en el artículo futuro junto con otras consultas que se ejecutarán en MariaDB para obtener el resultado deseado. Hasta entonces, estad atentos y conectados a Tecmint. No olvide enviarnos sus valiosos comentarios en la sección de comentarios a continuación.