0

深入剖析 RSA 密钥原理及实践

一、前言在经历了人生的很多至暗时刻后,你读到了这篇文章,你会后悔甚至愤怒:为什么你没有早点写出这篇文章?!你的至暗时刻包括:1.你所在的项目需要对接银行,对方需要你提供一个加密证书。你手上只有一个六级英语证书,不确定这个是否满足对方需求。由于你迟迟无法提供正确的证书,项目因此延期,加薪计划泡汤,月供断了,女朋友分手了,你感觉人生完了。2. 你老骥伏枥 2 个月,终于搞懂了.crt 格式证书。加入到新项目,项目在进行证书托管改造。哈哈,这题我会,就是把证书文件上传到托管系统。你对项目组成员大喝一声,放开那些证书,让我来!挤进去一看,是陈年老项目了,根本没有证书,当时使用是公钥和私钥,如何公钥和私...

阅读全文>>

0

mysql中的各种日志文件

mysql在CentOS 7安装好之后,配置文件一般在/etc/my.cnf中。数据目录一般在/var/lib/masql下,其中包含一些日志文件。1)通用日志通用查询日志会记录用户的所有操作,其中还包含增删查改等信息。在并发操作大的环境下会产生大量的信息从而导致不必要的磁盘IO,会影响mysql的性能的。所以,默认情况下是关闭的。可以用 general_log={ON|OFF}控制通用日志的开关。2)错误日志记录msql错误日志,比如mysql崩了等系统错误,默认是开启的,而且从5.5.7以后无法关闭错误日志,错误日志记录了运行过程中遇到的所有严重的错误信息,以及 MySQL每次启动和关闭的...

阅读全文>>

0

搭建mysql主从并用springboot读写分离

本文通过docker快速搭建mysql主从数据库,并用spring boot测试读写分离的实现,这是一个实验环境,便于开发人员开发业务功能代码。一、用docker进行msyql主从环境搭建在搭建环境之前保证已安装docker,本文不进行docker安装的介绍。1、安装master结点执行下面安装docker run --name mysql-master --privileged=true -v /home/yaokangjun/apps/docker/master-data:/var/lib/mysql -p 23306:3306 -e MYSQL_ROOT_PASSWORD=root -d...

阅读全文>>

0

数据库同步软件DBSync的设计与实现

DBSync工作原理示意图DBSync是一款数据库同步软件,支持各种数据库之间的同步,支持增量同步。本文分享该软件的产品渊源、设计思想、技术要点、功能特征、使用方法,最后分析其优缺点,供IT技术人员参考,也欢迎大家提供宝贵意见,促进我们持续进步。阅读本文,用时大约15分钟。1、产品渊源早在2003年,我们在企业信息化的过程中,就经常遇到系统对接问题。很多客户的一些老旧软件,不方便废弃,又想将其中的数据汇集到我们的信息管理平台,借助平台实现集中查询、外网查询、手机查询等。有些则是反方向的,借助平台实现外网录入、手机录入,再将数据从平台同步到现有系统。搜遍各大网络,未找到适合的。有些数据库虽然有同...

阅读全文>>

0

要精通SQL优化?首先要看懂explain关键字

前言在MySQL中,我们知道加索引能提高查询效率,这基本上算是常识了。但是有时候,我们加了索引还是觉得SQL查询效率低下,我想看看有没有使用到索引,扫描了多少行,表的加载顺序等等,怎么查看呢?其实MySQL自带的SQL分析神器Explain执行计划就能完成以上的事情!Explain有哪些信息先确认一下试验的MySQL版本,这里使用的是5.7.31版本。只需要在SQL语句前加上explain关键字就可以查看执行计划,执行计划包括以下信息:id、select_type、table、partitions、type、possible_keys、key、key_len、ref、rows、filtered...

阅读全文>>

0

MySQL的日志 - undo log

前言什么是undo logundo log的作用undo log的存储空间和系统表空间存放在一起独立的undolog表空间undo log的相关参数独立undolog表空间的意义最后前言前面我们介绍了MySQL中的慢查询slow query log,二进制日志binlog,中继日志relay log,重做日志redolog,今天我们来看一下另外一个重要的日志:undo log。什么是undo logundo log,就是大家经常所说的回滚日志。它里面记录的是对数据的回滚操作。当我们对数据库中的数据有变动操作的时候,为了可以回滚到数据被改动之前的版本,就把数据的变动过程的逆向操作给记录在undo...

阅读全文>>

0

数据库实用脚本:计算地球上两个坐标点之间的里程

今天给大家分享计算地球上两个坐标点之间里程不同数据库版本的脚本。1、SQLServer脚本–-计算地球上两个坐标点(经度,纬度)之间距离sql函数 CREATE FUNCTION [dbo].[fnGetDistance](@LatBegin REAL, @LngBegin REAL, @LatEnd REAL, @LngEnd REAL) RETURNS FLOAT AS BEGIN –-距离(千米) DECLARE @Distance REAL DECLARE @EARTH_RADIUS REAL SET @E...

阅读全文>>

0

小心避坑:MySQL分页时使用 limit+order by 会出现数据重复问题

0 问题描述在MySQL中我们通常会采用limit来进行翻页查询,比如limit(0,10)表示列出第一页的10条数据,limit(10,10)表示列出第二页。但是,当limit遇到order by的时候,可能会出现翻到第二页的时候,竟然又出现了第一页的记录。具体如下:SELECT   `post_title`,   `post_date` FROM   post WHERE   `post_status` = 'publish' ORDER BY   view_c...

阅读全文>>

0

分享一则生产数据库sql优化案例—从98s优化到1.4s

概述今天主要分享一则生产环境的sql优化案例,仅供参考。问题sql该sql定位还是比较容易的,直接查慢查询语句就直接定位出来了。在测试环境执行需耗时98s,查出数据7108条。SELECT * FROM ( SELECT t.group_code, ter.terminate_begin_date AS terminateBeginDate, ... FROM t_att_leave_info t LEFT JOIN t_att_terminate_leave ter ON t.id = ter.head_id WHERE 1 = 1 AND DAT...

阅读全文>>

0

CENTOS MYSQL复制下slave严重延迟的分析和处理

昨晚在生产环境刷数据,执行了一个全局表的update table_test set XK = 'PT' where (XK = '' or XK is null);当时语句没啥问题,测试了下,执行单库的时间在6s左右,没太在意,结果今天发现所有的从库严重延迟,全都卡在这条事务的binlog回放上了。分析原因: 尽管我们使用的是基于组的多线程复制,线程配置为4个,但是他对无序innodb表(堆)或者大事务的回放是非常慢的。我们日常工作种应该避免这个问题。很不幸,这个表publicity_licensing完全符合了堆表的概念,无主键、无唯一索引,完全就是一个堆,无论任何操作都是性能非常差的。在复...

阅读全文>>