在我们的上一篇文章中的故事“MySQL的收购背后和”MariaDB的“崛起的高度赞赏。 在本文中,我们已经讨论了需要分叉MySQL,MariaDB的兴起,它的特点,MariaDB和MySQL的比较研究,一些世界着名的企业和公司(谷歌,维基百科)从MySQL移动到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的版本。
# 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的运行来获得期望的结果。 直到然后,保持调整和连接到youcl。 不要忘记在下面的评论部分向我们提供您的宝贵反馈。