• MySQL——事务(Transaction)详解

    一、事务定义Transaction事务:一个最小的不可再分的工作单元;通常一个事务对应一个完整的业务(例如银行账户转账业务,该业务就是一个最小的工作单元)一个完整的业务需要批量的DML(insert、update、delete)语句共同联合完成事务只和DML语句有关,或者说DML语句才有事务。这个和 2025-02-01 00:12:49
  • MySQL错误ERROR 1786 (HY000)解决

    【环境描述】msyql5.6.14【报错信息】mysql> create tablelgmnr_bak select * from lgmnr;ERROR 1786 (HY000): CREATE TABLE ... SELECTis forbidden when @@GLOBAL 2025-01-31 00:24:20
  • Mysql悲观锁乐观锁区别与使用场景,读完之后,大部分程序员收藏了

    一、概念上区别乐观锁( Optimistic Locking):顾名思义,对加锁持有一种乐观的态度,即先进行业务操作,不到最后一步不进行加锁,"乐观"的认为加锁一定会成功的,在最后一步更新数据的时候再进行加锁。悲观锁(Pessimistic Lock):正如其名字一样,悲观锁对数据加锁持有一种悲观的 2025-01-31 00:21:31
  • MySQL select count(*)计数很慢,有没有优化方案?

    在日常开发工作中,我经常会遇到需要统计总数的场景,比如:统计订单总数、统计用户总数等。一般我们会使用MySQL 的count函数进行统计,但是随着数据量逐渐增大,统计耗时也越来越长,最后竟然出现慢查询的情况,这究竟是什么原因呢?本篇文章带你一下学习一下。1. MyISAM存储引擎计数为什么这么快?我 2025-01-31 00:09:49
  • 误删除MySQL数据库表的ibd文件怎么办

    很多年前,学习oracle10g的技术时,看过盖国强老师写的一篇文章,在linux系统中,oracle数据库存活的时候,用系统命令rm删除一个数据文件,这个时候找到删除文件的fd文件句柄,就可以将删除的文件找回,当时感觉特别的神奇,竟然还有这种骚操作。 既然oracle数据库可以恢复删除的数据文件 2025-01-31 00:06:59
  • Mysql数据迁移操作

    1.迁移数据前先设置mysql服务器参数innodb_large_prefix=ON2.远程分别导出base和store数据库命令导出测试环境base数据库mysqldump --user=timesll@timesll-test-mysql \--password='' --column-sta 2025-01-30 01:03:37
  • MySQL如何存储时间datetime还是timestamp

    时间存储时间存储是我们在MySQL中最常用的一种存储类型,MySQL为我们提供了timestamp和datetime两种数据类型,那么这两者有什么区别,又该如何进行选择呢timestamp和datetime的区别datetime的默认值为null,timestamp默认值为当前系统时间datetim 2025-01-30 00:20:11
  • MySQL 报 duplicate entry for key primary 错误

    原因:插入数据时,要插入数据的主键数据(…)已经存在,不能再重复添加了。另外 1062、1060等错误都是同一个意思解决:1、插入前,先执行一遍查询,看主键是否已存在2、写一个exists查询语句if not exists (select ip from table1 where id = id1) 2025-01-30 00:11:47
  • 大白话聊聊mysql的悲观锁

    1、什么是悲观锁 2、mysql的悲观锁实现 3. 聊聊数据库悲观锁的用途 4. 聊聊数据库悲观锁的缺点大家好,我是四九城最豪横的小耳朵。 今天咱们来用大白话聊聊mysql的悲观锁。1、什么是悲观锁比如线程A对某个变量进行修改,在这个修改期间,它持悲观心理,认为其他线程在这个期间,也有可能去修改这 2025-01-29 00:39:10
  • 线上MySql表新增字段问题

    线上运行的一张数据库表目前数据量已有300多万条数据,且里面加了索引,由于需求的原因:新增新增一个字段,但是表的数据线上每天都在动态的增加。添加字段的sql如下:ALTER TABLE `live_user_watch_report_log` ADD COLUMN `num` int(10) DEF 2025-01-29 00:34:44