随笔分类 -  数据库

摘要:1.拉镜像 docker pull mysql:5.7 2.运行容器 docker run --name mysql --restart always --privileged=true -p 3306:3306 -v /usr/local/mysql/conf/:/etc/mysql/mysql. 阅读全文
posted @ 2021-08-24 09:11 Alan6
摘要:最近项目后台管理系统出现问题,页面刷新没有数据,记录一下排查和解决的过程。 一、现象 1、后台页面没有数据,刷新也不起作用。 2、查看浏览器页面接口返回消息,后台接口报错500。初步定为应该后台接口出了问题。 3、检查后台服务,hystrix报time out,应该相关服务超时。 二、问题分析 1、 阅读全文
posted @ 2020-07-30 10:41 Alan6
摘要:一、Sharding-jdbc介绍 1、简介 Sharding-jdbc是当当网开源的一款客户端代理中间件。Sharding-jdbc包含分库分片和读写分离功能。对应用的代码没有侵入型,几乎没有任何改动,兼容主流orm框架,主流数据库连接池。目前属于Apache的孵化项目ShardingSphere 阅读全文
posted @ 2020-03-06 11:38 Alan6
摘要:一、实现原理 MySQL默认的隔离级别是可重复读,即:事务A在读到一条数据之后,此时事务B对该数据进行了修改并提交,那么事务A再读该数据,读到的还是原来的内容。那么MySQL可重复读是如何实现的呢?使用的的一种叫MVCC的控制方式 ,即多版本并发控制(Mutil-Version Concurrenc 阅读全文
posted @ 2019-10-05 21:27 Alan6
摘要:一、事务隔离问题 1、脏读:事务A对某数据进行了修改,但事务还没有提交。这时事务B来读取这个数据,会读到事务A修改后但还没有提交的数据。如果事务A撤销了对该数据的修改,那么事务B就读取到了脏数据,这个就叫脏读。 2、不可重复读:事务A读取一个数据,但事务还没有结束。这时事务B修改了这个数据后提交。事 阅读全文
posted @ 2019-10-04 22:03 Alan6
摘要:一、查看mysql锁相关命令 1、通过INFORMATION_SCHEMA.INNODB_TRX、INNODB_LOCKS、INNODB_LOCK_WAITS 获取事务与锁的信息 1)查看哪些事务正在执行 命令:SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX; 阅读全文
posted @ 2019-09-29 09:57 Alan6
摘要:一、表锁、页锁、行锁 为了保证数据的一致性,数据库提供了不同的锁机制,让各线程有序地访问数据库资源。MySQL数据库存在多种数据存储引擎,每种存储引擎所针对的应用场景都不一样。为了满足各自特定应用场景的需求,各存储引擎的锁机制也有较大区别。MySQL各存储引擎使用了三种类型(级别)的锁定机制:表级锁 阅读全文
posted @ 2019-09-27 11:06 Alan6