主从复制:两个日志(binlog二进制日志,relay log日志)和三个线程(master一个线程和slave两个线程)主库对外提高增删改查服务,从库根据二进制日志将数据同步到从库.一、主从复制流程:两个日志(binlog/relay log)和三个线...
阅读全文...
MySQL-读写分离配置
读写分离就是在主服务器上修改,数据会同步到从服务器,从服务器只能提供读取数据,不能写入,实现备份的同时也实现了数据库性能的优化,以及提升了服务器安全。 使用读写分离,一般需要配合代理中间件MyCat,客户端将要执行的sql发送到MyCat,MyCat会...
阅读全文...
阅读全文...
MySQL-排序order by
mysql> show create table user\G;
*************************** 1. row ***************************
Table: user
Create T...
阅读全文...
阅读全文...
MySQL-阻塞问题排查
这里以解决DROP INDEX 阻塞 的问题为例:1. 确认问题背景操作内容:DROP INDEX 需要获取 表级独占锁,可能被其他事务或连接阻塞。常见原因:未提交的事务持有表的共享锁或意向锁。长时间运行的查询或未关闭的连接阻塞表操作。高隔离级别(如 S...
阅读全文...
阅读全文...
MySQL数据库无法插入中文解决
MySQL数据库无法插入中文解决一、数据库修改先修改数据库的字符集编码ALTER DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;再修改表的字符集编...
阅读全文...
阅读全文...
MySQL-存储引擎
各存储引擎区别锁机制:表示数据库在并发请求访问的时候,多个事务在操作时,并发操作的粒度。B-树索引和哈希索引:主要是加速SQL的查询速度。外键:子表的字段依赖父表的主键,设置两张表的依赖关系。事务:多个SQL语句,保证它们共同执行的原子操作,要么成功,要...
阅读全文...
阅读全文...
MySQL-limit
从图中我们可以看出,我们使用explain查看了sql的执行计划,由于我们将name字段设置为unique,所以MySQL自动为name字段设置了索引,所以只查询了一行,即rows等于1,但是,由于age没有设置索引,尽管age=13在第二行,他也是查询...
阅读全文...
阅读全文...
MySQL-内连接inner join
mysql> use school;
Reading table information for completion of table and column names
You can turn off this feature to get a...
阅读全文...
阅读全文...
MySQL-分组group by
mysql> select name,age from user group by age;
ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause an...
阅读全文...
阅读全文...
MySQL-慢查询日志优化SQL
查看慢查询日志开关是否打开mysql> show variables like 'slow_query%';mysql> show variables like 'slow_query%';
+---------------------+--...
阅读全文...
阅读全文...
MySQL-事务隔离级别实现原理
事务隔离级别(隔离性实现底层)实现原理 = 锁 + MVCC(mvcc处理这两种级别:REPEATABLE-READ和READ-COMMITTED)SERIALIZABLE需要依赖间隙锁,即解决幻读问题原子性,一致性,持久性:undo log(回滚日志)...
阅读全文...
阅读全文...