随笔分类 - 数据库相关
摘要:可以看到,目前正则匹配字母没问题,c出现1次,2次,3次匹配的结果都是正常的 接下来我们看看匹配中文的效果 可以看到,当匹配连续出现歪时,结果就开始不正常了 然后我去看了下mysql的中文文档中关于正则表达式的部分(https://www.mysqlzh.com/doc/233.html) 上面是文
阅读全文
摘要:MySQL高性能优化系列 目录 (1) "Mysql高性能优化规范建议" (2) "电商数据库表设计" (3) "MySQL分区表使用方法" (4) "MySQL执行计划分析" (5) "电商场景下的常见业务SQL处理" (6) "MySQL慢查询日志的使用" (7) "MySQL数据库备份详解"
阅读全文
摘要:一. 单个数据库服务器的缺点 数据库服务器存在单点问题 数据库服务器资源无法满足增长的读写请求 高峰时数据库连接数经常超过上限 二. 如何解决单点问题 增加额外的数据库服务器,组建数据库集群 同一集群中的数据库服务器需要具有相同的数据 集群中的任一服务器宕机后,其它服务器可以取代宕机服务器 三. M
阅读全文
摘要:对于任何数据库来说,备份都是非常重要的 数据库复制不能取代备份的作用 比如我们由于误操作,在主数据库上删除了一些数据,由于主从复制的时间很短,在发现时,从数据库上的数据可能也已经被删除了, 我们不能使用从数据库上的数据来恢复主数据库上的数据,只能通过备份进行误删除数据的恢复 一. 备份的分类 1.按
阅读全文
摘要:一. 设置方法 使用慢查询日志里捕获 启用之前需要先进行一些设置 方法一:全局变量设置 设置慢查询日志的日志文件位置 set global slow_query_log_file = "D:/slow_log/slow_log.log" ; 设置是否对未使用索引的SQL进行记录 set global
阅读全文
摘要:1. 如何对评论进行分页展示 一般情况下都是这样写 SELECT customer_id,title,content FROM product_comment WHERE audit_status = 1 AND product_id =199726 LIMIT 0,15;; 我们来看看它的执行计划
阅读全文
摘要:一. 执行计划能告诉我们什么? SQL如何使用索引 联接查询的执行顺序 查询扫描的数据函数 二. 执行计划中的内容 SQL执行计划的输出可能为多行,每一行代表对一个数据库对象的操作 1. ID列 ID列中的如果数据为一组数字,表示执行SELECT语句的顺序;如果为NULL,则说明这一行数据是由另外两
阅读全文
摘要:1. 确认MySQL服务器是否支持分区表 命令: show plugins; 2. MySQL分区表的特点 在逻辑上为一个表,在物理上存储在多个文件中 HASH分区(HASH) HASH分区的特点 根据MOD(分区键,分区数)的值把数据行存储到表的不同分区中 数据可以平均的分布在各个分区中 HASH
阅读全文
摘要:一. 用户实体 1. 用户登录表(customer_login) CREATE TABLE ( int unsigned NOT NULL AUTO_INCREMENT COMMENT '用户ID', varchar(20) NOT NULL COMMENT '用户登陆名', char(32) NO
阅读全文
摘要:数据库命令规范 1. 所有数据库对象名称必须使用小写字母并用下划线分割 2. 所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来) 3. 数据库对象的命名要能做到见名识意,并且最后不要超过32个字符 4. 临时库表必须以tmp_为前缀并以日期为后缀,备
阅读全文
摘要:问题描述 在使用flask_sqlachemy时,给price字段选择了Float类型,数据库用的mysql,生成数据库表后,发现 虽然能存储float类型,结果如下 但是查询时有问题!!! 根本查不到结果 错误示例,还有如下几种 错误示范 上面方法无论哪种生成的结果,依然长度为0.无法查询到 解决
阅读全文
摘要:1.Zadd Zadd 命令用于将一个或多个成员元素及其分数值加入到有序集当中。如果某个成员已经是有序集的成员,那么更新这个成员的分数值,并通过重新插入这个成员元素,来保证该成员在正确的位置上。分数值可以是整数值或双精度浮点数。如果有序集合 key 不存在,则创建一个空的有序集并执行 ZADD 操作
阅读全文
摘要:在mysql中使用group by进行分组后取某一列的最大值,我们可以直接使用MAX()函数来实现,但是如果我们要取最大值对应的ID,那么我们需要取得整行的数据。最开始的实现方法如下 SELECT t.event_id,MAX(t.create_time) as create_time from m
阅读全文
摘要:# -*- coding: utf-8 -*- import redis import datetime ''' # 1. redis设置过期时间的两种方式 expire函数设置过期时间为10秒。10秒后,ex1将会失效 expireat设置一个具体的时间,15年9月8日15点19分10秒,过了这个时间,ex2将失效 如果设置过期时间成功会返回True,反之返回False ''' pool =...
阅读全文
摘要:Redis是建立在TCP协议基础上的CS架构,客户端client对redis server采取请求响应的方式交互。 redis 乐观锁:也可理解为版本号比较机制,主要是说在读取数据逇时候同时读取其版本号,然后在写入的时候,进行版本号比较,如果一致,则表明此数据在监听期间未被改变,可以写入,如果不一致
阅读全文
摘要:问题描述: 最近做项目,遇到一个问题,两个项目操作同一个数据库,其中A项目用的pymysql链接操作数据库,B项目用的sqlalchemy,当我请求B项目中的一个接口,会通知A项目操作数据库,然后返回结果后,B项目再进行下一个操作(这两步是在一个接口中),但是后来发现,A成功添加了数据后,在同一个请
阅读全文
摘要:查询当日数据 查询当日之前的数据,则用< https://segmentfault.com/q/1010000014045246/a-1020000014048078
阅读全文
摘要:for account_info in valid_account_detail: try: account = account_info.get('account') password = account_info.get('p...
阅读全文
摘要:记录第一次创建时间,default falsk中如下两个字段 两者的区别: 第一个插入的是期望的, 数据的插入时间,每条数据插入时可自动根据当前时间生成 第二条是一个固定的时间, 程序部署的时间,所有的数据都是这个固定时间 实际上默认值在mysql数据库没有体现, 都是sqlalchemy在插入数据
阅读全文
摘要:sqlalchemy中使用query查询,而flask-sqlalchemy中使用basequery查询,他们是子类与父类的关系 假设 page_index=1,page_size=10;所有分页查询不可以再跟first(),all()等 1.用offset()设置索引偏移量,limit()限制取出
阅读全文