Linux下常用数据库介绍

article/2025/11/4 8:13:02

一、数据库介绍

1.什么是数据库;

       数据库就是一个存放计算机数据的仓库,这个仓库是按照一定的数据结构(数据结构是指数据的组
织形式或数据之间的联系)来对数据进行组织和存储的,可以通过数据库提供的多种方法来管理其
中的数据。

2.数据库的种类

关系型数据库非关系型数据库

3.关系型数据库

       关系型数据库模型是把复杂的数据结构归结为简单的二元关系(即二维表格形式)。在关系型数据 库中,对数据的操作几乎全部建立在一个或多个关系表格上,通过这些关联的表格分类、合并、连接或选取等运算来实现数据的管理。 关系型数据可以很好地存储一些关系模型的数据,比如一个老师对应多个学生的数据( 一对 ),一本书对应多个作者( 一对多 ),一本书对应一个出版日期( 一对一 ) 。

常见关系型数据库;

1 Oracle 数据库

         Oracle 前身叫 SDL,由 Larry Ellison 和另两个编程人员在1977创办,他们开发了自己的拳头产品,在市场上大量销售,1979年,Oracle 公司引入了第一个商用 SQL关系数据库管理系统。 Oracle公司是最早开发关系数据库的厂商之一,其产品支持最广泛的操作系统平台。目前 Oracle 关系数据库产品的市场占有率数一数二。

        Oracle (甲骨文)公司是目前全球最大的数据库软件公司,也是近年业务增长极为迅速的软件提供与服务商。

主要应用范围:传统大企业,大公司,政府,金融,证券等等。

 

2MySQL 数据库

           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 服务器平台的企业。

 

4、非关系型数据库

           非关系型数据库也被称为 NoSQL 数据库, NoSQL 的本意是 “Not Only SQL” ,指的是非关系型数据库,而不是 “NO SQL” 的意思, NoSQL 的产生并不是要彻底否定关系型数据库,而是作为数 据库的一个有效补充。 NoSQL 数据库在特定的场景下可以发挥难以想象的高效率和高性能。特别 是对于规模日益扩大的海量数据,超大规模和高并发的微博、微信、 SNS 类型的纯动态网站已经 显得力不从心,暴露了很多难以克服的问题,例如:传统的关系型数据库 IO 瓶颈、性能瓶颈都难 以有效突破,于是开始出现了大批针对特定场景,以高性能和使用便利为目的功能特异化的数据库 产品。 NoSQL (非关系型)类的数据库就是这样的情景中诞生并得到了非常迅速的发展。
            NoSQL 是非关系型数据库的广义定义。它打破了长久以来关系型数据库与 ACID 理论大一统的局 面。 NoSQL 数据存储不需要固定的表结构,通常也不存在连续操作。

常用非关系型数据库管理系统

1、MemcachedKey-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

2RedisKey-Value

Redis 是一个Key-Value 型存储系统。但Redis支持的存储value 类型相对更多,包括 string(字符串)、list(链表)、set(集合)和 zset(有序集合)等。这些数据类型都支持 push/popadd/remove 及取交集、并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,Redis 支持各种不同方式的排序。与 Memcached 一样,为了保证效率,Redis 的数据都是缓存在内存中。区别是 Redis 会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了 Master-Slave(主从)同步。

Redis 是一个高性能的 Key-Value 数据库。Redis 的出现,很大程度补偿了 Memcached 这类 Key-Value 存储的不足,在部分场合可以对关系数据库有很好的补充作用。它提供了 PythonRubyErlangPHP 客户端,使用很方便。

官方:http://www.Redis.io/documentation

       Redis 特点:

3 MongoDB Document-Web

MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,类似 Json Bjson 格式,因此可以存储比较复 杂的数据类型。MongoDB 最大的特点是他支持查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。它的特点是高性能、易部署、易使用,存储数据非常方便。

MongoDB 服务端可运行在 LinuxWindows OS X 平台,支持32位和64位应用,默认端口为27017。推荐运行在64位平台。

McmgoDB 把数据存储在文件中(默认路径为:/data/db)。


http://chatgpt.dhexx.cn/article/AFn2UAhC.shtml

相关文章

Linux下访问数据库

Linux下访问数据库 声明:本文只简单描述Linux系统下访问mysql数据库的步骤,关于连接上数据库之后的简单的对于数据库的增删改查等操作只是稍微提及,关于增删改查的语句书写,本文不再讲述。 一般来说,访问数据库有如下几…

Linux_MySQL数据库基础

文章目录 1.基本使用连接MySQL服务器创建与删除数据库创建删除数据库表查看数据库表结构,向数据库表中插入,查询数据2. MySQL架构SQL分类存储引擎 注意一般情况下: MySQL服务并不暴露在公网上。MySQL一般会更改服务端口。 MySQL服务&#x…

linux:数据库连接

MySql数据库 视图:虚拟的表 索引:目录 事务:操作 安装数据库:sudo apt install mysql-server //mysql8.0 安装C/C开发库:sudo apt install libmysqlclient-dev 数据库:1.mysql 文件本身 2…

在linux上安装数据库服务

一、通过本地包安装mysql 1.先通过软件将包从windows传到linux上,四个rpm包。 2.检查Linux上是否卸载了数据库自带的包,会导致安装不上。如果有,卸载掉。 rpm -qa | grep mysql rpm -qa | grep mariadb 卸载命令 rpm -e -nodeps 自带的包…

Linux环境下的数据库(基础篇上)

数据库 一、Linux环境下数据库的安装二、数据库的基础操作三、数据库中表的操作 一、Linux环境下数据库的安装 需要在 root 用户权限下进行数据库的一系列安装操作 安装 mariadb 服务: # yum install -y mariadb-server安装 mariadb 命令行客户端: …

Linux之数据库操作

一、mysql基本操作 1,连接数据库 mysql -u root -p -h 127.0.0.1 mysql -u root -p -h 192.168.12.56 2,授予远程连接的权限 grant all privileges on *.* to root"%" identified by "nihao123" 3,修改root用户的密码 先…

Linux和数据库

Linux命令:软件测试第一个任务,一般都需要进行环境搭建,一部分环境搭建内容是在服务器上实现的,跟服务器交互(没有图形化页面),需要使用Linux命令 数据库:所有的软件在使用过程中所产生的数据,最终都要存在数据库当中,而测试工作往往会需要去校验数据的正确与否,因此需要学习数…

Linux服务器操作数据库

一、进入mysql数据库 1、使用命令连接进入数据库 mysql -u root -p参数解析: root-是连接数据库的用户 连接成功的截图如下 2、可以查看当前用户有哪些数据库权限 show databases; 3、进入到指定的数据库 use test;参数解析:test-是数据库名称 4、…

SolrCloud介绍和应用

SolrCloud是基于Solr和Zookeeper的分布式搜索方案,是正在开发中的Solr4.0(目前还是ALPHA版本,基于lucene4.0)的核心组件之一,它的主要思想是使用Zookeeper作为集群的配置信息中心。它有几个特色功能:1)集中…

Solr简介Solr使用及SolrCloud搭建

一、Solr简介 1、Solr是什么? 1.1就是一个war项目 2、自己的项目如何Solr进行交互? 2.1特定的API叫做SolrJ(底层其实就是HttpClient) 3、具备数据持久化功能 3.1Solr中会存储需要进行搜索的数据 3.2把所有的数据都初始化到Solr中. 4、Solr作用&#…

solrcloud导入mysql数据配置

最简单的solr7集群搭建(不需要tomcat) 添加jar (三个节点都要) 复制solr解压目录中dist下的solr-dataimporthandler-7.5.0.jar solr-dataimporthandler-extras-7.5.0.jar 复制到WEB-INF/lib下 添加mysql-connection jar包到WEB-INF/lib下,我这里是mysq…

Solr+Zookeeper 搭建搜索集群SolrCloud

目录 一、简介 1、SolrCloud是个什么玩意? 2、Solr是个什么玩意? 3、zookeeper是个什么玩意? 4、实现负载均衡的方式: (Nginx、Redis槽、Zookeeper) 二、SolrCloud的结构 1、物理结构 2、逻辑结构 三、SolrCloud的搭建(3…

solrCloud分布式检索流程

好久没写solr的文章了,刚好需要在公司作个分享,先总结一些先。 引用请声明原文:http://blog.csdn.net/duck_genuine/article/details/17014991 solrCloud分布式检索主要流程如下: 搜索 video,“美女斗秀场” 取按…

solr全文检索技术学习(三)-搭建SolrCloud集群问题总结

什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud。当一个系统的索引数据量少的时候是不需要使用SolrCloud的,当索引量很大,搜索请…

对SolrCloud集群Collection进行手动二次Sharding

我们已经基于SolrCloud 4.3.1Tomcat 7搭建了搜索服务器集群,一个Collection对应3个节点上的3个分片(Shard),同时包含对应分片的副本(Replica),此时,该Collection一共有6000万左右Doc…

Solr SolrCloud相关概念

Solr支持服务器的分布式集群部署,即SolrCloud。在SolrCloud中,一个索引可以被分布到不同的服务器,即不同的node,所有的这些node组成一个collection,并且充分考虑了高可靠性和容错的设计。 SolrCloud使用zookeeper来管理…

SolrCloud概述

在Lucene/Solr的SVN trunk中的SolrCloud已经可用, 在即将发布的4.0版本中将正式包含. 目前SolrCloud已经成熟, 可以支持分布式索引和分布式搜索. 下面是我们一个项目采用新的SolrCloud的部署结构图: 看起来是否非常简单? 下面我们看看内部的一些实现细节. SolrCloud功能和架…

solr8.9部署solrcloud

安装solr tar xf solr-8.9.0.tgz cd solr-8.9.0 ./bin/install_solr_service.sh /root/solr-8.8.2.zip -d /data/solr -u solr -n # /root/solr-8.8.2.zip 指定tar包 # -d: 指定solr可写目录,solr数据文件、日志、pid文件、索引会写入到此目录下。默认/var/solr #…

搭建SolrCloud的详细步骤

###一、需求 SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud。 当一个系统的索引数据量少的时候是不需要使用SolrCloud的,当索引量很大,搜索请求并发很高&a…

SolrCloud Collection 创建

环境版本: CDH 5.12.0; Solr 4.10.3 CDH搭建SolrCloud集群十分方便,添加服务->solr->选择主机->next即可 在SolrCloud中,跨多个节点的索引分割称为集合(collection),见下图: [root@DXHY-YFEB-01 solr]# pwd /var/lib/solr [root@DXHY-YFEB-01 solr]# mv Invoi…