Installation af MariaDB 10.1 i Debian Jessie og kørsel af forskellige MariaDB-forespørgsler


I vores sidste artikel blev historien bag erhvervelse af 'MySQL' og Rise of 'MariaDB' meget værdsat. I denne artikel har vi allerede diskuteret behovet for at forkaste MySQL, stigningen i MariaDB, funktioner i det, en sammenlignende undersøgelse af MariaDB og MySQL, flytning af nogle af verdens berømte virksomheder og virksomheder (Google, Wikipedia) fra MySQL til MariaDB og en masse andet teknisk og ikke-teknisk aspekt af det.

Her skal vi installere MariaDB 10.1 på Debian Jessie (Testing) og vil teste det ved at oprette små tabeller og køre flere forespørgsler i løbet af læring og forståelse.

Installer MariaDB 10.1 på Debian Jessie

Under Debian-systemer anbefales det stærkt at installere pakken ' python-software-egenskaber ', inden du går op til MariaDB-installationen fra officielle arkiver.

# apt-get install python-software-properties

Dernæst importerer og registrerer GPG-nøglen, som gør det muligt for apt at kontrollere integriteten af software, den downloader.

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

Tilføj nu følgende MariaDB officielle lager til din sources.list-fil ved hjælp af følgende kommando.

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

Hvis tilføjelse af arkiv kaster fejl som " add-apt-repository: kommando ikke fundet ", skal du installere 'software-egenskaber-fælles' som vist nedenfor.

# apt-get install software-properties-common

Opdater listen over tilgængelige pakker på systemet.

# apt-get update

Endelig skal du installere MariaDB Server og klient ved hjælp af følgende kommandoer.

# apt-get install mariadb-server mariadb-client

Hvis installationen går glat, skal du kontrollere versionen af Installeret MariaDB.

# mysql -V 

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

Log ind på MariaDB ved hjælp af root (anbefales ikke) efterfulgt af adgangskode.

$ 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)]>

BEMÆRK: 'Ingen' ovenfor betyder, at der ikke er valgt nogen database i øjeblikket.

Kører forskellige MariaDB-forespørgsler

Sådan oprettes en bruger i MariaDB. Brug følgende syntaks til at oprette en bruger i MariaDB.

CREATE USER 'USER_NAME' IDENTIFIED BY 'PASSWORD';

For eksempel skal vi udføre for at oprette bruger ' sam ' med adgangskode ' sam123 '.

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

Nu luk MariaDB og log ind ved hjælp af bruger 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)]>

Slet/slip MySQL-bruger 'sam'.

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

Se al den tilgængelige database.

MariaDB [(none)]> SHOW DATABASES; 

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

BEMÆRK: Alle ovenstående databaser bruges af MariaDB Internt. Rediger ikke disse databaser, medmindre du ved hvad du laver.

Vælg en database fra listen (Nødvendigt for at køre forespørgsler).

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]>

Vis alle tabellerne i databasen.

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)

Se alle kolonnerne fra en tabel sige 'bruger' fra databasen 'mysql'. Brug en af de to forespørgsler.

SHOW COLUMNS FROM user;

or 

DESCRIBE user;

Resultatet af begge forespørgsler er det samme.

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)

Se omfattende serverstatusoplysninger for 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)

Se MariaDB-erklæringen, der blev brugt til at oprette database, siger '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)

Se MariaDB-erklæringen, der blev brugt til at oprette tabel, siger 'bruger'.

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', 
....

Se de sikkerhedsrettigheder, der er tildelt en/alle MariaDB-brugere.

MariaDB [mysql]> SHOW GRANTS; 
+----------------------------------------------------------------------------------------------------------------------------------------+ 
| Grants for [email                                                                                                               | 
+----------------------------------------------------------------------------------------------------------------------------------------+ 
| 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)

Se ADVARSLER fra MariaDB-serveren.

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)

Se Fejl ved MariaDB-servering.

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)

Det er alt for nu. 'SHOW' -erklæringen har mange funktioner, som vi vil diskutere i den fremtidige artikel sammen med andre forespørgsler, der skal køres på MariaDB for at få det ønskede resultat. Indtil da hold dig opdateret og tilsluttet Tecmint. Glem ikke at give os din værdifulde feedback i kommentarfeltet nedenfor.