为什么不建议在MySQL中使用UTF-8?为什么不建议在MySQL中使用UTF-8? 报错回顾 将emoji文字直接写入SQL中,执行insert语句报错; 改了数据库编码、系统编码以及表字段的编码格式 → utf8mb4 之后,就可以了: MySQL中utf8的趣事 MySQL 的“utf8”实际上不是真正的 UTF-8。 在MySQL中,“utf8”编码只支持每个字符最多三个字节,而真正的 UT2022年12月15日MySQLMySQL使用UTF-8UTF-8问题MySQL字段类型大约 6 分钟
实践 - MySQL索引原理及慢查询优化实践 - MySQL索引原理及慢查询优化 背景 "MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”、“了解数据库原理”等要求。我们知道一般的应用系统,读写比2022年8月1日美团MySQL慢查询优化sql优化索引原理大约 23 分钟
SQL - MySQL 实现分库分表详解SQL - MySQL 实现分库分表详解 一、为什么要分库分表 "如果一个网站业务快速发展,那这个网站流量也会增加,数据的压力也会随之而来,比如电商系统来说双十一大促对订单数据压力很大,Tps十几万并发量,如果传统的架构(一主多从),主库容量肯定无法满足这么高的Tps,业务越来越大,单表数据超出了数据库支持的容量,持久化磁盘IO,传统的数据库性能瓶颈,产品经2022年7月29日MySQL分库分表大约 8 分钟
MySQL面试系列-06MySQL面试系列-06 1. MySQL 假设一天几万以上的增量,预计运维三年,怎么优化? 1)设计良好的数据库结构,允许部分数据冗余,尽量避免join查询,提高效率。 2)选择合适的表字段数据类型和存储引擎,适当的添加索引。 3)mysql库主从读写分离。 4)找规律分表,减少单表中的数据量提高查询速度。 5)添加缓存机制,比如memcached,apc2022年7月17日MySQLMySQL大约 6 分钟
MySQL面试系列-01MySQL面试系列-01 1. 数据库中什么是事务? 事务(transaction)是指数据库操作的最小工作单元,是作为单个逻辑工作单元执行的一系列操作;这些操作作为一个整体一起向系统提交,要么都执行、要么都不执行;事务是一组不可再分割的操作集合(工作逻辑单元)。 通俗的说就是事务可以作为一个单元的一组有序的数据库操作。如果组中的所有操作都成功,则认为事务成2022年7月17日MySQLMySQL大约 18 分钟
MySQL面试系列-02MySQL面试系列-02 1. 表分区有什么好处? 1、存储更多数据。分区表的数据可以分布在不同的物理设备上,从而高效地利用多个硬件设备。和单个磁盘或者文件系统相比,可以存储更多数据 2、优化查询。在where语句中包含分区条件时,可以只扫描一个或多个分区表来提高查询效率;涉及sum和count语句时,也可以在多个分区上并行处理,最后汇总结果。 3、分区表更2022年7月17日MySQLMySQL大约 11 分钟
MySQL面试系列-03MySQL面试系列-03 1. MySQL 中事务回滚机制原理? 事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位,事务回滚是指将该事务已经完成的对数据库的更新操作撤销。 要同时修改数据库中两个不同表时,如果它们不是一个事务的话,当第一个表修改完,可能第二个表修改过程中出现了异常而没能修改,此时就只有第二个表依旧是未修2022年7月17日MySQLMySQL大约 13 分钟
MySQL面试系列-04MySQL面试系列-04 1. MYSQL 数据库服务器性能分析的方法命令有哪些? Show status,一些值得监控的变量值: "Bytesreceived和Bytessent和服务器之间来往的流量。" Com_*服务器正在执行的命令。 Created_*在查询执行期限间创建的临时表和文件。 Handler_*存储引擎操作。 Select_*不同类型的联2022年7月17日MySQLMySQL大约 9 分钟
MySQL面试系列-05MySQL面试系列-05 1. 超键、候选键、主键、外键分别是什么? 超键:在关系模式中,能唯一知标识元组的属性集称为超键。 候选键:是最小超键,即没有冗余元素的超键。 主键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null)。 外键:在一个表中存在的另一个表的主键称此表的2022年7月17日MySQLMySQL大约 10 分钟
SQL - MySQL 性能优化详解SQL - MySQL 性能优化详解 "MySQL性能优化我们可以从以下四个维度考虑:硬件升级、系统配置、表结构设计、SQL语句和索引。" 从成本上来说:硬件升级>系统配置>表结构设计>SQL语句及索引,然而效果却是由低到高。所以我们在优化的时候还是尽量从SQL语句和索引开始入手。 硬件升级 硬件升级这里不在过多赘述,升级更好配置的机器、机械硬盘更换为SSD2022年7月15日MySQL性能优化大约 7 分钟