摘要:
前言 参考博客:https://www.zhangshengrong.com/p/zD1yQJwp1r/ 一个表和多个表进行关联,但具体随着业务的加深,表不断的增加,关联的数量不断的增加,怎么通过一开始通过表的设计后,不在后期在修改表,彻底的解决这个问题呢? django中的一个组件content- 阅读全文
摘要:
数据库范式 设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小。 范式简介 范式来自英文Normal form,简称NF。要想设计—个好的关系,必须使关系满足一定的约束条件,此约束已经形成了规范,分成几个等 阅读全文
摘要:
1 索引概念、索引模型 Q:你们每天这么大的数据量,都是保存在关系型数据库中吗? A:是的,我们线上使用的是MySQL数据库 Q:每天几百万数据,一个月就是几千万了,那你们有没有对于查询做一些优化呢? A:我们在数据库中创建了一些索引(我现在非常后悔我当时说了这句话) Q:那你能说说什么是索引吗? 阅读全文
摘要:
import pymysql#pip install pymysql db=pymysql.connect('localhost','root','123456','day040') cursor=db.cursor() #创建游标 book_list=["学python从开始到放弃|alex|人民大学出版社|50|2018-7-1", "学mysql从开始到放弃|egon|机械工业出版社|60| 阅读全文
摘要:
恢复逻辑备份 数据库表的导出和导入 备份/恢复案例 #数据库备份/恢复实验一:数据库损坏 备份: 1. # mysqldump -uroot -p123 --all-databases > /backup/`date +%F`_all.sql 2. # mysql -uroot -p123 -e ' 阅读全文
摘要:
查询缓存的使用 执行查询语句的时候,会先查询缓存。不过,MySQL 8.0 版本后移除,因为这个功能不太实用 my.cnf加入以下配置,重启MySQL开启查询缓存 MySQL执行以下命令也可以开启查询缓存 缓存建立之后,MySQL的查询缓存系统会跟踪查询中涉及的每张表,如果这些表(数据或结构)发生变 阅读全文
摘要:
mysql 索引 1.索引介绍 索引按数据结构分可分为哈希表,有序数组,搜索树,跳表: 哈希表适用于只有等值查询的场景 有序数组适用于有等值查询和范围查询的场景,但有序数组索引的更新代价很大,所以最好用于静态数据表 搜索树的搜索效率稳定,不会出现大幅波动,而且基于索引的顺序扫描时,也可以利用双向指针 阅读全文
摘要:
MVCC简介 MVCC是一种多版本并发控制机制。 MVCC是为了解决什么问题? 大多数的MYSQL事务型存储引擎,如,InnoDB,Falcon以及PBXT都不使用一种简单的行锁机制.事实上,他们都和MVCC–多版本并发控制来一起使用. 大家都应该知道,锁机制可以控制并发操作,但是其系统开销较大,而 阅读全文
摘要:
事务 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消。事务是逻辑上的一组操作,要么都执行,要么都不执行。 ACID简介 原子性(Atomicity)、一致性(Correspondence)、隔离性(Isolation)、持久性(Durability) 阅读全文
摘要:
在 MySQL 命令行的默认设置下,事务都是自动提交的,即执行 SQL 语句后就会马上执行 COMMIT 操作。因此要显式地开启一个事务务须使用命令 BEGIN 或 START TRANSACTION,或者执行命令 SET AUTOCOMMIT=0,用来禁止使用当前会话的自动提交。 菜鸟教程:htt 阅读全文
摘要:
数据库表的增删改查操作: 增、删、改 查: 单表查询 简单查询、where约束、group by分组、聚合查询、having过滤、order by排序、limit限制、正则匹配 多表查询 连表查询:交叉查询、>內连查询、左外连接查询、右外连接查询、全外链接查询、连接结果筛选查询 子查询 :带关键字i 阅读全文
摘要:
用户及权限操作: 管理员登录:mysql -uroot -p 用户设置密码:set password=password(密码); 查看数据库所有用户:select * from mysql.user; 查看用户权限:show grants for 用户名@网络地址 [identified by 密码 阅读全文
摘要:
SQL语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统,分为3种类型: 1、DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER 2、DML语句 数据库操纵语言: 插入数据INSERT、删除数据DELETE、更新数据UPDATE、查询数据SELECT 3、DCL语句 数据库控制语言: 例如控制用户的访问权限GRANT、REVOKE(取消 阅读全文
摘要:
mysql数据库常用的三种存储引擎: MyISAM和InnoDB区别 MyISAM是MySQL的默认数据库引擎(5.5版之前)。虽然性能极佳,而且提供了大量的特性,包括全文索引、压缩、空间函数等,但MyISAM不支持事务和行级锁,而且最大的缺陷就是崩溃后无法安全恢复。不过,5.5版本之后,MySQL 阅读全文
摘要:
mysql的工作流程: 1.mysql 架构 mysql 分为 server 层和存储引擎 1.1.server层 连接器:管理连接权限验证 查询缓存:命中缓存直接换回查询结果 分析器:分析语法 优化器:生成执行计划,选择索引 执行器:操作索引返回结果 连接器:管理连接权限验证 查询缓存:命中缓存直 阅读全文
摘要:
mysql提供开源的安装在各个操作系统上的安装包,包括ios,linux,windows: (1)mysql的安装、启动和基础配置 —— linux版本 (2)mysql的安装、启动和基础配置 —— windows版本 (3)mysql的安装、启动和基础配置 —— mac版本 一、mysql的安装、 阅读全文