mysql outfile 密码_测试mysql 在 into outfile是否锁表

本文通过实验探讨了在MySQL中使用INTO OUTFILE导出.txt文件时,是否会对正在写入数据的表造成阻塞。结果显示, outfile操作不会对表加锁,允许插入语句同时执行,但导出的文件仅反映导出时的表快照。这一发现对于理解MySQL并发操作和数据导出的机制具有重要意义。
摘要由CSDN通过智能技术生成

最近在使用into outfile 导出.txt文件,但是一个表假如一直在写,那么这个时候要写 。不确定是不是会阻塞其他的insert sql,所以做个实验。

创建表语句

TEST_TABLE | CREATE TABLE `TEST_TABLE` (

`ID` bigint(20) NOT NULL AUTO_INCREMENT,

`TEST_ID` varchar(200) DEFAULT NULL,

PRIMARY KEY (`ID`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 |

测试代码

import pymysql

sensor1 = {'host': 'localhost', 'port': 3306, 'user': 'root', 'passwd': 'MyNewPass4!',

'db': 'demo'}

conn3 = pymysql.connect(**sensor1)

cursor3 = conn3.cursor()

for i in range(200000):

sql="insert into TEST_TABLE(TEST_ID) values('{}') ".format(i)

print(sql)

cursor3.execute(sql)

conn3.commit()

conn3.close()

outfile

Database changed

mysql> select * from TEST_TABLE into outfile '/var/lib/mysql-files/TEST_TABLE.txt';

Query OK, 9923 rows affected (0.01 sec)

mysql>

实验证明此时的outfile并没有对表进行上锁,且insert 语句可以直接执行,但是outfile的文件只是某个时刻的快照,类似于mysqldump出来的sql文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值