MariaDB 10.1 an Debian Jessie installéieren a verschidde MariaDB Queries lafen


An eisem leschten Artikel D'Geschicht hannert der Acquisitioun vun 'MySQL' an de Rise vun 'MariaDB' gouf héich geschätzt. An dësem Artikel hu mir schonn iwwer d'Noutwennegkeet diskutéiert MySQL ze forkéieren, den Opstig vu MariaDB, Features dovun, eng komparativ Studie vu MariaDB a MySQL, Bewegung vun e puer vun de weltbekannte Firmen a Firmen (Google, Wikipedia) vu MySQL op MariaDB a vill aner technesch an net-technesch Aspekt vun et.

Hei wäerte mir MariaDB 10.1 op Debian Jessie (Testing) installéieren a wäerte testen andeems Dir kleng Dëscher erstellt a verschidde Ufroen am Prozess vum Léieren a Verständnis lafen.

Installéiert MariaDB 10.1 op Debian Jessie

Ënner Debian Systemer ass et héich recommandéiert ze installéieren 'python-software-properties' Package, ier Dir op d'MariaDB Installatioun vun offiziellen Repositories geet.

# apt-get install python-software-properties

Als nächst, importéiert a registréiert de GPG Schlëssel, deen apt erméiglecht fir d'Integritéit vun der Software z'iwwerpréiwen déi se eroflueden.

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

Füügt elo de folgende MariaDB offiziellen Repository op Är sources.list Datei, andeems Dir de folgende Kommando benotzt.

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

Wann de Repository derbäigesat gëtt Feeler wéi \add-apt-repository: Kommando net fonnt, musst Dir 'Software-Properties-Common' installéieren wéi hei ënnendrënner.

# apt-get install software-properties-common

Update d'Lëscht vun verfügbare Packagen um System.

# apt-get update

Endlech installéiert MariaDB Server a Client, mat de folgende Kommandoen.

# apt-get install mariadb-server mariadb-client

Wann d'Installatioun glat geet, kontrolléiert d'Versioun vun Installéiert MariaDB.

# mysql -V 

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

Login op MariaDB mat Root (Net Recommandéiert), gefollegt vum Passwuert.

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

NOTÉIERT: De 'keen' uewen, et heescht datt keng Datebank am Moment ausgewielt gëtt.

Lafen verschidde MariaDB Ufroen

Wéi erstellt ee Benotzer an MariaDB. Benotzt déi folgend Syntax fir e Benotzer an MariaDB ze kreéieren.

CREATE USER 'USER_NAME' IDENTIFIED BY 'PASSWORD';

Zum Beispill, fir de Benotzer 'sam' mam Passwuert 'sam123' ze erstellen, musse mir ausféieren.

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

Elo Gitt MariaDB a loggt Iech un mam Benotzer 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)]>

Läschen/Drop MySQL Benotzer 'sam'.

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

Kuckt all déi verfügbar Datebank.

MariaDB [(none)]> SHOW DATABASES; 

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

NOTÉIERT: All d'Datebanke weisen uewendriwwer gi vu MariaDB intern benotzt. Änneren dës Datenbanken net ausser Dir wësst wat Dir maacht.

Wielt eng Datebank aus der Lëscht (Noutwendeg fir Ufroen ze lafen).

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

Weist all Dëscher an der Datebank.

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)

Kuckt all d'Säulen aus enger Tabelle soen 'Benotzer' aus der Datebank 'mysql'. Benotzt entweder vun deenen zwou Ufroen.

SHOW COLUMNS FROM user;

or 

DESCRIBE user;

D'Resultat vu béiden Ufroen ass d'selwecht.

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)

Kuckt extensiv Serverstatusinformatioun vu 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)

Kuckt d'MariaDB Ausso déi benotzt gouf fir Datebank ze kreéieren soen '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)

Kuckt d'MariaDB Ausso déi benotzt gouf fir Table ze kreéieren soen 'Benotzer'.

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

Kuckt d'Sécherheetsrechter déi un engem/all MariaDB Benotzer ginn.

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)

Kuckt d'WARNINGS vum MariaDB Server.

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)

Kuckt Feeler vu MariaDB servéieren.

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)

Dat ass alles fir elo. D'SHOW'Erklärung huet vill Features, déi mir am zukünftegen Artikel diskutéieren zesumme mat anere Ufroe fir op MariaDB ze lafen fir gewënschte Resultat ze kréien. Bis dann bleift ofgeschloss a verbonne mat Tecmint. Vergiesst net eis Äre wäertvolle Feedback an der Kommentarsektioun hei drënner ze ginn.