随笔分类 - Mysql
摘要:pymysql的executemany()方法支持传入单个SQL和一个sequence of records(sequence or mapping)来同时写入多条数据。 例如: sql = "insert into t(c1, c2) values(%s, %s)" args = [(1, 2),
阅读全文
摘要:https://dev.mysql.com/doc/refman/5.7/en/innodb-deadlocks.html 什么是mysql的死锁? A deadlock is a situation where different transactions are unable to procee
阅读全文
摘要:关于mysql如何创建和使用存储过程,参考笔记《MySQL存储过程和函数创建》以及官网:https://dev.mysql.com/doc/refman/5.7/en/create-procedure.html 本篇主要示例使用了输入参数的存储过程,并解决使用表名作为输入参数的问题,因为之前遇到过需
阅读全文
摘要:参考自:https://dev.mysql.com/doc/refman/5.7/en/replication-gtids-lifecycle.html 笔记说明: 本文翻译自官网,当然会根据语义做一些解释或总结简化,有些地方为了理解顺畅也有删减,有些地方直接翻为中文略显生硬,如有疑问请直接参考上述
阅读全文
摘要:很多人都知道MySQL忘记root密码之后可以通过skip-grant-tables来暂时免密登录MySQL,从而修改root密码,但是这种方式一方面有安全隐患,另一方面也并不怎么适用于Windows系统,今天在通过此方式修改MySQL8.0 on Windows的root密码时遇到了这个问题,写个
阅读全文
摘要:昨天在参照着网上写一段关于MySQL连接池的配合gevent多线程调用的代码时遇到了一个问题,自己写的代码根本不能多线程执行,比单会话插入数据慢太多,直到今天早上才发现问题所在,把DB API从MySQLdb换为pymysql之后得到解决,因此测试了一下不同DB API和OS下executemany
阅读全文
摘要:示例: 有如下表需要进行行转列: 代码如下: # -*- coding:utf-8 -*- import pandas as pd import MySQLdb from warnings import filterwarnings # 由于create table if not exists总会抛
阅读全文
摘要:早上同事要我写个MySQL去除重复数据的SQL,想起来上次写过一篇MySQL去除重复数据的博客,使用导入导出加唯一索引实现的,但是那种方式对业务影响较大,所以重新写一个存储过程来删重复数据,这一写就写了一个上午,这种BUG确实是很令人沮丧和浪费时间的。 这里把流程简单的描述一下,删重复数据的逻辑很简
阅读全文
摘要:今天遇到一个需要对表进行去重的问题,数据量大概千万左右,第一选择就是按Oracle的思路上: 以上相关子查询的SQL在c1上存在索引时效率不算低,但是很遗憾MySQL没有这种写法,类似的替代写法在MySQL中效率也低的令人发指,如中间表等手段。 正好在前些时间整理一些shell脚本时处理过mysql
阅读全文
摘要:最近有一个关于MySQL版本升级的事,涉及到一些关于时间类型的细节问题需要查明,因此到官网找到相关文章,翻出来比较方便自己理解,博客这里也贴一下。 参考官网网址: https://dev.mysql.com/doc/refman/5.7/en/timestamp-initialization.htm
阅读全文
摘要:官网地址:https://dev.mysql.com/downloads/mysql/ 我这里是RHEL6.5的系统,因此选择RedHat 6 x86,64bit操作系统 下载第一个RPM Bundle即可--mysql-8.0.11-1.el6.x86_64.rpm-bundle.tar。 目前M
阅读全文
摘要:How MySQL Opens and Closes Tables:https://dev.mysql.com/doc/refman/5.7/en/table-cache.html 其他可供参考的文章有: 关于表限制参数的使用:https://dba.stackexchange.com/questi
阅读全文
摘要:官网参考:https://dev.mysql.com/doc/refman/5.6/en/innodb-locks-set.html MySQL把读操作分为两大类:锁定读和非锁定读(即locking read和nonlocking read),所谓非锁定读就是不对表添加事务锁的读操作,如Repeat
阅读全文
摘要:本文参考自MySQL官网5.6版本参考手册的14.5.1,此小节说明MySQL的锁分类,此外还有14.5.2小节和14.5.3小节详述事务隔离级别和各SQL语句的加锁模式,后两节将单独写2篇笔记。 https://dev.mysql.com/doc/refman/5.6/en/innodb-lock
阅读全文
摘要:参考自:https://dev.mysql.com/doc/refman/5.6/en/innodb-transaction-isolation-levels.html 第一部分:概述 InnoDB遵循SQL:1992标准,提供READ UNCOMMITTED, READ COMMITTED, RE
阅读全文
摘要:最近在部署Zabbix时需要用脚本取得一些MySQL的返回参数,需要是numberic格式的,但是调用脚本时总是输出这一句: Warning: Using a password on the command line interface can be insecure. grep -v也是处理不掉的
阅读全文
摘要:MySQL主从复制报错如下: 2018-04-11 09:11:16 2400 [Note] Slave SQL thread initialized, starting replication in log 'binlog.000042' at position 1934531, relay lo
阅读全文
摘要:GitHub地址:https://github.com/sysown/proxysql 官网地址:https://www.proxysql.com/ Percona主推的读写分离中间件,下载地址: https://www.percona.com/downloads/proxysql/ 一、安装 1:
阅读全文
摘要:昨天在QQ群里讨论一个SQL优化的问题,语句大致如下: 于是手动测试,先看Oracle,环境采用Oracle自带的scott用户下的emp表。 1.首先查看如下语句的执行计划(此时表只有主键索引): 2.添加IX_TEST(deptno,comm)后查看执行计划: 发现依然是全表扫描。 3.为dep
阅读全文
摘要:一、概述 关于Mycat的原理网上有很多,这里不再详述,对于我来说Mycat的功能主要有如下几种: 1.Mysql主从的读写分离 2.Mysql大表分片 3.其他数据库例如Oracle,MSSQL,DB2等的读写分离和分片。 之所以第3点单独列出来只是因为它不常用,而且使用的JDBC,连接Mysql
阅读全文