В последната ни статия Историята зад придобиването на „MySQL“ и възхода на „MariaDB“ беше високо оценена. В тази статия вече обсъдихме необходимостта от разклоняване на MySQL, възхода на MariaDB, характеристиките му, сравнително проучване на MariaDB и MySQL, движението на някои от световно известните корпорации и компании (Google, Wikipedia) от MySQL към MariaDB и много други технически и нетехнически аспекти от него.
Тук ще инсталираме MariaDB 10.1 на Debian Jessie (Тестване) и ще го тества, като създава малки таблици и изпълнява няколко заявки в процеса на учене и разбиране.
Инсталирайте MariaDB 10.1 на Debian Jessie
Под системите Debian е силно препоръчително да инсталирате „python-software-properties ‘ пакет, преди да се насочите към инсталацията на MariaDB от официалните хранилища.
# apt-get install python-software-properties
След това импортирайте и регистрирайте GPG ключа, който позволява apt за да провери целостта на софтуера, който изтегля.
# apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db
Сега добавете следното официално хранилище на MariaDB към вашия файл sources.list, като използвате следната команда.
# add-apt-repository 'deb http://mariadb.biz.net.id//repo/10.1/debian sid main'
Ако добавянето на хранилище хвърля грешка като „add-apt-repository:командата не е намерена “, трябва да инсталирате „software-properties-common“, както е показано по-долу.
# apt-get install software-properties-common
Актуализирайте списъка с налични пакети в системата.
# apt-get update
Накрая инсталирайте MariaDB Server и Client, като използвате следните команди.
# apt-get install mariadb-server mariadb-client
Ако инсталацията върви гладко, проверете версията на Installed MariaDB.
# mysql -V mysql Ver 15.1 Distrib 5.5.38-MariaDB, for debian-linux-gnu (x86_64) using readline 5.1
Влезте в MariaDB с помощта на root (не се препоръчва), последвано от парола.
$ 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)]>
ЗАБЕЛЕЖКА :„Няма“ по-горе, това означава, че в момента не е избрана база данни.
Изпълнение на различни MariaDB заявки
Как да създадете потребител в MariaDB. Използвайте следния синтаксис, за да създадете потребител в MariaDB.
CREATE USER 'USER_NAME' IDENTIFIED BY 'PASSWORD';
Например, за да създадете потребител „sam „ с парола „sam123 ‘, трябва да изпълним.
MariaDB [(none)]> CREATE USER 'sam' IDENTIFIED BY 'sam123'; Query OK, 0 rows affected (0.00 sec)
Сега излезте MariaDB и влезте с потребител 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)]>
Изтрийте/запуснете потребителя на MySQL „sam“.
MariaDB [(none)]> DROP USER sam; Query OK, 0 rows affected (0.00 sec)
Вижте цялата налична база данни.
MariaDB [(none)]> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | +--------------------+ 3 rows in set (0.04 sec)
ЗАБЕЛЕЖКА :Всички показани по-горе бази данни се използват вътрешно от MariaDB. Не редактирайте тези бази данни, освен ако не знаете какво правите.
Изберете база данни от списъка (необходимо за изпълнение на заявки).
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]>
Показване на всички таблици в базата данни.
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)
Вижте всички колони от таблица, кажете „потребител“ от базата данни „mysql“. Използвайте някоя от двете заявки.
SHOW COLUMNS FROM user; or DESCRIBE user;
Резултатът и от двете заявки е един и същ.
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)
Вижте обширна информация за състоянието на сървъра на 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)
Вижте изявлението на MariaDB, което беше използвано за създаване на база данни, кажете „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)
Вижте изявлението на MariaDB, което беше използвано за създаване на таблица, кажете „потребител“.
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', ....
Вижте правата за сигурност, предоставени на/всички потребители на 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)
Вижте ПРЕДУПРЕЖДЕНИЯта на сървъра 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)
Вижте Грешки на MariaDB service.
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)
Това е всичко за сега. „ШОУ ‘ Statement има много функции, които ще обсъдим в бъдещата статия заедно с други заявки, които да се изпълняват в MariaDB, за да получите желания резултат. Дотогава следете и се свържете с Tecmint. Не забравяйте да ни предоставите ценната си обратна връзка в секцията за коментари по-долу.