
数据库
谁动了我的bug
不为失败找理由,只为成功找方法。
展开
-
MySQL查询字段为纯数字的数据
MySQL查询字段为纯数字的数据原创 2022-09-25 14:14:01 · 3011 阅读 · 1 评论 -
破解navicat时出现No All Pattern Found File Already Patched
不用卸载,点击exe文件重新安装一遍navicat,重新启动注册机,然后再启动native即可。原创 2022-01-07 16:56:09 · 6505 阅读 · 0 评论 -
电商产品设计:后台营销功能模块设计-优惠券活动(三)
现在电商白热化的程度,无论是生鲜电商还是其他的电商等等,都会有促销的这个体系,目的就是增加订单量与知名度等等。那么对于Java开源生鲜电商平台而言,我们采用优惠券的这种方式进行促销。(补贴价格战对烧钱而言非常的恐怖的,太烧钱了)1. 优惠券基础信息实体类说明:任何一个优惠券或者说代金券都是有一个基础的说明,比如:优惠券名称,类型,价格,有效期,状态,说明等等基础信息。package com.ltf.entity;import cn.hutool.core.bean.BeanUtil;im原创 2021-03-29 10:49:05 · 1591 阅读 · 0 评论 -
mysql中decimal类型如何保留后面的两位00?
mysql中decimal类型设置了保留2位小数,但是为什么如果是70.00,会自动变成70;如果是70.01 ,这个又是正常的70.01,我需要保留00,显示应该是70.00,怎么解决这个问题呢?经过各种实验后发现length>=14就会自动补充.00,亲测有效,原因还需要进一步探索,还请各位大佬指点迷津。OK...原创 2020-08-31 22:32:23 · 3116 阅读 · 2 评论 -
MySql:No operations allowed after connection closed解决方案
Spring Boot多数据源配置及No operations allowed after connection closed连接异常的解决首先说下我的项目配置: SpringBooot + SpringMVC+SpringData JPA+ MySql前期开发是没什么问题的,一切运转良好。但是今天我又测试了一遍,居然报了以下错误:注意排查异常要抓住重点: No operations allowed after connection closed。从这个地方我们知道是mysql的链接关闭翻译 2020-06-27 16:21:27 · 18215 阅读 · 2 评论 -
不会看 Explain执行计划,简历敢写 SQL 优化?
Explain有什么用当Explain与SQL语句一起使用时,MySQL会显示来自优化器关于SQL执行的信息。也就是说,MySQL解释了它将如何处理该语句,包括如何连接表以及什么顺序连接表等。 表的加载顺序 sql的查询类型 可能用到哪些索引,哪些索引又被实际使用 表与表之间的引用关系 一个表中有多少行被优化器查询 ..... Explain有哪些信息Explain执行计划包含字段信息如下:分别是id、select_type、table、...转载 2020-05-22 16:09:17 · 380 阅读 · 1 评论 -
数据库选择需要考虑的 12 个问题
正确选择数据库至关重要。从性能到可编程性,下面12个关键问题可以帮助您正确选择选择“正确的”数据库对于应用程序成功运作至关重要。不加思索采纳数据库提供商的方案,或者碰巧使用某个数据库都不可取。仔细考虑数据存储的基本目的和需求才是正途。下面是选择数据库时需要考虑的最重要问题: 应用程序正常投用时存储的数据量有多大? 负载高峰时支持多少并发用户? 应用程序需要怎...转载 2019-12-18 14:15:42 · 1396 阅读 · 0 评论 -
复杂SQL查询
先给大家献上一张图片,如下所示:“红色”正方形代表文件夹,“绿色”正方形代表视频文件,右上角输入框可以实现文件夹或视频名称的模糊查询,模糊查询有如下要求:1.比如,当用户输入“资本”时,显而易见,有一个文件夹的名字和两个视频的名字都符合,则应该显示出符合查询条件的文件夹及文件夹下的所有视频文件,效果图如下所示:2.当用户输入“全球”时,没有符合查询条件的文件夹,但有符合查询条件...原创 2019-12-10 16:49:56 · 259 阅读 · 0 评论 -
mysql官网下载安装包安装教程及注意事项
今天我在找mysql的安装包,找到的包参差不齐,有好有差,所以还是建议从官网下载windows系统下mysql安装包下载地址:https://dev.mysql.com/downloads/installer/打开后发现,默认的版本是8.0的版本,然而8.0的配置很多人都不熟悉,所以建议还是用5.5/5.6/5.7的版本,具体操作如下图:这里我们选择5.6版本的离线安装包作为演示...原创 2019-12-02 16:56:24 · 1114 阅读 · 0 评论 -
如何使用SQL实现复杂的多表查询【精要版】
哈喽,大家好,今天我们继续来探讨“如何使用SQL实现复杂的多表查询?”,在【简要版】中,我们发现存在以下问题:1.SQL查询速度有待提高,当数据达到10万条时,从10万条数据里面做统计查询会非常慢;2.当用户不是推广员仅仅只是与XXX推广员存在绑定关系(不是XXX的下级)时,无法查出相应数据。经过分析,我在推广员数据库表中新增了2个属性,即【累计邀请,累计收益】,数据表结构如下所示:...原创 2019-11-07 08:32:42 · 633 阅读 · 0 评论 -
如何实现复杂的多表查询【简要版】
最近,我独自在负责一个关于二级分销方面的大模块,其中一小块的设计中要求查询如下信息:涉及到的数据表结构如下:1.推广员表CREATE TABLE `dis_populist` ( `PromotersId` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', `ShopId` int(11) DEFAULT NULL COMMENT...原创 2019-11-06 13:12:05 · 956 阅读 · 0 评论 -
Redis的数据结构之Set
存储Set 和List类型不同的是,Set集合中不允许出现重复的元素 Set可包含的最大元素数量是4294967295存储set常用命令:添加/删除元素获取集合中的元素集合中的差集运算集合中的交集运算集合中的并集元算扩展命令sadd key member [member ...]添加set元素127.0.0.1:6379> sadd set1 ...原创 2018-04-19 13:22:23 · 213 阅读 · 0 评论 -
Redis的数据结构之List
存储list:ArrayList使用数组方式LinkedList使用双向链接方式双向链接表中增加数据双向链接表中删除数据存储list常用命令两端添加两端弹出扩展命令lpush 方式添加从左边开始添加127.0.0.1:6379> lpush l1 a b c d(integer) 4127.0.0.1:6379> lpush l1 1...原创 2018-04-19 13:07:54 · 179 阅读 · 0 评论 -
Redis的数据结构之哈希
存储HashString key和String Value的Map容器每一个Hash可以存储4294967295个键值对存储Hash常用命令:赋值 取值删除增加数字判断字段是否存在获取hash属性个数获取hash所有属性名称定义h1 以及username和password字段 值分别是java1234 123456hget单个字段设置127.0...原创 2018-04-19 12:01:39 · 255 阅读 · 0 评论 -
Redis的数据结构之字符串
五种数据类型:字符串(String)字符串列表(list)有序字符串集合(sorted set)哈希(hash)字符串集合(set)Key定义的注意点:不要过长,不要过短,统一的命名规范存储String二进制安全的,存入和获取的数据相同Value最多可以容纳的数据长度是512M存储String常用命令赋值取值删除数值增减扩展命...原创 2018-04-19 11:49:36 · 144 阅读 · 0 评论 -
Jedis 连接池实例
package com.xhz.redis;import redis.clients.jedis.Jedis;import redis.clients.jedis.JedisPool;import redis.clients.jedis.JedisPoolConfig;/** * * @author xhz * */public class JedisPoolTest {...原创 2018-04-19 11:46:23 · 269 阅读 · 0 评论 -
Jedis连接 HelloWorld实现
建一个Maven项目,pom里加下jedis依赖,<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version></depen原创 2018-04-19 11:40:08 · 161 阅读 · 0 评论 -
在linux系统中安装Redis
Redis从一开始就只支持Linux,后面虽然有团队搞出Window版本,但是我还是建议大伙安装到Linux中。准备工作 VMware 以及Xshell https://redis.io/redis官方安装教程,但是比较简单,不适合生产环境的安装部署;我们这边详细点,第一步:安装gccgcc编译c的,因为redis是c编写的,所以我们先安装下gccyum install...原创 2018-04-19 11:40:02 · 277 阅读 · 0 评论 -
Jedis简介
实际开发中,我们需要用Redis的连接工具连接Redis然后操作Redis,对于主流语言,Redis都提供了对应的客户端;https://redis.io/clientshttps://redis.io/clients#java提供了很多客户端 官方推荐的是Jedis 托管地址:https://github.com/xetorthio/jedis ...原创 2018-04-19 11:39:54 · 184 阅读 · 0 评论 -
Redis单机多节点集群实验
第一步:安装Redis前面已经安装过了 不解释,Reids安装包里有个集群工具,要复制到/usr/local/bin里去cp redis-3.2.9/src/redis-trib.rb /usr/local/bin第二步:修改配置,创建节点我们现在要搞六个节点,三主三从,端口规定分别是7001,7002,7003,7004,7005,7006我们先在root目录下新建一...原创 2018-04-20 08:51:30 · 401 阅读 · 0 评论 -
Redis简介
介绍Redis之前,先了解下NoSQL (Not noly SQL)不仅仅是SQL属于非关系型数据库;Redis就属于非关系型数据库传统的Mysql ,oracle ,sql server 等 都是关系型数据库为什么需要NoSQL,主要应对以下问题,传统关系型数据库力不从心High performance -高并发读写Huge Storage-海量数据的高效率存储和访问Hi...原创 2018-04-19 11:39:46 · 147 阅读 · 0 评论 -
Redis的数据结构之sorted-set
存储Sorted-SetSorted-Set和Set的区别Sorted-Set中的成员在集合中的位置是有序的存储Sorted-set常用命令添加元素获得元素删除元素范围查询扩展命令zadd 添加元素 里面包括评分和值127.0.0.1:6379> zadd sort1 5 a 4 b 6 c(integer) 3我们添加集合sort1 元素是a...原创 2018-04-20 08:50:38 · 330 阅读 · 0 评论 -
Redis Keys的通用操作
keys * 显示所有key127.0.0.1:6379> keys * 1) "sort1" 2) "l2" 3) "set2" 4) "r1" 5) "h1" 6) "n2" 7) "l3" 8) "r2" 9) "s1"10) "set3"11原创 2018-04-20 08:50:45 · 279 阅读 · 0 评论 -
MySQL的JOIN(三):JOIN优化实践之内循环的次数
这篇博文讲述如何优化内循环的次数。内循环的次数受驱动表的记录数所影响,驱动表记录数越多,内循环就越多,连接效率就越低下,所以尽量用小表驱动大表。先插入测试数据。CREATE TABLE t1 ( id INT PRIMARY KEY AUTO_INCREMENT, type INT ); SELECT COUNT(*) FROM t1; ...原创 2018-11-21 20:40:48 · 432 阅读 · 0 评论 -
MySql查询不区分大小写解决方案
首先,我们来看哈第一条SQL,如下所示:SELECT h.stuNum '学生学号', h.courseId '班级id', h.addTime '选课时间', c.course_name '班级名称'FROM hl_order hLEFT JOIN edu_course c ON h.courseId = c.course_idWHERE h.stuNum LIKE 'h...原创 2019-09-20 16:56:31 · 782 阅读 · 0 评论 -
MySQL中的自增主键用完了怎么办?
在面试中,大家应该经历过如下场景面试官:"用过mysql吧,你们是用自增主键还是UUID?" 你:"用的是自增主键" 面试官:"为什么是自增主键?" 你:"因为采用自增主键,数据在物理结构上是顺序存储,性能最好,blabla…" 面试官:"那自增主键达到最大值了,用完了怎么办?" 你:"what,没复习啊!!" (然后,你就可以回去等通知...翻译 2019-08-25 09:26:21 · 15863 阅读 · 13 评论 -
纯手写数据库连接池
数据库连接池原理基本原理在内部对象池中,维护一定数量的数据库连接,并对外暴露数据库连接的获取和返回方法。如外部使用者可通过getConnection方法获取数据库连接,使用完毕后再通过releaseConnection方法将连接返回,注意此时的连接并没有关闭,而是由连接池管理器回收,并为下一次使用做好准备。线程池作用 ①资源重用 由于数据库连接得到重用,避免了频繁...原创 2018-06-03 13:26:39 · 1344 阅读 · 0 评论 -
认识Redis
NoSQL简介NoSQL,全名为Not Only SQL,指的是非关系型的数据库 随着访问量的上升,网站的数据库性能出现了问题,于是nosql被设计出来优点/缺点优点: 高可扩展性 分布式计算 低成本 架构的灵活性,半结构化数据 没有复杂的关系 缺点: 没有标准化 有限的查询功能(到目前为止) 最终一致是不直观的程序 分类类型 部分...原创 2018-12-27 22:11:39 · 264 阅读 · 0 评论 -
Redis多机多节点集群实验
第一步:环境准备我们搞两台虚拟机局域网IP 分别是 192.168.1.109和192.168.1.110我们约定把192.168.1.109作为集群控制端,需要安装redis-trib.rb第二步:安装Redis前面已经安装过了 不解释,192.168.1.109虚拟机里,Reids安装包里有个集群工具,要复制到/usr/local/bin里去cp redis-3...原创 2018-04-20 08:51:46 · 471 阅读 · 0 评论 -
Redis的持久化之AOF方式
AOF方式:将以日志,记录每一个操作优势:安全性相对RDB方式高很多;劣势:效率相对RDB方式低很多;配置:[root@localhost redis]# vi redis.conf 编辑redis.conf往下拉 找到:appendonly no默认关闭aof方式 我们修改成yes 就开启下面那个是默认的aof文件名再往下拉:这里是三种同步策略:...原创 2018-04-20 08:51:19 · 226 阅读 · 0 评论 -
Redis的持久化之RDB方式
RDB方式 Redis是默认支持的优势:只有一个文件,时间间隔的数据,可以归档为一个文件,方便压缩转移(就一个文件)劣势:如果宕机,数据损失比较大,因为它是没一个时间段进行持久化操作的。也就是积攒的数据比较多,一旦懵逼,就彻底懵逼了配置:[root@localhost redis]# vi redis.conf 编辑redis.conf往下拉:这里save 900 ...原创 2018-04-20 08:51:10 · 274 阅读 · 0 评论 -
Redis持久化介绍
所有的数据都存在内存中,从内存当中同步到硬盘上,这个过程叫做持久化过程。持久化操作,两种方式:rdb方式、aof方式,可以单独使用或者结合使用。使用方法: rdb持久化方法:在指定的时间间隔写入硬盘aof方式:将以日志,记录每一个操作,服务器启动后就构建数据库。配置可以禁用 持久化功能。也可以同时使用两种方式。 ...原创 2018-04-20 08:50:52 · 190 阅读 · 0 评论 -
Java 使用 Redis
这里我们建立一个maven项目,项目结构如下: package com.xhz.redis;import redis.clients.jedis.Jedis;/** * 连接到 redis 服务 * * @author xhz * */public class RedisJava { public static void main(String[] args)...原创 2018-04-04 08:39:07 · 156 阅读 · 0 评论 -
redis.conf 配置项说明
1. Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程 daemonize no2. 当Redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,可以通过pidfile指定 pidfile /var/run/redis.pid3. 指定Redis监听端口,默认端口为6379,作者在自己的一篇...原创 2018-04-04 08:38:52 · 236 阅读 · 0 评论 -
EhCache 常用配置项详解
EhCache 给我们提供了丰富的配置来配置缓存的设置;这里列出一些常见的配置项:cache元素的属性: name:缓存名称 maxElementsInMemory:内存中最大缓存对象数 maxElementsOnDisk:硬盘中最大缓存对象数,若是0表示无穷大 eternal:true表示对象永不过期,此时会忽略timeToIdle...原创 2018-02-06 11:30:58 · 244 阅读 · 0 评论 -
EhCache HelloWorld实现
EhCache最新版本是3.X 本人一直用的是2.X 比较稳定 功能足够用;所以还是用2.X版本;这里,我们新建一个Maven项目,pom.xml里引入 ehcache支持;ehcache.xml配置文件我们再新建一个测试类:运行输出:SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder...原创 2018-02-06 11:30:47 · 312 阅读 · 0 评论 -
EhCache缓存框架简介
EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。我们使用EhCache缓存框架主要是为了判断重复Url,每次爬取一个网页,都把Url存储到缓存中,并且每次爬某个网页之前,都去缓存中搜索下,假如存在的话,我们就不要爬取这个网页了,不存在的话,我们就爬下网页,爬取成功后,把这个Url存储到缓存中;之所以用缓存框架,主要...原创 2018-02-06 11:30:34 · 263 阅读 · 0 评论 -
MYSQL数据库的备份与恢复
数据备份进入超级管理员sudo -s进入mysql库目录cd /var/lib/mysql运行mysqldump命令备份本地数据库:mysqldump –uroot –p 数据库名 > ~/Desktop/备份文件.sql;按提示输入mysql的密码备份远程数据库:mysqldump -h远程数据库地址 -u用户名 -p 数据库名 > ~/...原创 2018-12-20 13:38:26 · 299 阅读 · 0 评论 -
GROUP_CONCAT,SUBSTRING_INDEX的妙用(将多条数据合并成一行,并且根据某些列的合并值做条件判断来生成最终值)
融e学-一个专注于重构知识,培养复合型人才的平台:http://www.i-ronge.com/(1)不做处理:SELECT e.class_id AS class_id, c.course_name AS class_name, u.stuNum AS stu_num, u.USER_NAME AS student_name, u.department AS departme...原创 2018-12-14 16:09:48 · 861 阅读 · 0 评论 -
MySQL的JOIN(五):JOIN优化实践之排序
这篇博文讲述如何优化JOIN查询带有排序的情况。大致分为对连接属性排序和对非连接属性排序两种情况。插入测试数据。CREATE TABLE t1 ( id INT PRIMARY KEY AUTO_INCREMENT, type INT ); SELECT COUNT(*) FROM t1; +----------+ | COUN...原创 2018-11-21 20:53:11 · 684 阅读 · 0 评论