05-26 数据库 Redis Redis是开源的key-value存储系统,属于NoSQL数据库。NoSQL泛指非关系型数据库,以简单key-value模式存储,不依赖业务逻辑,具有高扩展性和高性能,但不遵循SQL标准、不支持ACID。适用场景包括高并发读写、海量数据读写、高可扩展性,不适用于需要事务支持和复杂结构化查询的场景。 常见的NoSQL数据库包括Memcache(早期、内存中、不持久化、简单key-value)、Redis(覆盖Memcache功能、支持持久化、多种数据结构)、MongoDB(文档型数据库、支持JSON查询)。 数据库分为行式数据库(整行存储,适合查单条记录)和列式数据库(按列存储,适合统计分析),常见的列式数据库有Hbase和Cassandra。 Redis支持多种数据类型:string(字符串)、list(链表)、set(集合)、zset(有序集合)、hash(哈希)。数据都在内存中,支持持久化和主从同步,采用单线程+多路IO复用技术。安装方式包括下载编译、安装gcc环境、make编译安装,默认16个数据库,可通过select命令切换。常用key操作包括keys、exists、type、del、expire、ttl、dbsize等命令。 6 0 0
04-03 数据库 MongoDB MongoDB是开源、高性能、无模式的文档型NoSQL数据库,采用BSON(Binary-JSON)格式存储数据,适用于应对"三高"需求(高并发读写、海量数据存储、高可扩展性和高可用性)。应用场景包括不需要事务及复杂join、快速迭代开发、2000-3000以上读写QPS、TB/PB级数据存储、快速水平扩展、99.999%高可用、地理位置和文本查询等。 MongoDB体系结构对应关系型数据库的概念为:database(数据库)、collection(集合/表)、document(文档/行)、field(字段/列)。数据类型丰富,支持字符串、对象ID、布尔值、数组、浮点数、null、正则表达式等。特点包括高性能、高可用性(副本集)、高扩展性(分片)、丰富查询支持、无模式和灵活文档模型。 单机部署支持Windows和Linux系统,Windows下通过 mongod --dbpath 或配置文件启动,默认端口27017;Linux系统需解压安装包、创建数据和日志目录、配置mongod.conf文件后启动。可通过mongo命令进行Shell连接操作。 8 0 0
04-03 数据库 MySQL基础知识 MySQL基础知识主要包含数据库的基本操作和约束管理。DDL(数据定义语言)用于数据库和表结构的操作,包括创建、查看、修改和删除数据库及表。DML(数据操作语言)用于管理表中数据记录,包括insert插入数据、update更新数据和delete删除数据。约束保证数据的完整性和有效性,主要类型有:主键约束、自增长约束、非空约束、唯一性约束、默认约束、零填充约束和外键约束。这些操作构成了MySQL数据库管理和数据维护的基础。 8 0 0
04-03 数据库 MySQL高级篇 MySQL是一个开源的关系型数据库管理系统,采用标准SQL语言,支持大型数据库和多语言。MySQL逻辑架构包含连接层、服务层、引擎层和存储层。 安装方式包括Linux环境安装,可通过Docker容器快速部署。MySQL安装后首要任务是修改字符集为utf8,配置文件位于/etc/my.cnf。重要配置包括二进制日志(log-bin)用于主从复制、错误日志(log-error)记录严重错误、慢查询日志(slow_query_log)记录查询SQL语句。数据文件包含frm表结构文件、myd数据文件和myi索引文件,用于存储表结构和数据。 5 0 0