前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据库总结

数据库总结

原创
作者头像
用户10048459
修改2022-10-12 10:40:27
7610
修改2022-10-12 10:40:27
举报
文章被收录于专栏:执笔绘倾城执笔绘倾城

常见的数据库

常见的关系型数据库有mysql 、SQL Server、Oracle、Sybase、DB2等。关系型数据库是目前最受欢迎的数据库管理系统,技术比较成熟。

1、MySQL

MySQL是目前最受欢迎开源的SQL数据库管理系统,与其他的大型数据库Oracle、DB2、SQL Server等相比,MySQL虽然有它的不足之处,但丝毫也没有减少它受欢迎的程度。对于个人或中小型企业来说,MySQL的功能已经够用了, MySQ L又是开源软件,因此没有必要花大精力和大价钱去使用大型付费数据库管理系统了。

优点:

1、MySQL是开源免费的。

2、MySQL服务器是可靠的、易于使用的、快速的。

3、MySQL服务器工作在客户/服务器或嵌入系统中。

4、MySQL软件很多。

5、MySQL是一个关系数据库管理系统。

缺点:

  1. MySQL 最大的缺点是其安全系统,主要是复杂而非标准,只有调用 mysqladmin 来重读用户权限才会发生改变。
  2. MySQL 不允许调试存储过程,开发和维护存储过程很难。
  3. MySQL 不支持热备份。
  4. MySQL 的价格随平台和安装方式变化。

Redis的应用场景有哪些?

Redis 的应用场景包括:缓存系统(“热点”数据:高频读、低频写)、计数器、消息队列系统、排行榜、社交网络和实时系统。

Redis简介

Redis 是一个开源的、使用 C 语言编写的 NoSQL 数据库。

Redis 基于内存运行并支持持久化,采用key-value(键值对)的存储形式,是目前分布式架构中不可或缺的一环。

Redis的单线程模式

  1. Redis服务器程序是单进程模型,也就是在一台服务器上可以同时启动多个Redis进程,Redis的实际处理速度则是完全依靠于主进程的执行效率。
  2. 若在服务器上只运行一个Redis进程,当多个客户端同时访问时,服务器的处理能力是会有一定程度的下降
  3. 若在同一台服务器上开启多个Redis进程,Redis在提高并发处理能力的同时会给服务器的CPU造成很大压力。
  4. 在实际生产环境中,需要根据实际的需求来决定开启多少个Redis进程。若对高并发要求更高一些,可能会考虑在同一台服务器上开启多个进程。若 CPU 资源比较紧张,采用单进程即可。

Redis的优点

  1. 具有极高的数据读写速度:数据读取的速度最高可达到 110000 次/s,数据写入速度最高可达到 81000 次/s。
  2. 支持丰富的数据类型:支持 key-value、Strings、Lists、Hashes、Sets 及 Ordered Sets 等数据类型操作。
  3. string :字符串(可以为整型、浮点型和字符串,通称为元素)
  4. list :列表(实现队列,元素不唯一,先入先出原则)
  5. set :集合(各不相同的元素)
  6. hash :hash散列值(hash的key必须是唯一的)
  7. set /ordered set :集合/有序集合
  8. 支持数据的持久化:可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  9. 原子性:Redis 所有操作都是原子性的。
  10. 支持数据备份:即 master-salve 模式的数据备份。
  11. Redis作为基于内存运行的数据库,缓存是其最常应用的场景之一。除此之外,Redis常见应用场景还包括获取最新N个数据的操作、排行榜类应用、计数器应用、存储关系、实时分析系统、日志记录。

SQL(关系型)和noSQL(非关系型)的区别?

首先了解一下 什么是关系型数据库?

关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组

织。

优点:

1、易于维护:都是使用表结构,格式一致;

2、使用方便:SQL语言通用,可用于复杂查询;

3、复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。

缺点:

1、读写性能比较差,尤其是海量数据的高效率读写;

2、固定的表结构,灵活度稍欠;

3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。

非关系型数据库意为不仅仅是 SQL。通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定,常用于存储非结构化的数据。应该是一种数据结构化存储方法的集合,可以是文档或者键值对等

优点:

1、格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。

2、速度快:nosql可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘;

3、高扩展性;

4、成本低:nosql数据库部署简单,基本都是开源软件。

缺点:

1、不提供sql支持,学习和使用成本较高;

2、无事务处理;

3、数据结构相对复杂,复杂查询方面稍欠。

非关系型数据库的分类和比较:

1、文档型

2、key-value型

3、列式数据库

4、图形数据库

为什么要有数据库?

  1. 数据冗余和不一致性
  2. 大数据访问困难
  3. 数据孤立
  4. 数据完整性和原子性
  5. 并发访问异常
  6. 安全性问题

什么是数据库?(可以理解为一个操作系统)

数据:描述事物的符号记录,可以是数字,也可以是文字、图形、图像、声音、语言等,数据有多种形式,它们都可以经过数字化后存入计算机。

数据库:存储数据的仓库,是长期存放在计算机内、有组织、可共享的大量数据的集合。

数据库中的数据按照一定数据模型组织、描述和存储,具有较小的冗余度,较高的独立性和易扩展性,并为各种用户共享,即数据库有永久存储、有知识和可共享三个基本特点。

数据库服务器的基本概念

DBMS 数据库管理系统(能够操作和管理数据库的大型软件)

数据库基础语句

数据库密码修改

数据库的主从原理

数据库主从不同步的原因

MYSQL一主多从,主库宕机,如何合理切换到从库,其他从库如何处理?

单台Mysql达到性能瓶颈时,如何击碎性能瓶颈?

Mysql什么时候创建索引?

误操作drop语句导致数据库数据损坏,请给出恢复的实际大体步骤

如何保证Redis能永久保存数据?

如何利用Redis对Mysql进行性能优化?

使用Redis做MySQL的缓存,当网站的处理和访问量非常大的时候,我们的数据库的压力就变大了,数据库的连接池,数据库同时处理数据的能力就会受到很大的挑战,一旦数据库承受了其最大承受能力,网站的数据处理效率就会大打折扣。此时就要使用高并发处理、负载均衡和分布式数据库,而这些技术既花费人力,又花费资金。

了解非关系型数据库吗,和MySQL有什么区别

简述MySQL事务之间的隔离

事务的四大特征和数据库的回滚

数据库的主键、外键

数据库引擎

数据库的锁

innodb引擎是插入快还是读取快

在数据库中查询语句速度很慢,如何优化?

数据库优化

数据库与数据库实例

mysql如何减少主从复制延迟

mysql一主多从,主库宕机,如何合理切换到从库,其他从库如何处理?

解释一下数据库的读写分离

误操作drop语句导致数据库数据损坏,请给出恢复的实际大体步骤

MySQL数据库的备份方式

MySQL的历史了解吗,它和Mariadb有什么关系

接触过redis集群吗,说一下redis集群的三种实现方式,原理是什么

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 常见的数据库
  • Redis的应用场景有哪些?
  • SQL(关系型)和noSQL(非关系型)的区别?
    • 为什么要有数据库?
      • 什么是数据库?(可以理解为一个操作系统)
        • 数据库服务器的基本概念
          • 数据库基础语句
            • 数据库密码修改
              • 数据库的主从原理
                • 数据库主从不同步的原因
                  • MYSQL一主多从,主库宕机,如何合理切换到从库,其他从库如何处理?
                    • 单台Mysql达到性能瓶颈时,如何击碎性能瓶颈?
                      • Mysql什么时候创建索引?
                        • 误操作drop语句导致数据库数据损坏,请给出恢复的实际大体步骤
                          • 如何保证Redis能永久保存数据?
                            • 如何利用Redis对Mysql进行性能优化?
                              • 了解非关系型数据库吗,和MySQL有什么区别
                                • 简述MySQL事务之间的隔离
                                  • 事务的四大特征和数据库的回滚
                                    • 数据库的主键、外键
                                      • 数据库引擎
                                        • 数据库的锁
                                          • innodb引擎是插入快还是读取快
                                            • 在数据库中查询语句速度很慢,如何优化?
                                              • 数据库优化
                                                • 数据库与数据库实例
                                                  • mysql如何减少主从复制延迟
                                                    • mysql一主多从,主库宕机,如何合理切换到从库,其他从库如何处理?
                                                      • 解释一下数据库的读写分离
                                                        • 误操作drop语句导致数据库数据损坏,请给出恢复的实际大体步骤
                                                          • MySQL数据库的备份方式
                                                            • MySQL的历史了解吗,它和Mariadb有什么关系
                                                              • 接触过redis集群吗,说一下redis集群的三种实现方式,原理是什么
                                                              相关产品与服务
                                                              云数据库 Redis
                                                              腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
                                                              领券
                                                              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档