![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 52
其古寺
在路上的java coder
展开
-
关于分库保证数据一致性相关思考
1、分布式事务tcc、柔性事务2、最终一致性可以做的事情:、工具化实现常用方案总结(强一致、弱一致、最终一致)常用场景总结数据库分库(目前主要场景)不同中间件(mq、数据库)不同的应用()目前实现原理强一致:2pc:投票、决定问题:单点故障,事务管理器出现故障,整个系统不可用数据不一致:在阶段2事务管理器只成功发送了部分commit信息。响应时间较长:当事务管原创 2021-09-26 09:35:13 · 752 阅读 · 0 评论 -
mysql中Timestamp,time,datetime 区别
参考内容:Mysql的timestamp(时间戳)详解以及2038问题的解决方案_ratel的博客-CSDN博客_timestamp 范围 使用场景 备注 Timestamp ’1970-01-01 00:00:00’到2037年 时间戳、自动时区转化,实际存储毫秒数,4字节存储 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至原创 2021-09-26 09:32:24 · 210 阅读 · 0 评论 -
Spring 动态数据源原理剖析
数据源是在什么时候注入的ibatis中 Dao实现类都需要继承SqlMapClientDaoSupport,如下图中,SqlMapClientDaoSupport 中注入的DataSourceDataSource正在上传…重新上传取消spring留下的拓展点 //key和数据库连接的映射关系 privateMap<Object, Object> targetDataSources; // 标识默认的连接 privateObje...原创 2021-02-24 09:41:53 · 686 阅读 · 0 评论 -
Mysql 批量操作表数据示例
本示例主要用于分库分表情况下的,同类型业务表数据批量处理。可以引申成脚本工具CREATE PROCEDURE `p_del_area_limit`()begin -- 创建 用于接收游标值的变量 declare total int; -- 注意 接收游标值为中文时 需要 给变量 指定 字符集为utf8 declare v_table_name,v_table_schema varchar(2000) character set utf8; declare S.原创 2021-02-04 19:15:16 · 138 阅读 · 0 评论 -
HQL注入防御
缘由:由于客户方漏扫工具,扫描判断我们系统中动态HQL语句有注入风险。(画外音:其实这些参数都是内部使用的,根本没有外部侵入可能)解决:防御sql注入最好的办法就是预编译对于参数的很好解决:HQL参数名称绑定Query query=session.createQuery(“from User user where user.name=:customername and user:customerage=:age ”);query.setString(“customername”,.原创 2020-12-18 18:24:41 · 597 阅读 · 1 评论 -
spring boot jpa 使用Oracle10gDialect使分页效率提升100倍
文档:Hibernate中的数据库方言(Dialect)http://note.youdao.com/noteshare?id=7d11a7bf13d8eae2decda70896ab529b&sub=76163EBA64A74F039A7F20A230E42A14当使用Oracle10gDialect时分页为SELECT *FROM (SELECT row_.*, rownum rownum_FROM ( select * fr...原创 2020-12-16 20:52:56 · 369 阅读 · 0 评论