概述
本教程操作环境:Red Hat Enterprise Linux 6.1系统、Dell G3电脑。
什么是数据库?
数据库就是一个存放计算机数据的仓库,这个仓库是按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来对数据进行组织和存储的,可以通过数据库提供的多种方法来管理其中的数据。
linux下常见关系型数据库
1、Oracle 数据库
Oracle 前身叫 SDL,由 Larry Ellison 和另两个编程人员在1977创办,他们开发了自己的拳头产品,在市场上大量销售,1979年,Oracle 公司引入了第一个商用 SQL关系数据库管理系统。 Oracle公司是最早开发关系数据库的厂商之一,其产品支持最广泛的操作系统平台。目前 Oracle 关系数据库产品的市场占有率数一数二。
Oracle (甲骨文)公司是目前全球最大的数据库软件公司,也是近年业务增长极为迅速的软件提供与服务商。
主要应用范围:传统大企业,大公司,政府,金融,证券等等。
2、MySQL 数据库
MySQL 数据库是一个中小型关系型数据库管理系统,软件开发者为瑞典 MySQL AB 公司。在 2008 年 1 月 16 号被 Sun 公司收购,后 Sun 公司又被 Oracle 公司收购。目前 MySQL 被广泛地应用 在 Internet 上的大中小型网站中由于其体积小、速度快、总体拥有成本低,尤其是开放源码这 一特点,许多大中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库,甚至国 内知名的淘宝网也选择弃用 Oracle 而更换为更开放的 MySQL 。
MySQL 数据库主要应用范围:互联网领域,大中小型网站,游戏公司,电商平台等等。
3、MariaDB 数据库
MariaDB 数据库管理系统是 MySQL 数据库的一个分支,主要由开源社区维护。开发这个 MariaDB 数据库分支的可能原因之一是:甲骨文公司收购了 MySQL 后,有将 MySQL 闭源的潜在 风险,因此 MySQL 开源社区采用分支的方式来避开这个风险。 开发 MariaDB 数据库的目的是完全兼容 MySQL 数据库,包括 API 和命令行,使之能轻松的成为 MySQL 的代替品。在存储引擎方面,使用 XtraDB (英语: XtraDB )来代替 MySQL 的 InnoDB
MariaDB 由 MySQL 的创始人 Michael Widenius (英语: Michael Widenius )主导开发,他早前 曾以 10 亿美元的价格,将自己创建的公司 MySQL AB 卖给了 SUN ,此后,随着 SUN 被甲骨文收 购, MySQL 的所有权也落入 Oracle 的手中, MariaDB 数据库的名称来自 MySQL 的创始人 Michael Widenius 的女儿 Maria 的名字。
4、SQL Server 数据库
Microsoft SQL Server 是微软公司开发的大型关系型数据库系统。 1987 年,微软和 IBM 合作开发完 成 OS/2 , IBM 在其销售的 OS/2 ExtendedEdition 系统中绑定了 OS/2 DatabaseManager ,而微 软产品线中尚缺少数据库产品。为此,微软将目光投向 Sybase ,同 Sybase 签订了合作协议,使 用 Sybase 的技术开发基于 OS/2 平台的关系型数据库。 1989 年,微软发布了 SQLServer1.0 版。 SQL Server 的功能比较全面,效率高,可以作为中型企业或单位的数据库平台。 SQL Server 可以 Windows 操作系统紧密集成,不论是应用程序开发速度还是系统事务处理运 行速度,都能得到较大的 提升。 SQL Server 的缺点是只能在 Windows 系统下运行。
主要应用范围:部分企业电商(央视购物),使用 windows 服务器平台的企业。
linux下常用非关系型数据库管理系统
1、Memcached(Key-Value)
Memcached 是一个开源的、高性能的、具有分布式内存对象的缓存系统。通过它可以减轻数据库负载,加速动态的 Web 应用,最初版本由 LiveJoumal 的 Brad Fitzpatrick 在 2003 年开发完成。 目前全球有非常多的用户都在使用它来构建自己的大负载网站或提高自己的高访问网站的响应速 度。注意: Memcache 是这个项目的名称,而 Memcached 是服务器端的主程序文件名。
缓存一般用来保存一些经常被存取的对象或数据(例如,浏览器会把经常访问的网页缓存起来一 样),通过缓存来存取对象或数据要比在磁盘上存取快很多,前者是内存,后 者是磁盘。 Memcached 是一种纯内存缓存系统,把经常存取的对象或数据缓存在 Memcached 的内存中, 这些被缓存的数据被程序通过 API 的方式被存取, Memcached 里面的数据就像一张巨大的 HASH
表,数据以 Key-Value 对的方式存在。 Memcached 通过缓存经常被存取的对象或数据,从而减轻频繁读取数据库的压力,提高网站的响应速度 .
官方: http://Memcached.org/
由于Memcached 为纯内存缓存软件,一旦重启所有数据都会丢失,因此,新浪网基于Memcached 开发了一个开源项目 MemcacheDB。通过为 Memcached 增加 Berkeley DB 的持久化存储机制和异步主辅复制机制,使 Memcached 具备了事务恢复能力、持久化数据存储能力和分布式复制能力,但是最近几年逐渐被其他的持久化产品替代例如Redis。
2、Redis(Key-Value)
Redis 是一个Key-Value 型存储系统。但Redis支持的存储value 类型相对更多,包括 string(字符串)、list(链表)、set(集合)和 zset(有序集合)等。这些数据类型都支持 push/pop、add/remove 及取交集、并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,Redis 支持各种不同方式的排序。与 Memcached 一样,为了保证效率,Redis 的数据都是缓存在内存中。区别是 Redis 会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了 Master-Slave(主从)同步。
Redis 是一个高性能的 Key-Value 数据库。Redis 的出现,很大程度补偿了 Memcached 这类 Key-Value 存储的不足,在部分场合可以对关系数据库有很好的补充作用。它提供了 PythonRuby,Erlang,PHP 客户端,使用很方便。
官方:http://www.Redis.io/documentation
Redis 特点:
3、MongoDB(Document-Web)
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,类似 Json 的 Bjson 格式,因此可以存储比较复 杂的数据类型。MongoDB 最大的特点是他支持查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。它的特点是高性能、易部署、易使用,存储数据非常方便。
MongoDB 服务端可运行在 Linux、Windows 或 OS X 平台,支持32位和64位应用,默认端口为27017。推荐运行在64位平台。
McmgoDB 把数据存储在文件中(默认路径为:/data/db)。
相关推荐:《Linux视频教程》
以上就是linux下数据库有哪些的详细内容,更多请关注靠谱客其它相关文章!
最后
以上就是开放心情为你收集整理的linux下数据库有哪些的全部内容,希望文章能够帮你解决linux下数据库有哪些所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复