![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL
阿萨德执行
这个作者很懒,什么都没留下…
展开
-
Mysql——并发读与快照读
照读:SQL读取的数据是快照版本,也就是历史版本,普通的select查询的就是快照。innodb存储引擎的快照读,读取的数据将由cache(原始数据)+undo(事物修改过的数据)两部分组成。当前读:SQL读取的数据是最新版本,可以通过锁的机制来保证读取的数据无法被其它的事物修改。update,delete,insert,select ... lock in share mode,se...原创 2020-04-28 13:48:50 · 220 阅读 · 0 评论 -
Mysql——MySql事务日志理解,包含redo_log,binlog与undo_log三者间关系等
一、redo log的概念redo log包括两部分:一是内存中的日志缓冲(redo log buffer),该部分日志是易失性的;二是磁盘上的重做日志文件(redo log file),该部分日志是持久的。在概念上,innodb通过force log at commit机制实现事务的持久性,即在事务提交的时候,必须先将该事务的所有事务日志写入到磁盘上的redo log file和undo...原创 2020-04-28 11:51:53 · 792 阅读 · 0 评论 -
Mysql——MVCC的理解
MVCCMutil-Version Concurrency Control,就是多版本并发控制。MVCC 是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问。在Mysql的InnoDB引擎(仅InnoDB引擎支持事务)中就是指在已提交读(READ COMMITTD)和可重复读(REPEATABLE READ)这两种隔离级别下的事务对于SELECT操作会访问版本链中的记...原创 2020-04-27 18:04:52 · 312 阅读 · 0 评论 -
MySQl---开启主从后存储函数报错
MySQL开启bin-log后,调用存储过程或者函数以及触发器时,会出现错误号为1418的错误:ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL,or READS SQL DATA in its declaration and binary logging is enabled(you *might* wan...原创 2020-04-16 17:45:49 · 207 阅读 · 0 评论 -
Mysql主从同步---延迟原理及解决
1. MySQL数据库主从同步延迟原理。答:谈到MySQL数据库主从同步延迟原理,得从mysql的数据库主从复制原理说起,mysql的主从复制都是单线程的操作,主库对所有DDL和 DML产生binlog,binlog是顺序写,所以效率很高,slave的Slave_IO_Running线程到主库取日志,效率比较高,下一步, 问题来了,slave的Slave_SQL_Running线程将主库的DD...原创 2020-02-28 11:12:56 · 333 阅读 · 0 评论 -
MySQL主从搭建
1、环境mysql5.6.37 + centos7.0 64位2、一主多从主从复制原理 Mysql主从复制的实现原理如下图所示:MySQL之间数据复制的基础是二进制日志文件(binary log file)。一台MySQL数据库一旦启用二进制日志后,其作为master,它的数据库中所有操作都会以“事件”的方式记录在二进制日志中,其他数据库作为slave通过一...原创 2020-02-21 17:54:42 · 100 阅读 · 0 评论 -
笔记-mysql修改最大连接数
1、找到my.cnf2、增加max_connections=1000vim /usr/my.cnf3、重启mysql/etc/init.d/mysql restart原创 2019-12-19 11:31:52 · 75 阅读 · 0 评论 -
笔记-MySql允许用户远程访问
mysql,root登录后执行下列语句:grant insert,select,update,delete on `cloud`.* to '$user'@'$PAAS_IP' identified by '$mysql_pwd';FLUSH PRIVILEGES;//允许所有用户访问所有权限。GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' ID...原创 2019-12-16 19:22:44 · 119 阅读 · 0 评论 -
MYSQL-索引笔记
1、mysql 的唯一索引要求所有参与的列都不能够为 null 值,如果唯一索引中的任何一个元素含有 null 值,则唯一约束将不起作用。insert into tb(a,b,c) values (null,null,null); -- okinsert into tb(a,b,c) values (null,null,null); -- still okinsert into tb(a...原创 2019-11-05 20:30:26 · 106 阅读 · 0 评论 -
MySQL语句的执行顺序
SQL Select语句完整的执行顺序:1、from子句组装来自不同数据源的数据;2、where子句基于指定的条件对记录行进行筛选;3、group by子句将数据划分为多个分组;4、使用聚集函数进行计算;5、使用having子句筛选分组;6、计算所有的表达式;7、select 的字段;8、使用order by对结果集进行排序。SQL语言不同于其他编...原创 2019-08-15 11:25:08 · 603 阅读 · 0 评论 -
MySQL中采用类型varchar(20)和varchar(255)对性能上的影响
1、假设他们用来存储10个字符的数据,其存储空间相同。但是对于内存的消耗是不同的。对于VARCHAR数据类型来说,硬盘上的存储空间虽然都是根据实际字符长度来分配存储空间的,但是对于内存来说,则不是。其时使用固定大小的内存块来保存值。简单的说,就是使用字符类型中定义的长度,即200个字符空间。显然,这对于排序或者临时表(这些内容都需要通过内存来实现)作业会产生比较大的不利影响所以如果某些字段会涉及到...原创 2019-08-05 16:34:28 · 13521 阅读 · 2 评论 -
MySQL查询过程解析
过程总览:1、客户端/服务端通信协议 首先,需要说明的是:MySQL客户端/服务端通信协议是“半双工”的:在任一时刻,要么是服务器向客户端发送数据,要么是客户端向服务器发送数据,这两个动作不能同时发生。 一旦一端开始发送消息,另一端要接收完整个消息才能响应它,所以我们无法也无须将一个消息切成小块独立发送,也没有办法进行流量控制。 客户端用一个单独的数据包将查询请求发送给服...转载 2019-08-14 19:13:19 · 241 阅读 · 0 评论