mysql百万数据写入_快速写入百万数据

本文探讨了MySQL快速写入百万数据的方法,包括使用pymysql并发执行和优化SQL语句,以及Flask和Django的ORM优化策略,如使用bulk_save_objects、bulk_insert_mappings和QuerySets的迭代器。同时,提到了数据库性能优化技术,如创建索引、避免运算和使用短索引。
摘要由CSDN通过智能技术生成

1.快速写入百万数据

mysql原生操作

mysql原生操作写入500万数据!

# 建库

create database mydb01;

# 使用库

use mydb01;

# 建表

create table tbl_students(

id int primary key auto_increment,

name varchar(20) unique,

gender varchar(6),

email varchar(40)

);

.

import pymysql

import gevent

import time

class DBUtil:

def __init__(self, host, port, username, password, db, charset='utf8'):

self.host = host # mysql主机地址

self.port = port # mysql端口

self.username = username # mysql远程连接用户名

self.password = password # mysql远程连接密码

self.db = db # mysql使用的数据库名

self.charset = charset # mysql使用的字符编码,默认为utf8

self.connect() # __init__初始化之后,执行的函数

def connect(self):

# pymysql连接mysql数据库

# 需要的参数host,port,user,password,db,charset

self.conn = pymysql.connect(host=self.host,

port=self.port,

user=self.username,

password=self.password,

db=self.db,

charset=self.charset

)

# 连接mysql后执行协程方法

self.asynchronous()

#线程

def run(self, nmin, nmax):

# 创建游标

self.cur = self.conn.cursor()

# 定义sql语句,插入数据id,name,gender,email

sql = "insert into tbl_students(id,name,gender,email) values (%s,%s,%s,%s)"

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值