数据库
文章平均质量分 97
__tian__
我走过的路,每一步都算数
展开
-
redis学习记录(6)高效使用内存
内存回收策略一、删除到达过期时间的键对象1、删除过期键对象 Redis所有的键都可以设置过期属性, 内部保存在过期字典中。 由于进程内保存大量的键, 维护每个键精准的过期删除机制会导致消耗大量的CPU, 对于单线程的Redis来说成本过高, 因此Redis采用惰性删除和定时任务删除机制实现过期键的内存回收。①惰性删除 惰性删除用于当客户端读取带有超...原创 2019-12-24 21:53:56 · 252 阅读 · 0 评论 -
redis学习记录(5)redis缓存
缓存的使用与设计加入缓存的流程一、缓存的收益与成本1、收益加速读写 因为缓存通常都是全内存的(例如Redis、 Memcache) , 而存储层通常读写性能不够强悍(例如MySQL) , 通过缓存的使用可以有效地加速读写, 优化用户体验。 降低后端负载 帮助后端减少访问量和复杂计算(例如很复杂的SQL语句) , 在很大程度降低了后端的负载。...原创 2019-12-11 18:17:36 · 329 阅读 · 0 评论 -
redis学习记录(4)redis集群
一、Redis Cluster1、集群(1)单个redis存在不稳定性。当redis服务宕机了,就没有可用的服务了。(2)单个redis的读写能力是有限的。2、数据分布 分布式数据库首先要解决把整个数据集按照分区规则映射到多个节点的问题, 即把数据集划分到多个节点上, 每个节点负责整体数据的一个子集。常用的分区方式:顺序分区和哈希分区...原创 2019-12-07 18:18:04 · 267 阅读 · 0 评论 -
redis学习记录(3)redis高可用理解
一、主从复制存在的问题 一旦主节点出现故障, 需要手动将一个从节点晋升为主节点, 同时需要修改应用方的主节点地址, 还需要命令其他从节点去复制新的主节点, 整个过程都需要人工干预。二、高可用 redis sentinel1、概述: Redis Sentinel是一个分布式架构, 其中包含若干个Sentinel节点和Redis数据节点, 每个Senti...原创 2019-12-06 19:09:51 · 214 阅读 · 0 评论 -
redis学习记录(2)持久化&redis复制
目录一、redis持久化(1)AOF1、什么是AOF2、三种策略AOF重写?AOF重写配置:(2)RDB1、什么是RDB?2、触发机制(3)RDB和AOF比较二、redis复制的原理与优化1、什么是主从配置2、复制的配置3、全量复制和部分复制4、故障处理5、常见问题一、redis持久化持久化的作用:将数据从内存异步保存...原创 2019-12-05 20:39:51 · 226 阅读 · 0 评论 -
redis学习记录(1)
一、redis特性1、速度快 10w QPS数据存放在内存,C语言实现,单线程2、持久化Redis所有数据保存在内存中,但是对数据的更新将异步地保存在磁盘上。3、多种数据结构列表哈希集合有序集合字符串位图 :BitMapsHyperLogLog:超小内存唯一值计数 12K 计算用户唯一值GEO:地理信息定位4、支持多种编辑语言Java...原创 2019-12-03 20:09:03 · 388 阅读 · 0 评论 -
MySQL(九)SQL优化
目录一、索引对DML语句效率的影响1、实验准备①创建数据库②创建用于向表中插入数据的存储过程proc1()③调用存储过程proc1,设置插入1000000条测试记录④查看表t中的记录数和前5条数据2、explain语句3、百万记录取一条①查询id=1500的记录,使用时间为1.23s②查看执行select语句的相关信息③为id字段创建索引,并查看...原创 2019-09-21 16:39:43 · 382 阅读 · 0 评论 -
MySQL(八)存储引擎
一、存储引擎概述 存储引擎是MySQL中特有的术语,它主要是指在MySQL中,用户可以根据应用的需求,选择如何存储、更新、查询和索引数据,是否使用事务等。 在MySQL中,支持多种不同类型的存储引擎,从而满足用户使用各种方式存储数据的需求。二、存储引擎类型查看引擎类型:show engines;MySQL数据库支持9中存储引擎。常用引擎的特...原创 2019-09-20 12:07:15 · 319 阅读 · 0 评论 -
MySQL(七)事务控制与锁
目录一、事务概述二、事务隔离级别1、读未提交2、读已提交3、可重复读4、可串行化三、事务控制语句四、InnoDB的锁1、锁的粒度2、锁的种类一、事务概述事务是一组SQL语句的集合,这个集合是一个不可分割的整体。对于事务而言,一旦某条语句执行失败或者发生错误,哪个整个集合将会发生回滚,事务无法执行;只有集合中的所有语句都执行成功,事务才能顺利执行。...原创 2019-09-19 21:16:13 · 565 阅读 · 0 评论 -
MySQL(六)触发器
一、触发器概述在MySQL数据库中,触发器是与表有关的对象,根据MySQL数据库中特定的命令事件作为条件来触发特定操作。当满足触发器的触发条件时,数据库将会自动执行触发器中定义的语句集合。二、触发器类型根据触发时间不同:可以将触发器分为before类型和after类型。根据触发语句类型不同:可以将触发器分为insert类型、update类型和delete类型。因此,触发器可以...原创 2019-09-18 22:18:21 · 874 阅读 · 0 评论 -
MySQL(五)视图
目录一、视图概述二、视图的基本操作1、创建视图①在单个表上创建视图②在多个表上创建视图2、修改视图3、查看视图4、更新视图5、删除视图一、视图概述视图是数据库中的一个虚拟存在的表,是通过人为操作将数据库汇中的一个或多个数据表拼凑在一起所得的,视图甚至还可以通过对已经存在的视图重新定义而得到。 对于视图而言,它并不像其他表一样存在于数据库中,实际上...原创 2019-09-11 22:24:19 · 404 阅读 · 0 评论 -
MySQL(四)索引的设计与使用
目录一、索引概述二、索引类型三、索引设计原则四、创建索引1、在创建表时创建索引(1)创建普通索引(2)创建唯一索引(3)创建单列索引(4)创建多列索引(5)创建全文索引2、在已创建的表上创建索引(1)创建普通索引(2)创建唯一索引(4)创建多列索引(5)创建全文索引五、删除索引一、索引概述索引是一个常用的数据结构,又称为键。...原创 2019-09-11 17:54:41 · 582 阅读 · 0 评论 -
MySQL(三)常用函数
原创 2019-09-11 16:32:48 · 220 阅读 · 0 评论 -
python和MYSQL交互
PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。 import pymysql# 打开数据库连接db = pymysql.connect(host="localhost", user="root", password="***",database= "***")# 使用 cursor() 方法创建一个...原创 2018-11-01 16:05:41 · 539 阅读 · 0 评论 -
MySQL(十)安全管理
目录一、用户和权限管理1、用户验证的三个基本要素①查看MySQL用户②客户端主机2、创建用户3、设置用户密码4、重命名用户5、删除用户6、权限级别7、权限类型8、授权9、查看用户权限10、撤销权限11、授权表二、制定数据安全策略1、数据库级别安全策略2、操作系统级别安全策略3、网络级安全策略4、业务级安全策略...原创 2018-11-29 09:28:13 · 829 阅读 · 0 评论 -
MySQL基本操作
记录在SQL SERVER数据库学习中没有接触过的SQL语句。1、数据库相关操作(1)创建数据库create database database_name;(2)查看数据库show databases;(3)选择数据库use database_name;(4)删除数据库drop database database_name;2、表的操作(1)创建表c...原创 2019-01-05 15:39:43 · 519 阅读 · 0 评论 -
数据库课程设计
图书管理系统1.概述项目背景2.需求分析2.1 系统需求2.2 数据需求2.3 数据字典2.3.1 书籍信息表2.3.2 库存信息表2.3.4 顾客信息表2.3.5 管理员信息表2.3.6 图书类型信息表2.3.7 订单详细信息表3.数据库设计3.1 ...原创 2019-01-06 10:00:32 · 80071 阅读 · 18 评论 -
Django执行原生的SQL语句
extra Entry.objects.extra(select={'new_id': "select col from sometable where othercol > %s"}, select_params=(1,)) Entry.objects.extr...原创 2019-03-13 11:55:59 · 1061 阅读 · 0 评论 -
Windows下安装redis与Python中的使用
近期学习到用redis做Django的缓存,在虚拟机上又出现一堆问题,先暂且在Windows上安装redis。redis是一个软件,帮助开发者对一台机器的内存进行操作。1,redis 64位下载地址:https://github.com/ServiceStack/redis-windows,本人使用的是redis-64.3.0.503版本。2.2、2、修改redis.wind...原创 2019-05-27 11:06:22 · 635 阅读 · 0 评论 -
redis使用
目录简介配置文件数据类型字符串哈希列表集合有序集合简介Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。Redis 与其他 key - value 缓存产品有以下三个特点:-Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。-Redis不仅仅支持简单的key-value...原创 2019-07-12 21:18:29 · 354 阅读 · 0 评论 -
MySql数据库引擎
MySql常见的数据库引擎有:MYISAMInnoDBMemoryInnoDB存储引擎:所有的表都保存在同一个数据文件中(也可能是多个文件,或者是独立的表空间文件),InnoDB表的大小只受限于操作系统文件的大小,一般为2GB。 需要更多的内存和存储,它会在主内存中建立其专用的缓冲池用于高速缓冲数据和索引。 提供事务支持事务,外部键等高级数据库功能。 具有事务(commi...原创 2019-08-22 20:36:34 · 212 阅读 · 0 评论 -
memcached
一、下载和安装1、下载和安装Memcached服务端1.1、下载Windows无官方版本,网上有非官方的版本,请自行百度,这里推荐一个下载地址http://static.runoob.com/download/memcached-win64-1.4.4-14.zip1.2、安装1.2.1、解压下载的压缩包1.2.2、命令行模式(管理员)进入到memcache目录下:memcach...原创 2019-08-27 12:28:38 · 243 阅读 · 0 评论 -
MySQL(一)基本使用
原创 2019-09-10 21:44:28 · 264 阅读 · 0 评论 -
MySQL(二)基本数据类型
原创 2019-09-11 15:41:50 · 251 阅读 · 0 评论 -
SQL语句
1、建表及插入数据Student表:create table Student(Sno char(9) primary key, Sname char(20) unique, Ssex char(2),Ssage smallint , Sdept char(20)); Course表:create table Course (Cno char(4) primary key , ...原创 2018-10-25 08:52:28 · 1071 阅读 · 0 评论