MariaDB官网地址是:https://mariadb.org/ 。
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。 MariaDB由MySQL的创始人Michael Widenius(英语:Michael Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael Widenius的女儿Maria的名字。
MariaDB基于事务的Maria存储引擎,替换了MySQL的MyISAM存储引擎,它使用了Percona的 XtraDB,InnoDB的变体,分支的开发者希望提供访问即将到来的MySQL 5.4 InnoDB性能。这个版本还包括了 PrimeBase XT (PBXT) 和 FederatedX存储引擎。
我们在使用各种语言的驱动连接MariaDB时,常规流程如下图所示:
虽然最终数据库是同一个,但每种语言都有对应的驱动程序,操作方式不尽相同。
假如在体系中存在三个子系统,它们都需要调用getUserById方法,很可能是下图所示的结构:
图中的【1.直连】表示B系统用php实现getUserById方法,使用php驱动直接操作MariaDB库。
图中的【2.直连】表示A系统用java实现getUserById方法,使用java驱动直接操作MariaDB库。
图中的【3.API调用】表示C系统调用A系统的API。
这样的结构有一些问题:如果业务调整,getUserById的实现需要改变,比如不再返回注销的用户,那AB系统的代码都要调整。用以下的结构可以轻松搞定。
当项目需要连接多个版本的MariaDB时(比如老系统改造,系统二次开发),此问题尤为严重,驱动包的冲突会导致开发管理成本上升。
目前越来越多的人参与到软件开发中,项目规模可能不大,但几乎都会涉及到数据库应用,而关系数据库MariaDB就是一个非常好的选择。这些大量的开发者并不会太关心数据库原理、数据库范式等底层核心内容,他们关心的是怎么样高效地完成【增删查改】操作,越简单完成业务越好,让机器去做生活中的重复无趣操作从而提升效率。
很多项目中用户数不多,甚至只有1个(自用型),这样的情况下要求入门开发者去了解数据库原理、驱动操作就有点为难,毕竟开发出来的软件服务的是业务而不是技术,这种时候开发速度比成熟度、性能更为重要。
使用易源平台操作MariaDB,其流程如下图所示:
易源的MariaDB连接器将MariaDB数据库转化为通用数据源,并可以使用http接口进行全部数据库操作,包括但不限于增、删、查、改方法。
之后进入以下表单:
通过HTTP接口创建表,详情操作请点此查看。
通过HTTP接口查看所有的数据表,详情操作请点此查看。
通过HTTP接口插入一条记录,详情操作请点此查看。
通过HTTP接口更新多条记录,详情操作请点此查看。
通过HTTP接口删除记录,详情操作请点此查看。
通过HTTP接口查询数据列表,最高返回1000条记录,详情操作请点此查看。
通过HTTP接口查询分页记录,返回结构包含当前页、总页数、总记录数、当前页数据列表。分页虽不难,但历来都是繁琐操作(如果自己封装)使用易源的HTTP操作可以瞬间让您的程序具备分页查询功能。 。
如果我们需要用到复杂的SQL语句,在易源可以预先设置。比如说一段100行的复杂SQL代码,里面嵌入变量,这些变量从客户端用HTTP传入。SQL语句和变量您都可以自由定制。您可以使用本功能完成几乎所有的MariaDB操作。详情操作请点此查看。
以前是直连MariaDB,现在是通过易源进行中转,您可能会对这个流程的性能提出质疑,回答如下:
总结:您不需要为性能担忧,对于优化得当的老鸟来说易源会慢千分之一,但对于普通开发者来说易源可能更快。
对于MariaDB连接器,易源的IP是:
适合以下条件时,使用易源的MariaDB连接器是个很好的选择: