Namestitev MariaDB 10.1 v Debian Jessie in izvajanje različnih poizvedb MariaDB


V našem zadnjem članku je bila zelo cenjena Zgodba za nakupom "MySQL" in vzponom "MariaDB". V tem članku smo že razpravljali o tem, da je treba MySQL razviti, vzpon MariaDB, njegove značilnosti, primerjalno študijo MariaDB in MySQL, gibanje nekaterih svetovno znanih podjetij in podjetij (Google, Wikipedia) iz MySQL v MariaDB in še mnogo drugih tehničnih in netehničnih vidikov.

Tukaj bomo namestili MariaDB 10.1 na Debian Jessie (Testiranje) in jo bomo preizkusili z ustvarjanjem majhnih tabel in izvajanjem več poizvedb v procesu učenja in razumevanja.

Namestite MariaDB 10.1 na Debian Jessie

V sistemih Debian je zelo priporočljivo namestiti paket " python-software-properties ", preden se od uradnih repozitorij odpravite na namestitev MariaDB.

# apt-get install python-software-properties

Nato uvozite in registrirajte ključ GPG, ki omogoča apt , da preveri celovitost programske opreme, ki jo prenaša.

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

Zdaj v datoteko sources.list dodajte naslednje uradno repozitorij MariaDB z naslednjim ukazom.

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

Če dodajanje repozitorija vrže napako, kot je\" add-apt-repository: ukaz ni najden ", morate namestiti "software-properties-common", kot je prikazano spodaj.

# apt-get install software-properties-common

Posodobite seznam razpoložljivih paketov v sistemu.

# apt-get update

Na koncu namestite strežnik in odjemalca MariaDB z naslednjimi ukazi.

# apt-get install mariadb-server mariadb-client

Če namestitev poteka gladko, preverite različico programa Installed MariaDB.

# mysql -V 

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

Prijavite se v MariaDB s korenskim (ni priporočljivo), ki mu sledi geslo.

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

OPOMBA: Zgornji ‘nič’ pomeni, da trenutno ni izbrana nobena baza podatkov.

Izvajanje različnih poizvedb MariaDB

Kako ustvariti uporabnika v MariaDB. Uporabite naslednjo sintakso za ustvarjanje uporabnika v MariaDB.

CREATE USER 'USER_NAME' IDENTIFIED BY 'PASSWORD';

Če želite na primer ustvariti uporabnika ‘ sam ‘ z geslom ‘ sam123 ‘, ga moramo izvesti.

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

Zdaj zapustite MariaDB in se prijavite z uporabnikom 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)]>

Izbriši/spusti uporabnika MySQL ‘sam’.

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

Oglejte si vso razpoložljivo bazo podatkov.

MariaDB [(none)]> SHOW DATABASES; 

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

OPOMBA: Vse zgoraj prikazane zbirke podatkov MariaDB uporablja interno. Teh baz podatkov ne urejajte, če ne veste, kaj počnete.

Na seznamu izberite zbirko podatkov (nujno za zagon poizvedb).

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

Pokaži vse tabele v zbirki podatkov.

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)

Oglejte si vse stolpce v tabeli, na primer »uporabnik« iz zbirke podatkov »mysql«. Uporabite katero koli od dveh poizvedb.

SHOW COLUMNS FROM user;

or 

DESCRIBE user;

Rezultat obeh poizvedb je enak.

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)

Oglejte si obsežne informacije o stanju strežnika 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)

Glejte izjavo MariaDB, ki je bila uporabljena za ustvarjanje zbirke podatkov, recimo "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)

Glejte stavek MariaDB, ki je bil uporabljen za ustvarjanje tabele z besedo „uporabnik“.

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

Oglejte si varnostne pravice, dodeljene/vsem uporabnikom MariaDB.

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)

Glejte OPOZORILA strežnika 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)

Glejte Napake storitve 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)

To je vse za zdaj. Izjava »POKAŽI« ima veliko funkcij, o katerih bomo razpravljali v prihodnjem članku, skupaj z drugimi poizvedbami, ki jih je treba zagnati na MariaDB, da dobimo želeni rezultat. Do takrat ostanite z nami in povezani s Tecmintom. Ne pozabite nam poslati svojih dragocenih povratnih informacij v spodnjem oddelku za komentarje.