
Mysql
HenryLee699
三人行,必有我师。
展开
-
WorkBench上MySQL的sql语句删除操作in报错的解决方案
很笨拙的数据库管理软件WorkBench,里面有很多问题,操作不便。有一个多行数据删除的操作问题就是其中之一。比如:DELETE FROM evs_product WHERE evs_product_id IN ( SELECT t.pro_id FROM evs_product t WHERE t.pro_code = 'DEC_MCK' );报错信息可能是:You can't specify target table 'tms_daily_pla...原创 2021-05-16 12:46:24 · 834 阅读 · 0 评论 -
Mysql数据库常用引擎的对比
在Mysql数据库中,常用的引擎主要就是2个:Innodb和MyIASM。这篇文章将主要介绍这两个引擎,以及该如何去选择引擎,最后在提一下这2种引擎所使用的数据结构是什么。首先介绍一下Innodb引擎。Innodb引擎提供了对数据库ACID事务的支持。并且还提供了行级锁和外键的约束。它的设计的目标就是处理大数据容量的数据库系统。它本身实际上是基于Mysql后台的完整的系统。Mysql运行的时候,I...转载 2018-05-31 16:15:00 · 1185 阅读 · 0 评论 -
MySQL分表分库&读写分离相关
MySQL架构优化1.分表当项目上线后,数据将会几何级的增长,当数据很多的时候,读取性能将会下降,更新表数据的时候也需要更新索引,所以我们需要分表,当数据量再大的时候就需要分库了。a.水平拆分:数据分成多个表b.垂直拆分:字段分成多个表c.插入/更新/删除数据和查询统计 MyISAM存储引擎有一个MERGE存储引擎,可以将多个表合成一个表,就可以进行这四种操作 InnoDB用alter abl...转载 2018-04-10 18:31:34 · 627 阅读 · 0 评论 -
搞懂MySQL分表
背景企业开发中经常会遇见某个业务使用频繁,导致数据量特别大,而MySQL的单表承载的数据量有限,一般在1000万以内,字段多一些还会更少,我们解决这种业务就需要对数据进行拆分,也叫sharding ,将一个表拆分多个表,或者多个数据库,本次就介绍一下分表,知道分表逻辑分库也就不再是个难事。几个概念拆分因子:拆分因子也就是我们要按照什么维度拆分,比如,按照用户维度拆分,还是按照商户维度,还是其他,这...转载 2018-04-10 18:03:53 · 507 阅读 · 0 评论 -
数据库SQL优化大总结之 百万级数据库优化方案
网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2转载 2017-11-27 12:34:02 · 249 阅读 · 0 评论 -
SSM框架下Mysql主从模式实现
继昨天的Mysql主从的概述及基本的配置。今天趁着不是很忙的时候整理一下主从JAVA端的代码实现。下面开始贴代码:Spring MVC 的datasorce配置,这里我们使用的阿里的druid(德鲁伊)数据库连接池,先配置两个数据库链接池。分别连接主、从两个库。然后使用spring 的一个主要特性AOP切面编程来根据方法的前缀命名来选择是使用主数据库还是使用从数据库。(我选择切的是cont转载 2017-11-21 21:24:01 · 850 阅读 · 0 评论 -
Mysql一主多从和读写分离配置简记
近期开发的系统中使用MySql作为数据库,由于数据涉及到Money,所以不得不慎重。同时,用户对最大访问量也提出了要求。为了避免Mysql成为性能瓶颈并具备很好的容错能力,特此实现主从热备和读写分离。在此简做纪要,以备日后所用!一、配置主从条件:两台PC,IP分别为192.168.168.253,192.168.168.251。两台PC上的Mysql版本为5.0。253上的Mysq转载 2017-11-21 21:20:08 · 1064 阅读 · 0 评论 -
SSM框架中集成批量插入Mysql数据库功能
如果导入的数据在万条以上,项目中生成的导入功能数据在万条以上会变得非常慢,然后优化了一下,经测试,几万的数据在10秒内成功导入。感觉还是有需要优化的地方,时间精力有限,有优化的希望多交流交流。上代码:[java] view plain copypackage com.jh5bframework.test.testdemo;转载 2017-11-15 23:45:09 · 1097 阅读 · 0 评论 -
redis整合spring mybatis -- 缓存方案
上一篇总结了redis sentinel(哨兵方案)的配置流程,本篇就redis整合ssm框架进行说明。目前,大多数公司用redis主要做缓存用,对于那些不常变动的数据来说,我们将其缓存在redis中,可以大大减少数据库的压力。一、Spring集成redis1.在resource目录下创建spring-redis.xml文件,内容如下:beans xmlns="http://转载 2017-11-20 17:58:33 · 1180 阅读 · 0 评论 -
MySql级联删除和更新
(一)利用外键实现级联删除1、先建立测试数据库[sql] view plain copyCREATE TABLE `roottb` ( `id` INT(11) UNSIGNED AUTO_INCREMENT NOT NULL, `data` VARCHAR(100) NOT NULL DEFAULT '',转载 2017-11-04 23:41:00 · 510 阅读 · 0 评论 -
mybatis级联查询
关联有嵌套查询和嵌套结果两种方式,本文是按照 嵌套结果 这种方式来说明的上一章介绍了多对一的关系,用到了,这是一个复杂类型的关联。我们选择一个示例来回顾下,比如:一个博客有一个用户,关联映射就工作于这种结果之上。首先看下,我们在本文中要用到的表结构字段:博客 blog : id title author_id作者 author: id username passwo转载 2017-11-04 23:29:33 · 317 阅读 · 0 评论 -
MyBatis之级联
在这之前我们知道了MyBatis为我们提供了三种级联:一对一关系(assocation)、一对多关系(collection)、鉴别器(discriminator)。在最后一个鉴别器例子中,看到了当层级关系比较负责时,我们似乎已经难以应对和维护各种级联关系,在对数据库进行查询是否应用MyBatis为我们提供的级联这需要在实际中去斟酌和取舍。在我们通过级联来查询信息时会发现有一个问题,当我们只想查询出转载 2017-11-04 22:42:33 · 334 阅读 · 0 评论 -
mybatis在xml文件中处理大于号小于号的方法
本文转自:http://blog.youkuaiyun.com/zheng0518/article/details/10449549第一种方法:用了转义字符把>和SELECT * FROM test WHERE 1 = 1 AND start_date <= CURRENT_DATE AND end_date >= CURREN转载 2017-11-18 20:50:44 · 327 阅读 · 0 评论 -
MyBatis调用存储过程
一、提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性二、准备数据库表和存储过程 1 create table p_user( 2 id int primary key auto_increment, 3 name varchar(10), 4 sex char(2) 5 ); 6 7 insert i转载 2017-10-16 12:13:08 · 293 阅读 · 0 评论 -
Java Jedis操作Redis示例(四)——Redis和Mysql的结合方案演进
转载:http://blog.youkuaiyun.com/stubborn_cow/article/details/50586990转载:http://blog.youkuaiyun.com/liubenlong007/article/details/53690312转载:http://blog.youkuaiyun.com/donggang1992/article/details/50981341转载:http://转载 2017-10-24 21:20:25 · 2998 阅读 · 0 评论 -
MySQL触发器
触发器是一种特殊的存储过程,是嵌入到mysql的一段程序,它在插入,删除或修改特定表中的数据时触发执行。 数据库触发器有以下的作用:1.安全性。可以基于数据库的值使用户具有操作数据库的某种权利,允许或限制对表的修改: # 可以基于时间限制用户的操作,例如不允许下班后和节假日修改数据库数据。 # 可以基于数转载 2017-10-11 12:24:59 · 705 阅读 · 0 评论 -
mysql触发器(Trigger)简明总结和使用实例
一,什么触发器1,个人理解触发器,从字面来理解,一触即发的一个器,简称触发器(哈哈,个人理解),举个例子吧,好比天黑了,你开灯了,你看到东西了。你放炮仗,点燃了,一会就炸了。2,官方定义触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发转载 2017-10-11 12:20:30 · 1940 阅读 · 0 评论 -
ssm 存储过程分页
分页存储过程:CREATE OR REPLACE PROCEDURE prc_query (p_tableName in varchar2, --表名 p_strWhere in varchar2, --查询条件 p_orderColumn in varchar转载 2017-10-10 18:20:06 · 454 阅读 · 0 评论