关键词搜索

源码搜索 ×
×
数据库

MYSQL基础:binlog使用基础: 1:开启binlog与常用命令介绍

Binlog是binarylog的缩写,这种以二进制文件形式存放的log,记录了mysql的数据变更,所有的DDL和DML语句都会以时间的形式予以记录,同时语句执行的消耗时间等也会被记录。它也是在数据丢失的时候,往往第一时间想到的部分。当你不小心dropdatabase的时候,如果你有日别的定时备份和binlog,使用binlog恢复增量数据部分,往往问题并不会很大。使用场景主要的使用场景有如下两
JAVA

Mac IntelliJ IDEA连接和操作MySQL数据库

想要IntelliJIDEA后台开发,数据库的连接时必不可少的,这里我们选择开源的,同时也是使用人数比较多的一种数据库MySQL。第一步:MySQL的下载安装到MySQL官网下载,找到MySQLCommunityEdition(GPL),这个是MySQL的开源版本,是免费的,而上面的MySQLEnterprise是收费版本。对于刚开始学习MySQL的来说,免费版已经包含需要学习的所有功能点击Dow
数据库

查看MySQL InnoDB 表索引的高度

在看《MySQL技术内幕:InnoDB存储引擎》B+树索引章节中看到这么一句话:但是B+索引在数据库中有一个特点就是高扇出性,因此在数据库中,B+树的高度一般都在2-4层,也就是说查找某一键值的行记录时最多只需要2-4次IO。因为当前一般的机械磁盘每秒至少可以做100次IO,2-4次的IO意味着查询时间只需要0.02-0.04秒。那么,当一个表很大的时候,索引还是是2-4层吗?那么这时搜索子节点会
数据库

连接池原理(MySQL Connection Pool)

对于一个简单的数据库应用,由于对于数据库的访问不是很频繁。这时可以简单地在需要访问数据库时,就新创建一个连接,用完后就关闭它,这样做也不会带来什么明显的性能上的开销。但是对于一个复杂的数据库应用,情况就完全不同了。频繁的建立、关闭连接,会极大的减低系统的性能,因为对于连接的使用成了系统性能的瓶颈。一个进程的多个线程同时访问数据库的情况下,为避免每个线程频繁创建和销毁与MYSQL服务的连接,一般会建
数据库

用mysql实现分布式锁

    考虑这样一个场景:多台机器同时执行某一任务,要求某一时刻最多只有一台机器执行,该怎么搞呢?可以考虑分布式锁。    思路:在mysql中插入一条记录,表明获取锁。删除一条记录,表明释放锁。且在mysql表中设置一个uniquekey字段,当有一台机器获得锁后,其他机器无法获取。  &nbsp
数据库

MySQL技术内幕 InnoDB存储引擎:事务

一、认识事务InnoDB储存引擎中的事务完全符合ACID的特性。ACID是以下4个词的缩写:原子性(Atomicity):一个事务必须被视为一个不可分割的最小工作单元,整个事务中的所有操作要么全部提交成功,要么全部失败回滚。一致性(consistency):数据库总是从一个一致性的状态转换到另一个一致性的状态。(其实原子性和隔离性间接的保证了一致性)隔离性(isolation):通常来说,一个事务
数据库

MySQL技术内幕 InnoDB存储引擎:阻塞、死锁、锁升级

1、堵塞因为不同锁之间的兼容性关系,在有些时刻一个事务中的锁需要等待另外一个事务中的锁释放它所占用的资源,这就是堵塞。参数innodb_lock_wait_timeout用来控制等待的时间,默认50秒,是可以动态设置的。参数innodb_rollback_on_timeout用来设定是否在等待超时时对进行中的事务进行回滚操作。默认是OFF。(静态参数,无法是mysql运行时修改)在默认情况下Inn
数据库

MySQL技术内幕 InnoDB存储引擎:锁问题(脏读、不可重复读)

1、脏读在理解脏读(DirtyRead)之前,需要理解脏数据的概念。但是脏数据和之前所介绍的脏页完全是两种不同的概念。脏页指的是在缓冲池中已经被修改的页,但是还没有刷新到磁盘中,即数据库实例内存中的页和磁盘中的页的数据是不一致的,当然在刷新到磁盘之前,日志都已经被写人到了重做日志文件中。而所谓脏数据是指事务对缓冲池中行记录的修改,并且还没有被提交(commit)。对于脏页的读取,是非常正常的。脏页
数据库

MySQL技术内幕 InnoDB存储引擎:外键与锁

外键主要用于引用完整性的约束检查。在InnoDB存储引擎中,对于一个外键列,如果没有显式地对这个列加索引,InnoDB存储引擎会自动对其加一个索引,因为这样可以避免表锁。这比Oracle数据库做得好,Oracle数据库不会自动添加索引,用户必须自己手动添加,这也导致了Oracle数据库中可能产生死锁。对于外键值的插入或更新,首先需要检查父表中的记录,既SELECT父表。但是对于父表的SELECT操

专栏

搜技术文档

文档标签

最新源码

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载