首页 > 数据库 >数据库的基本知识

数据库的基本知识

时间:2022-11-22 19:58:16浏览次数:68  
标签:存储 数据库 基本知识 kiki MySQL 集群 数据

目录

数据的演变史

存取数据的演变史

基于之前所学数据文件的保存,都只是存于我们本电脑上。如果不是在本机上存取数据的话,就需要借助于别的工具,对于基于文件来存取数据的效率问题就降低了许多。同时也会增加了数据的不安全性。

1.文本文件

​ 1.1 文件路径不固定:如:C:\a.txt D\bb.txt E:\ccc.txt

​ 1.2 数据格式不统一:如:kiki|123 kiki$123 kiki 123

2.软件开发目录规范

​ 规定了数据应该保存再db目录下>>>:路径偏向统一

​ eg:db/user.txt db/userinfo.txt db/kiki.json db/kiki

​ 数据还是没有得到统一

​ eg:文本 json格式 对象

3.数据库服务

​ 统一路径,统一操作方式,同时降低了学习成本,提高开发效率

数据库软件应用史

1.单机游戏

​ 优点:不用联网

​ 缺点:数据存储于各个计算机的本地,无法共享,如果本台计算机故障了,换一台计算机,你的账号密码、记录都没有了
image

2.网络游戏(联机游戏)

​ 数据存储于网络中,可以共享(数据库服务),登录账号密码就可访问我们能存储数据库的信息,实现了数据的兼容问题
image

  1. 集群

    ​ 集群一般由两个或两个以上的服务器组建而成,每个服务器被称为一个集群节点,集群节点之间可以相互通信。集群具有节点服务状态监控功能,同时还必须具有服务实体扩展功能,可以灵活地增加和剔除某个服务实体。当一个节点出现故障时,集群的另一个节点,可以自动接管故障节点的资源,从而保证服务持久、不间断地运行。

    ​ 一个集群系统是必须拥有共享的数据存储
    image

数据库服务集群目的是:提高数据的安全性

数据库

  1. 什么是数据库?

​ 数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管****理的大量数据的集合。数据库是存放数据的仓库。它的存储空间很大,可以存放百万条、千万条、上亿条数据。

​ 在数据库的发展史上,数据库先后经历了层次数据库、网状数据库和关系数据库等各个阶段的发展,数据库技术在各个方面的快速的发展。特别是关系型数据库已经成为目前数据库产品中最重要的一员,80年代以来, 几乎所有的数据库厂商新出的数据库产品都支持关系型数据库,即使一些非关系数据库产品也几乎都有支持关系数据库的接口。随着云计算的发展和大数据时代,引入了其他分布式技术,这类数据库一般称为NoSQL数据库。

简单总结:

​ 1. 1 数据库(DB,database)是按照数据结构来组织、存储和管理数据的“仓库”。

​ 1. 2 数据库是一定方式储存在一起、能为多个用户共享、统一管理的大数据集合

​ 1. 3 数据库可以通过一些指令对数据库数据进行增、删、改、查(Create,Retrive,Updata,Delete)等操作。

  1. 数据库的作用

    2.1、实现数据共享
    可以存取数据库中的数据,也可以通过接口连接数据库并共享数据

    2.2、减少数据的冗余度

    由于可以直接向数据库存拿以及共享数据,避免了用户各自建立应用文件,减少了大量重复数据,减少了数据冗余,维护了数据的一致性。

    2.3、保持了数据的独立性

    ​ 数据的独立性包括逻辑独立性(数据库中数据库的逻辑结构和应用程序相互独立)和物理独立性(数据物理结构的变化不影响数据的逻辑结构)。

    2.4、数据实现集中控制

    数据库可对数据进行集中控制和管理,并通过数据模型表示各种数据的组织以及数据间的联系。

    2.5、数据一致性和可维护性

    ​ 以确保数据的安全性和可靠性:主要包括:安全性控制、完整性控制、并发控制,使在同一时间周期内,允许对数据实现多路存取,又能防止用户之间的不正常交互作用。

    2.6、 故障恢复

    ​ 由数据库管理系统提供一套方法,可及时发现故障和修复故障,从而防止数据被破坏。数据库系统能尽快恢复数据库系统运行时出现的故障,可能是物理上或是逻辑上的错误。比如对系统的误操作造成的数据错误等。

数据库基本概念

  1. 什么是数据(data)?

    事物的状态

  2. 什么是记录?

    一组数据构成一条记录,相当于文件中的一行内容,例如:kimi,female,18

  3. 什么是表?

    简单说文件

  4. 什么是库(DataBase,简称DB)?

    简单说就是文件夹

  5. 什么是数据库管理系统(DataBase Management System 简称DBMS)?

    管理数据的套接字软件,CS架构

  6. 什么是数据库服务器?

    运行有DBMS服务端的计算机,该计算机对内存和硬盘要求都 相对较高

软件开发架构

  1. C/S 架构

    客户端与服务端

  2. B/S架构

    浏览器与服务端

数据库的本质

数据库本质其实就是一款CS架构的软件,意味着所有的程序员其实都有资格编写一款数据库软件。通过之前所学的TCP客户端和服务器,可以做基本的交流操作。

  1. 站在底层原理的角度

​ 数据库指的是操作数据的进程(一堆代码)

  1. 站在实际应用的角度

​ 数据库指的是可视化操作界面(一些应用软件)

​ 注意:不特殊说明,数据库指的是数据库软件

数据库的分类

  1. 关系型数据库(简称RDBMS:Relational Database Management System)

    具有固定的表结构,并且表与表之间可以通过外键建立关系

    ​ eg: id name pwd

    关系型数据库有:MySQL、MariaDB、Oracle、PostgreSQL、sqlserver、sqlite、db2、access等

    1. 1 MySQL

      主要用于大型门户,例如搜狗、新浪等,它主要的优势就是开放源代码、使用最广以及性价比高。 因为开放源代码这个数据库是免费的,他现在是甲骨文公司的产品。

    2. 1 Oracle

      这个数据库是收费的,虽然维护成本高但是安全性也最高。大型公司可能会使用,主要用于银行、铁路、飞机场等,该数据库功能强大,软件费用高,也是甲骨文公司的产品。

    3. 1 MariaDB

      SUN被甲骨文收购后,MySQL 的原创人员有拉出另外一个分支,命名MariaDB 。该数据库被维基百科,Facebook 甚至 Google 等技术巨头使用。 MariaDB 是一种可为 MySQL 提供插件替换功能的数据库服务器。开发人员的首要关注点是安全性,在每个版本发布时,开发人员还会合并所有 MySQL 的安全修补程序,并在需要时对其进行增强。(开源免费)

    4. 1 PostgreSQL

      开源免费,支持二次开发,兼容性极高。

    5. 1 sqlserver

      微软公司的产品,主要应用于大中型企业,如联想、方正等。

    6. 1 sqlite

      小型数据库,主要用于本地测试

  2. 非关系型数据库

    没有固定的表结构,数据存储采用K:V键值对的形式;数据之间无法建立数据库层面的关系。

    ​ eg:{'name':'kiki'} {'username':'kimi','pwd':123}

    非关系型数据库有:redis、mongoDB、memcache

    1. 1 redis 目前最火的缓存数据库 具有很多数据结构 功能强大(多用来作为缓存),虽然缓存数据库史基于内存做数据库存取,但是具有持久化功能,有日志记录,不易丢失

    2. 1 mongoDB

      文档型数据库,最像关系型数据库的非关系型数据库,用在大数据和爬虫(可用来作为后端数据库管理软件)

    3. 1 memcache

      已经被redis淘汰(多用来作为缓存)

    注意:数据库软件很多,但是操作方式几乎差不多,其中以MySQL最为典型。

标签:存储,数据库,基本知识,kiki,MySQL,集群,数据
From: https://www.cnblogs.com/zhanglanhua/p/16916245.html

相关文章

  • 数据库(部分讲解)
    存取数据的演变史文本文件文本文件有两个主要的缺点:​ 第一个就是不能保证多用户存取的文件路径一致​ 第二个就是不能保证多用户存取的数据格式一致软件开发目......
  • 数据库
    总结存取数据的演变史数据库软件应用史数据库的本质数据库的分类MySQL简介MySQL基本使用SQL与NoSQL数据库相关概念常见基本SQL语句存取数据的演变史1.文本......
  • 数据库与MySQL
    目录数据库一.初识数据库1.存取数据的演变史1).文本文件2.软件开发目录规范3.数据库服务(重点)2.数据库软件应用史3.数据库的本质4.数据库的分类1).关系型数据库2).非关系......
  • MySQL数据库
    ***>##MySQL数据存取方式的演变1.文本文件文件路径不固定:C:\aaa.txtD:\bbb.txtE:\ccc.txt数据格式不统一:jason|123 jason$123 jason1232.软件开发目录规范......
  • 数据库基础知识
    目录数据库软件一、存取数据的演变史二、数据库软件应用史三、数据库的本质四、数据库的分类五、MySQL简介MySQL的基本使用六、SQL与NoSQL七、数据库相关概念八、常见基本S......
  • 解决MDL锁导致无法操作数据库的问题
    背景信息MySQL5.5版本开始,引入了MDL锁,用于解决或者保证DDL操作与DML操作之间的一致性,但是在部分场景下会出现阻塞,例如执行DML操作时执行ALTER操作、存在长时间查询时执行......
  • 11月22日内容总结——存取数据的历史和数据库的介绍、MySQL介绍、下载和相关操作
    目录一、存取数据的演变史1、文本文件2、软件开发目录规范3、数据库服务(重点)1.数据库管理软件的由来①程序所有的组件就不可能运行在一台机器上②数据安全问题③并发总结......
  • redis 指定数据库并模糊匹配删除
    目录redis指定数据库并模糊匹配删除实例脚本实例redis指定数据库并模糊匹配删除实例//指定database为1,且key为cicd:v2:cp:metadataDataSecurity2开头的所有redis-cli......
  • MySQL数据库基础
    今日内容详细存储数据的演变史数据库软件应用史数据库的本质数据库的分类MySQL简介MySQL基本使用系统服务的制作密码相关操作SQL与NoSQL数据库重要概念基本SQL......
  • 使用JDBCTemplate时idea的字符集和数据库的字符集都是utf-8但是在数据中中文变为了?
     修改过程1:在jdbc的配置文件中连接的后面手动设置字符集结果:       ......