MySQL
文章平均质量分 61
MySQL
Quant策评社
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
面试八股文-MySQL数据库
MySQL数据库MySQL常用数据类型char: 存放定长文本,如 身份证号varchar: 存放小型变长文本,如 家庭住址text: 存放大型变长文本,如 新闻内容tinyint: 存放较小的整数,bool值int: 存放较大的整数,如记录项的iddatetime: 存放日期时间,如用户注册时间enum: 存放枚举值,如男,女char和varchar的区别?char是定长的,不足的位数会用空格补全varchar是变长的,存取速度比char慢一些varchar和text的区别原创 2021-10-21 14:35:11 · 640 阅读 · 2 评论 -
peewee select for update 悲观锁
百度搜不到相关用法, 官方文档也没写清楚到底怎么写相应的ORM语句后来谷歌终于找到了, 现在分享一下1 悲观锁的写法# SQL语句begin;select stock from tb_sku where id=1 for update; # 对id=1的商品记录加锁, 期间其它用户阻塞访问该记录update tb_sku set stock=stock-5 where id=1;commit;# ORM语句(python Django语法)SKU.objects.select_for_原创 2021-09-22 17:15:47 · 877 阅读 · 0 评论 -
MySQL四种事务隔离级别
读未提交 (read uncommitted): 隔离级别最低, 一个事务还未提交时, 它做的变更就能被别的事务看到.读提交 (read committed): 一个事务提交后, 它做的变更才能被其它事务看到. 解决了脏读怎么解决脏读的呢? 每次读都会生成一个ReadView, 会顺着MVCC版本链去读第一个已提交事务的历史记录可重复读 (repeatable read): 一个事务执行过程中读取的数据, 总是和这个事务第一次读取的数据是一致的. 解决了不可重复读怎么解决不可重复读的呢? .原创 2021-07-03 17:53:10 · 332 阅读 · 0 评论 -
一文搞懂MySQL中的 ‘锁‘
1 全局锁 表锁 行锁从加锁的范围看, 分为 全局锁, 表级锁 和 行锁全局锁: 做全库逻辑备份表锁: 一般是存储引擎不支持行锁时才使用行锁: 当事务中的SQL语句更新时, 会对记录加行锁, 其它事务访问时会阻塞2 悲观锁 乐观锁从是否加锁来看, 分为 悲观锁 和 乐观锁悲观锁: 每次去拿数据的时候,都默认别人会修改这个数据,所以都会上锁,这样就会阻止其他人修改该数据,直至事务结束才释放锁# 原生SQLbegin;select stock from tb_sku where id=原创 2021-06-25 18:00:12 · 266 阅读 · 0 评论 -
解决Host ‘x.x.x.x‘ is not allowed to connect to this MySQL
1 问题描述mysql主从配置后, 重新运行django项目时出现了这个问题: b"\xffj\x04Host ‘192.168.250.1’ is not allowed to connect to this MySQL server"我的服务器的IP是192.168.250.130, 是一台ubuntu虚拟机我的真实开发机是一台mac os, IP是192.168.3.39mac os上有一个名叫vmnet8的网卡, IP是192.168.250.12 寻找问题先看一下进程的pid,原创 2021-05-17 09:30:35 · 564 阅读 · 4 评论 -
mysql读取配置文件机制分析
1 配置文件最近看了很多篇mysql相关的博客, 发现mysql涉及的配置文件很多, 不知道到底该用哪个, 相信很多mysql初学者跟我一样有这样的困惑本人操作系统: ubuntu20.04 LTSMySQL版本: 8.0.23(1) /etc/mysql/my.cnf(2) /etc/mysql/mysql.conf.d/mysqld.cnf(3) /etc/mysql/conf.d/mysql.cnf2 查看mysql的配置文件导入顺序是不同的mysql版本用不同的配置文件吗?不原创 2021-05-03 10:43:34 · 832 阅读 · 2 评论 -
ubuntu20.04上实现MySQL8.0主从同步
1 背景介绍在ubuntu20.04上搭建MySQL8.0主从MySQL主机: sudo apt install mysql-server发现mysql主机安装的是mysql8.0.23, 从机的版本应该尽量和主机一致MySQL从机: sudo docker image pull mysql:8.0.232 配置MySQL主机sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf# 开启日志general_log_file = /var/log/mys原创 2021-05-02 22:03:58 · 978 阅读 · 2 评论
分享