![](https://img-blog.csdnimg.cn/20190927151117521.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
SQL
文章平均质量分 66
SQL
rs勿忘初心
刻意练习,享受创造的快乐。公众号:rs勿忘初心
展开
-
Mysql数据库多表数据查询问题
刚开始的时候我们业务的数据量比较少,直接使用“UNION ALL”等操作查询速度也很快,突然有一天线上的数据库开始报警,提示CPU占用过高,影响了线上的部分业务,慌得一批。,实时查询这种可以按表来查询,比如在页面上让用户主动选择 数据库(人工指定查哪个数据库),这种大概率就是数据抽样查看。此方法风险很大,不再赘述,对数据库压力较大,不是推荐的做法。的(分表的思路),因此并不会出现上述我们提到的查询语法场景,速度很快,不会有任何问题。线上真实的使用场景查询条件很多,也有对应的索引,一般是查询某个人的数据,原创 2023-11-27 16:15:29 · 456 阅读 · 0 评论 -
Python操作Mysql
在Python3中使用mysql数据库时,可以安装pymysql库,当然其它库也可以,基本原理差不多。pip3 install pymysql一、连接MySQLimport pymysql# 连接Mysqldb = pymysql.connect(host="127.0.0.1", user="noah", password="noah", port=3306,原创 2022-01-26 16:35:51 · 3906 阅读 · 0 评论 -
Mysql事务控制语言
什么叫做“事务”:想象一个场景:小明给小花 汇款 5000元 买 IPHONE,操作界面不用管,不管什么操作界面,最终都要落实到这样两条语句的执行:update 存款表 set money = money - 5000 where 账户=’小明’;update 存款表 set money = money + 5000 where 账户=’小花’;当,第一条语...转载 2018-11-11 16:23:07 · 170 阅读 · 0 评论 -
mysql如何复制一个数据库
在实际的工作中,操作数据库往往需要十分谨慎,如果不是非常熟悉的话,在操作前最好备份一下已有的数据库,那么如何备份数据库呢?假设我们已有一个数据库old_db,现在我们想将其备份为new_db,操作步骤如下:(1)创建新的数据库# 本地进入mysql客户端mysql -u 账户 -p密码 -P端口# 创建数据库create database new_db(2)复制数据库使...原创 2019-07-31 13:25:15 · 4346 阅读 · 1 评论 -
什么是分布式系统中的幂等性
现如今我们的系统大多拆分为分布式SOA,或者微服务,一套系统中包含了多个子系统服务,而一个子系统服务往往会去调用另一个服务,而服务调用服务无非就是使用RPC通信或者restful,既然是通信,那么就有可能在服务器处理完毕后返回结果的时候挂掉,这个时候用户端发现很久没有反应,那么就会多次点击按钮,这样请求有多次,那么处理数据的结果是否要统一呢?那是肯定的!尤其在支付场景。幂等性:就是用户对于同一...原创 2019-06-02 17:21:30 · 157 阅读 · 0 评论 -
MySQL的DDL、DML、DCL、TCL什么意思?
SQL语句:结构化查询语句,使用SQL与数据库“沟通”,完成相应的数据库操作。语句分类DDL(Data Definition Languages)语句:即数据库定义语句,用来创建数据库中的表、索引、视图、存储过程、触发器等,常用的语句关键字有:CREATE、ALTER、DROP、TRUNCATE、COMMENT、RENAME。增删改表的结构。DML(Data Manipulation Language)语句:即数据操纵语句,用来查询、添加、更新、删除等,常用的语句关键字有:SELECT、INSE原创 2021-08-27 10:35:36 · 531 阅读 · 0 评论 -
Mysql数据库索引
MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。拿汉语字典的目录页(索引)打比方,我们可以按拼音、笔画、偏旁部首等排序的目录(索引)快速查找到需要的字。索引分单列索引和组合索引。单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。组合索引,即一个索引包含多个列。创建索引时,你需要确保该索引是应用在 SQ原创 2021-08-12 21:37:11 · 80 阅读 · 0 评论 -
MYSQL基本知识:TRUNCATE和DELETE的区别
MYSQL中TRUNCATE和DELETE都能够清理表中的数据,那它们的基本区别是什么呢?1.条件删除这个比较好理解,因为DELETE是可以带WHERE的,所以支持条件删除;而TRUNCATE只能删除整个表。# delete - 条件删除DELETE FROM student WHERE id = 1;# delete - 删除整个表的数据DELETE FROM student;# truncate - 删除整个表的数据TRUNCATE TABLE student;2. 事原创 2021-08-11 15:38:07 · 128 阅读 · 0 评论 -
SQL注入攻击常见方式及测试方法
参考:https://blog.csdn.net/github_36032947/article/details/78442189TODO:可以写个类似的接口进行测试原创 2021-07-15 11:02:19 · 593 阅读 · 0 评论 -
你了解MySQL 主从复制吗?
随着业务的增加,如果单单靠一台服务器的话,负载过重,就容易造成宕机,这样我们保存在 MySQL 数据库的数据就会丢失,那么该怎么解决呢?其实在 MySQL 本身就自带有一个主从复制的功能,可以帮助我们实现负载均衡和读写分离。对于主服务器(Master)来说,主要负责写,从服务器(Slave)主要负责读,这样的话,就会大大减轻压力,从而提高效率。主服务器只负责写,而从服务器只负责读,从而提高了效率减轻压力。主从复制可以分为: 主从同步:当用户写数据主服务器必须和从服务器同步了才告诉用户写原创 2021-07-14 09:28:02 · 229 阅读 · 0 评论 -
数据库事务
原文出处:http://blog.csdn.net/zdwzzu2006/article/details/5947062 事务(Transaction)是并发控制的基本单位。所谓的事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。例如,银行转账工作:从一个账号扣款并使另一个账号增款,这两个操作要么都执行,要么都不执行。所以,应该把它们看转载 2017-09-06 12:04:10 · 252 阅读 · 0 评论 -
数据库设计三大范式
数据库设计三大范式为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。 在实际开发中最为常见的设计范式有三个:1.第一范式(确保每列保持原子性)第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分转载 2017-09-06 12:02:20 · 278 阅读 · 0 评论 -
视图和表的区别
视图和表的区别 数据库中的数据都是存储在表中的,而视图只是一个或多个表依照某个条件组合而成的结果集,一般来说你可以用update,insert,delete等sql语句修改表中的数据,而对视图只能进行select操作。但是也存在可更新的视图,对于这类视图的update,insert和delete等操作最终会作用于与其相关的表中数据。因此,表是数据库中数据存储的基础,而视图只是为了满足某转载 2017-09-06 11:38:46 · 1264 阅读 · 0 评论 -
超键、候选键、主键、外键区别?
超键、候选键、主键区别?超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键。候选键(candidate key):不含有多余属性的超键称为候选键。主键(primary key):用户选作元组标识的一个候选键程序主键。外键:在一个表中存在的另一个表的主键称为此表的外键。比如一个小范围的所有人,没有重名的,考虑以下属性身份证 姓名 性别转载 2017-09-06 11:15:26 · 3456 阅读 · 1 评论 -
并发控制常见手段-----乐观锁和悲观锁
原文出处:http://blog.csdn.net/hongchangfirst/article/details/26004335悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等转载 2017-09-06 11:03:06 · 318 阅读 · 0 评论 -
数据库索引的实现原理
原文出处:http://blog.csdn.net/kennyrose/article/details/7532032强烈建议参阅链接:http://www.linezing.com/blog/?p=798#nav-1说白了,索引问题就是一个查找问题。。。数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据转载 2017-09-05 22:17:48 · 199 阅读 · 0 评论 -
什么是存储过程,存储过程的作用及好处
原文出处:http://www.cnblogs.com/drop/p/4369564.html存储过程(Stored Procedure)是一组为了完成特定功能的SQL 语句集,经编译后存储在数据库。中用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理。存储过程存储在数据库转载 2017-09-05 21:45:04 · 1195 阅读 · 0 评论