
mysql实战笔记
文章平均质量分 90
程序男
java 服务端开发者。
展开
-
记一次Mysql加字段加不上问题排查过程
另外一方面innodb_trx的线程有不少是昨天的,上面的图其实是我kill掉一些之后才截取出来的,根据提示执行select * from performance_schema.events_statements_current,也没发现异常,所以就想着将一些长时间不释放的事务会话kill掉,经过5分钟左右的kill操作之后,只剩一些当前时间段内产生的事务了,这里再执行alter table add 命令,执行成功了。出现这种情况就想到了两种可能,于是直接尝试百度了下:Mysql 加表字段超时。原创 2024-02-04 11:11:15 · 1587 阅读 · 0 评论 -
MySql近期面试总结
由于今天时间有限,并且使用zookeeper api的demo代码编写不当,因此本篇文章有点难产,笑哭~。这里整一篇Mysql年前的面试总结。还有其他几篇,本篇介绍Mysql方面的内容。二、数据库(MySql)篇1.有表结构:学生姓名,课程id,分数三个字段,如何查到平均成绩大于85分的同学姓名?答案:SELECT student.id, student.stdentname,AVG(s...原创 2020-02-09 18:42:56 · 2748 阅读 · 0 评论 -
mysql慢sql优化前缀索引实战
背景:最近负责的招聘系统出现了一些慢查询,已经解决了不少,但是还有,今天报了一个慢查询,咨询了下dba,可以加前缀索引优化。出问题的sql:select * from t_offer_record where record_bill_hashcode = ?执行时间:336ms 我这边按一般排查套路走了一遍,这里简单演示一下看sql是否复杂看sql查询了多少字段看sql关联了几张...原创 2020-01-13 10:20:53 · 273 阅读 · 0 评论 -
JVM参数说明&实战
JVM基础参数配置简介标准选项(cmd下 输入java 即可打印所有标准选项)X选项也叫非标准选项(cmd下输入java -X 即可打印所有非标准选项)XX选项(cmd下输入java -XX: PrintFlagsInitial -version,即可打印所有XX选项的默认值)本次分享主要就是说基于HotSpot JVM平台,讲这三类JVM参数,其中还会演示一些工具平台的使用...原创 2019-12-15 09:57:55 · 1123 阅读 · 0 评论 -
JavaClassLoader源码分析(中)
ClassLoader的属性说明:ClassLoader的属性与其内部类是穿插着创建的,这里写在一起了private static native void registerNatives(); //将ClassLoader类中所有native修饰的方法与C 语言描述的方法对应上相当于做了一次映射 //也侧面反映了一次编写可以处处运行的一种道理,同时相当于基于java与其他...原创 2019-12-14 19:27:13 · 1260 阅读 · 0 评论 -
一次简单的分表实践
背景:笔者负责公司内部单点登录系统(inpass)已两年有余,登录服务接入逐渐增多,登录日志逐渐增多。笔者对登录日志也进行了几轮改造和优化,其中涉及到了一次简单的分表操作,特此记录下来。改造之前的状况(2018.7月调研)inpass日志表中id采用工具类(SnowflakeIdWorker)自动生成id,但是存在高并发下id重复问题,数据库插入存在主键冲突,导致业务方调用出现异常。同...原创 2019-12-02 15:05:42 · 533 阅读 · 0 评论 -
程序日志停止滚动问题排查
今天在做定时任务的时候,遇到了一个比较难搞的问题,这个问题也比较有意思,现在给大家分享一下,这个定时任务的调用入口是这样的。 // 进行 ldap同步 public void runLdapSyncJob(){ try { ldapSyncService.syncLdap(); } catch (Exception e)...原创 2019-11-19 14:08:42 · 1205 阅读 · 0 评论 -
前后端hosts配置访问问题解决思路
问题背景:前后端分离情况下后端开发测试需要配置hosts,有此问题的人员有RD,QA,PM,User测试环境由于用户使用这种配置导致无法使用线上系统发起单据影响用户使用,同时让用户误以为系统出问题而导致增加沟通成本。问题原理:用户访问的是线上,但是由于本地hosts影响,浏览器加载的资源是测试环境的,导致实际发出的请求是由测试环境发出的,因此用户会以为系统出现问题。目标:在用户使用出...原创 2019-11-01 15:00:09 · 2294 阅读 · 0 评论 -
mysql慢日志分析组件安装
1.pt-query-digest 安装cd /usr/binwget percona.com/get/pt-query-digestchmod u x pt-query-digestyum install -y perl-Time-HiRes2.命令示例pt-query-digest --helppt-query-digest --report /opt/soft/mysql-s...原创 2019-11-01 14:52:43 · 282 阅读 · 0 评论 -
记一次sql注入实践
今天开发代码的时候发现自己的sql全是拼接的,不是where a = ?的那种,细思恐极啊,于是进行了一场sql注入实践。虽然失败了,但是还是得出了一些宝贵的经验。 首先从一个基础的分页查询语句开始分析: Select r.a,r.b from role r where r.name like ‘role%’ order by r.create_time desc liimit 0,10;说明...原创 2018-03-01 18:48:45 · 561 阅读 · 0 评论 -
记一次数据库死锁追踪过程
记一次数据库死锁追踪过程案例背景:从网上爬了一批数据,把用户信息录入mysql数据库中了,但是后面爬取到的信息需要根据用户名和id去更新。数据量100w+,要修改的数据量30w+.业务逻辑代码描述 1.访问数据库获取id,name,放入map中,key=name,value=id 2.访问xxx.txt获取用户名,粉丝数量,关注数量放入list中,起事务 3.循环list,在list中循环访原创 2017-11-06 18:58:04 · 816 阅读 · 0 评论 -
MySQL表复制,数据复制解析
1. MySQL复制表结构及数据到新表Create table 新表select * from 旧表2. 只复制表结构到新表Create table 新表 select * from 旧表 where 1=2Create table 新表like 旧表(新版本支持)3. 复制就表的数据到新表(两个表结构一样)Insert into 新表sel原创 2016-11-15 19:27:34 · 777 阅读 · 0 评论 -
MySQL数据库浮点数据类型的坑
今天在盘点的时候折腾了一次,在创建表的时候么有关注到浮点数的精度问题,导致排查问题浪费了很长时间. 场景:汇总报表,将查出的数据插入另外一张表中,查出来的数据是小数,转成另一张表对应的javabean也是小数,但是在插入数据库之后就成了整数了,说明小数被抹去了,我以为是框架的问题,就问负责框架的人,结果他的测试是按照保留小数点0位来测的,结果跟我同一个效果,经过dba的指点,应该是数据库表浮点原创 2016-08-25 18:04:42 · 7363 阅读 · 0 评论 -
Caused by: java.sql.SQLException: Can not issue data manipulation statements with executeQuery().
在线上项目日志中出现了如下异常。 Caused by: java.sql.SQLException: Can not issue data manipulation statements with executeQuery(). at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055) at com.my原创 2016-08-21 15:58:36 · 3975 阅读 · 0 评论