在Debian Jessie中安装MariaDB 10.1并运行各种MariaDB查询

这里我们将在Debian Jessie上安装MariaDB 10.1,并将通过创建小表并在过程中运行几个查询来测试它

在我们的上一篇文章中的故事“MySQL的收购背后和”MariaDB的“崛起的高度赞赏。 在本文中,我们已经讨论了需要分叉MySQL,MariaDB的兴起,它的特点,MariaDB和MySQL的比较研究,一些世界着名的企业和公司(谷歌,维基百科)从MySQL移动到MariaDB和很多其他技术和非技术方面。

在Debian中安装MariaDB

在Debian中安装MariaDB

在这里,我们要安装Debian的杰西MariaDB的10.1(测试),并通过创建小表,并在学习和理解的过程中运行多个查询来测试它。

在Debian Jessie上安装MariaDB 10.1

在Debian系统中,强烈建议安装“ python软件的属性 '包,领导了从官方源的MariaDB的安装之前。

# apt-get install python-software-properties

其次,进口和regtister GPG密钥,从而使容易验证软件的下载它的完整性。

# 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'

如果添加库抛出错误,如“附加的apt-库:找不到命令 ”,你需要如下图所示,安装“软件-属性-通用”。

# apt-get install software-properties-common

更新系统上的可用软件包列表。

# apt-get update

最后,使用以下命令安装MariaDB Server和Client。

# apt-get install mariadb-server mariadb-client
设置MariaDB密码

设置MariaDB密码

确认MariaDB密码

确认MariaDB密码

如果安装顺利,请检查安装的MariaDB的版本。

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

使用root(不推荐)登录MariaDB,然后是密码。

$ 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';

例如,创建用户“ 山姆 ”密码“sam123',我们需要执行。

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

现在退出 MariaDB的使用用户test登录。

$ 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'查看表中的所有列说'user'。 使用两个查询。

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)

查看用于创建Table say'user'的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', 
....

查看授予/ all MariaDB用户的安全权限。

MariaDB [mysql]> SHOW GRANTS; 
+----------------------------------------------------------------------------------------------------------------------------------------+ 
| Grants for root@localhost                                                                                                              | 
+----------------------------------------------------------------------------------------------------------------------------------------+ 
| 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服务的错误。

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)

目前为止就这样了。 显示 ”语句有很多的功能,我们将在以后的文章中以及其他查询商讨要在MariaDB的运行来获得期望的结果。 直到然后,保持调整和连接到Howtoing。 不要忘记在下面的评论部分向我们提供您的宝贵反馈。