数据库
2024路在何方
某行业全球top1企业的前端主管
展开
-
【数据库】1.mysql相关知识(一)
1. 常用数据库及基本知识 一般我们需要学习的常用数据库有三种:mysql、mongodb和redis mysql:关系型数据库,每秒并发1.2k左右 mongodb:非关系型数据库(也就是文档型数据库,类似json,{}),每秒并发大概1.6W redis:键值对数据库,每秒读的次数是11W,写的速度是8.1W 需要注意的是: 性能高低排行:redis > mongodb >...原创 2019-09-21 21:40:28 · 2604 阅读 · 0 评论 -
【数据库】2.redis相关知识_备份与恢复、安全、使用(五)
Redis的备份与恢复 Redis是内存数据库,数据存在内存中的,当关机的时候,会自动将数据保存到备份文件dump.rdb中。Redis数据库的备份与恢复,能解决这个问题。 1. 备份 语法:SAVE 127.0.0.1:6379> SAVE OK 该命令将在 redis 安装目录中创建备份文件——dump.rdb文件 2. 恢复 将备份文件(dump.rdb)移动到re...原创 2019-09-22 14:45:08 · 344 阅读 · 0 评论 -
【数据库】2.redis相关知识_事务(四)
Redis事务 Redis事务可以一次执行多个命令 多个命令可以在执行EXEC命令之前放入缓存队列 收到EXEC命令后会将缓存队列执行 在执行事务的过程中,新提交的并不能被插入到事务执行序列中 DISCARD可以取消事务,放弃执行事务块内的所有命令 Redis事务不是原子性的:因为单个Redis命令的执行是原子性的,但由于Redis没有在事务上增加任何维持原子性的机制,所以Redis事务不是...原创 2019-09-22 13:46:17 · 281 阅读 · 0 评论 -
【数据库】2.redis相关知识_发布订阅(三)
Redis发布订阅 Redis发布订阅是一种消息通信模式:发送者发送消息,订阅者接收消息,客户端可以订阅任意数量的频道。 命令行中使用Redis的发布订阅 在客户端1订阅: SUBSCRIBE channel_a //订阅频道a 在客户端2发布: PUBLISH channel_a hello //向频道a发布内容hello 这时候会在客户端1收到客户端2发布的hello字...原创 2019-09-22 13:27:24 · 243 阅读 · 0 评论 -
【数据库】2.redis相关知识(二)
redis在node中的使用,语法很简单,直接看下面代码 //首先要安装nodejs的redis客户端 //npm i redis let redis = require("redis"); let client = redis.createClient(6379,'127.0.0.1');//6379是redis默认的端口号 //监听错误 client.on("error",(err)=&...原创 2019-09-22 12:28:01 · 316 阅读 · 0 评论 -
【数据库】2.redis相关知识(一)
1.Redis简介 Redis是完全开源免费的,遵守RSD协议,是一个高性能的key-value数据库 2.Redis优势 性能极高- Redis能读的速度是11W次/秒,写的速度是8.1W次/秒 丰富的数据类型 Redis支持二进制的字符串、列表、嘻哈值、集合和有序集合等数据类型操作。 原子性 Redis的所有操作都是原子性的,也就是要么成功执行,要么失败完全不执行 单个...原创 2019-09-22 11:37:27 · 363 阅读 · 0 评论 -
【数据库】1.mysql相关知识_在node中的运用(九)
本次代码就讲事务的应用,主要就是看下怎么用,所以代码没有精简。 let mysql = require('mysql'); let connection = mysql.createConnection({ host:'localhost', user:'root', password:'123456', database:'cms' }) connection...原创 2019-09-21 22:08:10 · 207 阅读 · 0 评论 -
【数据库】1.mysql相关知识_在node中的运用(八)
什么是连接池? - 我们的服务器有 - 应用服务器(apache、tomcat、node等) - 数据库服务器(mysql) - 应用服务器会与数据库服务器建立连接并获取数据 应用服务器与数据库服务器数据交互的模式: - 模式一:(不建议使用) - 建立连接,获取...原创 2019-09-21 22:05:36 · 222 阅读 · 0 评论 -
【数据库】1.mysql相关知识_在node中的运用(七)
没多少东西,所以笔记直接可以看代码了 let mysql = require('mysql'); let Promise = require('bluebird'); //创建数据库连接,一般不这么做,而是会用连接池来处理,可以看2.js文件 let connection = mysql.createConnection({ host:'localhost', user:'ro...原创 2019-09-21 22:01:13 · 243 阅读 · 0 评论 -
【数据库】1.mysql相关知识(六)
数据库设计 1. 软件项目开发周期中的数据库设计 需求分析阶段:分析客户的业务和数据处理需求 概要设计阶段:设计数据库的E-R模型图,确认需求的正确和完整性 详细设计阶段:应用三大范式审核数据库 代码编写阶段:物理实现数据库,编码实现应用 软件测试阶段 安装部署 2. 设计数据库的步骤 2.1 收集信息 与相关人员进行交流、访谈充分了解用户需求,理解数据库需要完成的任务 2.2 标示实体(...原创 2019-09-21 21:58:06 · 351 阅读 · 0 评论 -
【数据库】1.mysql相关知识(五)
索引 索引可以提高数据库的查询速度 1. 添加索引 语法1:ALTER TABLE 表名 ADD index(列名) 含义:给某表的某列添加索引 语法2:CREATE INDEX 索引名 ON 表名(列名) 含义:给某表的某列添加索引,并取索引名 举例: ALTER TABLE user ADD index(user_name); 2. 查看索引 语法:show i...原创 2019-09-21 21:55:34 · 235 阅读 · 0 评论 -
【数据库】1.mysql相关知识(四)
1. 存储过程(用的比较少) 大多数SQL语句都是针对一个或多个表的单挑语句。但是并不是所有的操作都是可以用一条语句来完成的,经常有一些操作是需要多条语句配合才能完成。我们引入的存储过程是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过制定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。 1.1 语法 IN 输入参数 OUT 输出参数 INOUT 可输入可...原创 2019-09-21 21:54:19 · 235 阅读 · 0 评论 -
【数据库】1.mysql相关知识(三)
4. 表连接 4.1 连接类型 INNER JOIN 内连接 LEFT JOIN 左外连接 RIGHT JOIN 右外连接 FULL OUTR JOIN 全连接这个在mysql中是没有的 ON 连接条件 4.1.1 INNER JOIN 内连接 什么叫做内连接?看如下步骤 假设有两张表,数字为id A表 B表 1 2 ...原创 2019-09-21 21:52:24 · 253 阅读 · 0 评论 -
【数据库】1.mysql相关知识(二)
1. 什么聚合函数 对一组值进行计算,并返回计算后的值,一般用来统计数据 1.1 SUM 累加所有行的值 SELECT SUM(age) AS '总年龄' FROM studb.student WHERE city='上海'; //返回结果 总年龄 70 1.2 AVG 计算所有行的平均值 SELECT AVG(age) AS '平均年龄' F...原创 2019-09-21 21:41:35 · 281 阅读 · 0 评论 -
【数据库】3.mongodb基础知识(一)
1. 什么是MongoDB MongoDB是为了解决大量数据并发和搜索的问题。 MongoDB是一个基于分布式文件存储的开源数据库系统 MongoDB将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB文档类似于JSON对象。字段值可以包含其他文档,数组及文档数组。 1.1 什么是分布式? 2. MongoDB的安装 略 3. MongoDB启动与连接...原创 2019-09-23 22:35:43 · 537 阅读 · 0 评论