当autocommit为开启状态时,即使没有手动start transaction开启事务,mysql默认也会将用户的操作当做事务即时提交(自动帮我们 db.commit())

autocommit开启时,mysql的插入效率会提高

1.autocmmit=False

import pymysql
import time

def mysql_autpcommit():
    strat_time = time.time()
    db = pymysql.connect(host='localhost', port=3306, database='cfda', user='root', password='root', charset='utf8',
                         autocommit=False)
    cursor = db.cursor()

    title = '14省份大到暴雨来袭! 双台风或相互影响'
    for i in range(1000):
        cursor.execute('insert into async_test_async(title) values("{}")'.format(title))
        db.commit()
        print("\r I:{}".format(i), end='')

    print('耗时:{}'.format(time.time() - strat_time))

if __name__ == "__main__":
    mysql_autpcommit()

# 结果:  耗时:3.388371467590332  autocommit=False

2.autocmmit=Ture

import pymysql
import time

def mysql_autpcommit():
    strat_time = time.time()
    db = pymysql.connect(host='localhost', port=3306, database='cfda', user='root', password='root', charset='utf8',
                         autocommit=True)
    cursor = db.cursor()

    title = '14省份大到暴雨来袭! 双台风或相互影响'
    for i in range(1000):
        cursor.execute('insert into async_test_async(title) values("{}")'.format(title))
        # db.commit()
        print("\r I:{}".format(i), end='')

    print('耗时:{}'.format(time.time() - strat_time))

if __name__ == "__main__":
    mysql_autpcommit()

# 结果:  耗时:2.4238381385803223 autocommit=True

mysql autocommit的更多相关文章

  1. MySQL AutoCommit带来的问题

    现象描述 测试中发现,服务A在得到了服务B的注册用户成功response以后,开始调用查询用户信息接口,却发现无法查询出任何结果.检查binlog发现,在查询请求之前,数据库确实已经完成了commit ...

  2. MySQL autocommit 和 start transaction

    autocommit 和 start transaction 都是事务相关的命令.类似MyISAM的mysql引擎就不支持. autocommit 默认是ON状态,即sql语句是自动提交的 show ...

  3. mysql autocommit=OFF导致wordpress 建立数据库连接时出错

    今天安装wordpress完成后跳转到login页面时,出现建立数据库连接时出错.网上清一色的拷贝http://mt.sohu.com/20160917/n468547634.shtml的答案. 只能 ...

  4. mysql for linux6.8单机版安装

    主机名以及hostname文件修改 vi /etc/hosts vi /etc/sysconfig/network hostname mysql01 系统参数修改 设置用户资源限制 vi /etc/s ...

  5. k8s mysql 单点部署

    参考官网:https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/ 20-nproc. ...

  6. C API 连接MySQL及批量插入

    CMySQLMgr.h: #ifndef _CMYSQLMGR_H_ #define _CMYSQLMGR_H_ #include <iostream> #include "my ...

  7. Mysql中Innodb大量插入数据时SQL语句的优化

    innodb优化后,29小时入库1300万条数据 参考:http://blog.51yip.com/mysql/1369.html 对于Myisam类型的表,可以通过以下方式快速的导入大量的数据: A ...

  8. CentOS 6.9上安装Mysql 5.7.18 安装

    CentOS 6.9上安装Mysql 5.7.18 安装 下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-g ...

  9. MySQL Online DDL导致全局锁表案例分析

    MySQL Online DDL导致全局锁表案例分析 我这边遇到了什么问题? 线上给某个表执行新增索引SQL, 然后整个数据CPU打到100%, 连接数暴增到极限, 最后导致所有访问数据库的应用都奔溃 ...

随机推荐

  1. MATLAB实例:将批量的图片保存为.mat文件

    MATLAB实例:将批量的图片保存为.mat文件 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 一.彩色图片 图片数据:horse.rar 1. MA ...

  2. Spring Cloud 如何搭建eureka

    Eureka Server 的搭建 eureka 是 Spring Cloud 的注册中心,提供服务注册和服务发现的功能. 利用idea 快速创建一个eureka应用File - NewProject ...

  3. day(66)作业

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. 史上最全的各种C++ STL容器全解析

    史上最全的C++ STL 容器大礼包 为什么\(C++\)比\(C\)更受人欢迎呢?除了\(C++\) 的编译令人感到更舒适,\(C++\)的标准模板库(\(STL\))也占了很重要的原因.当你还在用 ...

  5. HDUNumber Sequence(KMP)

    传送门 题目大意:b在a第一次出现的位置 题解:KMP 代码: #include<iostream> #include<cstdio> #include<cstring& ...

  6. Docker&K8S&持续集成与容器管理--系列教程

    前言 网络虚拟化 一 Docker简介 Docker介绍  → B站视频链接 Docker架构  → B站视频链接 二 Docker安装 Ubuntu Docker 安装 CentOS Docker ...

  7. Python模块import本质是什么?import是什么

    ​ 写这篇文章主要是对Python的import模块或包的机制有了更深层级的一个理解,也在具体工作中得到了一点实践,这种思考是由上一篇文章<__main__内置模块预加载Shotgun接口的妙用 ...

  8. H5生成二维码

    要用H5生成二维码: 1.引入js库,可自行点击链接复制使用 <script type="text/javascript" src="http://static.r ...

  9. pytorch_模型参数-保存,加载,打印

    1.保存模型参数(gen-我自己的模型名字) torch.save(self.gen.state_dict(), os.path.join(self.gen_save_path, 'gen_%d.pt ...

  10. Jenkins操作学习 -- 配置及使用

    一.jenkins基本配置 1.在Jenkins首页,点击Manage Jenkins,然后再点击Manage Plugins插件管理,安装必要的插件.这里我只需要安装Git,因为第一次初始化安装没成 ...