• 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html
  • 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html

标签:MySQL

深入理解Mysql——锁、事务与并发控制

本文对锁、事务、并发控制做一个总结,看了网上很多文章,描述非常不准确。如有与您观点不一致,欢迎有理有据的拍砖!mysql服务器逻辑架构每个连接都会在mysql服务端产生一个线程(内部通过线程池管理线程),比如一个select语句进入,mysql首先会在查询缓存中查找是否缓存了这个select的结果集,如果没有则继续执行 解析、优化、执行的……

部署MySQL主从复制与读写分离

一、实验坏境1.一台CentOS 7作为客户端测试,对应的地址为:192.168.80.1202.一台CentOS 7作为Amoeba前端代理服务器,对应的地址为:192.168.80.1103.一台CentOS 7作为mysql主服务器,对应的地址为:192.168.80.1004.两台CentOS 7分别作为mysql从服务器,对……

一文看懂 MySQL 高性能优化技巧实践

今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情,希望文章的这些优化技巧对你有用。最近公司项目添加新功能,上线后发现有些功能的列表查询时间很久。原因是新功能用到旧功能的接口,而这些旧接口的 SQL 查询语句关联5,6张表且编写……

【MySQL索引】使用教程

关于MySQL索引的好处,如果正确合理设计并且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。对于没有索引的表,单表查询可能几十万数据就是瓶颈,而通常大型网站单日就可能会产生几十万甚至几百万的数据,没有索引查询会变的非常缓慢。还是以WordPress来说,其多个数据表都会对经常被查询的字段添加索引,……

为什么MySQL数据库索引选择使用B+树?

在进一步分析为什么MySQL数据库索引选择使用B+树之前,我相信很多小伙伴对数据结构中的树还是有些许模糊的,因此我们由浅入深一步步探讨树的演进过程,在一步步引出B树以及为什么MySQL数据库索引选择使用B+树!学过数据结构的一般对最基础的树都有所认识,因此我们就从与我们主题更为相近的二叉查找树开始。一、二叉查找树(1)二叉树简介:二叉查……

什么影响了MySQL性能

影响性能的一些常见因素服务器硬件服务器系统数据库存储引擎MyISAM:可以很好的利用内存,但不支持事务,表级锁InnoDB:事务级存储引擎,完美支持行级锁以及事务ACID特性数据库参数配置数据库表结构设计和SQL语句执行效率数据库的版本CPU资源和可用内存大小在服务器硬件中,最容易影……

10分钟让你明白MySQL是如何利用索引的

一、前言在MySQL中进行SQL优化的时候,经常会在一些情况下,对MySQL能否利用索引有一些迷惑。譬如:MySQL 在遇到范围查询条件的时候就停止匹配了,那么到底是哪些范围条件?MySQL 在LIKE进行模糊匹配的时候又是如何利用索引的呢?MySQL 到底在怎么样的情况下能够利用索引进行排序?今天,我将会用一个模型,……

高性能 MySQL 笔记

MySQL架构和历史MySQL逻辑架构第一层处理网络连接等, 比如链接认证授权等第二层是 MySQL 的核心, 用来解析优化 SQL 语句, 设计缓存, 以及各种函数的实现, 包括存储过程, 触发器, 视图等第三层包括存储引擎, 负责具体数据的存取, 服务器通过 API 和存储引擎通信, 存储引擎只执行来自上层的请求……

什么是 binlog?

引言为什么写这篇文章?大家当年在学MySQL的时候,为了能够迅速就业,一般是学习一下MySQL的基本语法,差不多就出山找工作了。水平稍微好一点的童鞋呢还会懂一点存储过程的编写,又或者是懂一点索引的创建和使用。但是呢,基本上大家都忽略了对底层知识的学习。为什么呢?因为工作中很少用到嘛。然后呢,市面上流传的大部分这种底层的知识,又比较偏运维,研……

MySQL 常见错误 ERROR 1044

从供应商那边接手一个MySQL数据库(数据库版本为5.7.21 MySQL Community Server (GPL)),在创建账号时遇到了“ERROR 1044 (42000): Access denied for user ‘root’@’localhost’ to database xxx”错误,如下所示mysql&g……

一千行 MySQL 详细学习笔记(值得学习与收藏)

Windows服务— 启动MySQL    net start mysql— 创建Windows服务    sc create mysql binPath= mysqld_bin_path(注意:等号与值之间有空格)连接与断开服务器mysql -h 地址 -P 端口 -u 用户名 -p 密码SHO……

37 个 MySQL 数据库小技巧,不看别后悔!

无论是运维、开发、测试,还是架构师,数据库技术是一个必备加薪神器,那么,一直说学习数据库、学MySQL,到底是要学习它的哪些东西呢?1、如何快速掌握MySQL?培养兴趣兴趣是最好的老师,不论学习什么知识,兴趣都可以极大地提高学习效率。当然学习MySQL 5.6也不例外。夯实基础计算机领域的技术非常强调基础,刚……

埋在MySQL数据库应用中的17个关键问题!

MySQL的使用非常普遍,跟MySQL有关的话题也非常多,如性能优化、高可用性、强一致性、安全、备份、集群、横向扩展、纵向扩展、负载均衡、读写分离等。要想掌握其中的精髓,可得花费不少功力,虽然目前流行的MySQL替代方案有很多,可是从最小成本最容易维护的角度而言,MySQL还是首选。下面从应用场景的角度切入,对MySQL的技术点进行组织,写一……

MySQL 常见错误 ERROR 3009

在测试备份还原时,使用XtraBackup还原数据库后,创建一个测试账号时遇到了下面错误: mysql> grant all on house.* to test@’192.168.%’ identified by ‘test1249’; ERROR 3009 (HY000): C……

MySQL 5.7 多主一从(多源复制)同步配置

多主一从,也称为多源复制,数据流向:主库1 -> 从库s主库2 -> 从库s主库n -> 从库s应用场景数据汇总,可将多个主数据库同步汇总到一个从数据库中,方便数据统计分析。读写分离,从库只用于查询,提高数据库整体性能。部署环境注:使用docker部署mysql实例,方便快……

学习MySQL高性能优化原理,这一篇就够了!

说起 MySQL 的查询优化,相信大家收藏了一堆奇技淫巧:不能使用 SELECT *、不使用 NULL 字段、合理创建索引、为字段选择合适的数据类型….. 你是否真的理解这些优化技巧?是否理解其背后的工作原理?在实际场景下性能真有提升吗?我想未必。因而理解这些优化建议背后的原理就尤为重要,希望本文能让你重新审视这些优化建议,并在实际业务场景下合理的运……

新手快速搭建MySql服务「神器」

前言如今各种云服务厂商搞活动,云服务器也是便宜的一批,最近不少小伙伴有在问,云服务器如何安装MySql?回想自己曾在win下安装的痛楚以及Linux出现的各种问题,决定把Docker神器分享给大家。描述MySQL 5.6 SQL数据库服务器Docker镜像,此容器映像包含用于OpenShift的MySQL 5.6 SQL数据库服务器和一般……

万字总结:学习MySQL优化原理,这一篇就够了!

说起MySQL的查询优化,相信大家收藏了一堆奇技淫巧:不能使用SELECT *、不使用NULL字段、合理创建索引、为字段选择合适的数据类型….. 你是否真的理解这些优化技巧?是否理解其背后的工作原理?在实际场景下性能真有提升吗?我想未必。因而理解这些优化建议背后的原理就尤为重要,希望本文能让你重新审视这些优化建议,并在实……

一个不可思议的MySQL慢查分析与解决

前言开发需要定期的删除表里一定时间以前的数据,SQL如下mysql >deletefrom testtable WHERE biz_date <='2017-08-21 00:00:00'  AND status =2  limit 500G前段时间在优化的时候,已经在相应的查询条件上加上了索引K……

收藏起来,史上最全的 MySQL 高性能优化实战总结!

一、前言MySQL 对于很多 Linux 从业者而言,是一个非常棘手的问题,多数情况都是因为对数据库出现问题的情况和处理思路不清晰。在进行 MySQL 的优化之前必须要了解的就是 MySQL 的查询过程,很多的查询优化工作实际上就是遵循一些原则让MySQL 的优化器能够按照预想的合理方式运行而已。今天给大家体验 MySQL 的优化实战,助你……

读写一致性的一些思考

先说明下,本文要讨论的多线程读写是指一个线程写,一个或多个线程读,不包括多线程同时写的情况。试想下这样一个场景:一个线程往hashmap中写数据,一个线程往hashmap中读数据。 这样会有问题吗?如果有,那是什么问题?相信大家都知道是有问题的,但至于到底是什么问题,可能就不是那么显而易见了。问题有两点。一是内存可见性的问题,hash……

面试前必须知道的MySQL命令【expalin】

前言刷面试题的时候,不知道你们有没有见过MySQL这两个命令:explain和profile(反正我就见过了)..之前虽然知道这两个命令大概什么意思,但一直没有去做笔记。今天发现自己的TODO LIST有这么两个命令,于是打算来学习一番,记录一下~使用的MySQL的版本为5.6.38MySQL版本一、explain命令1.1体……

深入理解MySql的Explain

explain关键字可以模拟优化器执行SQL语句,从而知道MySQL是 如何处理你的SQL语句的。分析你的查询语句或是结构的性能瓶颈。在select 语句之前增加 explain 关键字,MySQL 会在查询上设置一个标记,执行查询时,会返回执行计划的信息,而不是执行这条SQL(如果 from 中包含子查询,仍会执行该子查询,将结果放入临时表中)……

面试官问我,为什么老司机建议MySQL列属性尽量用 NOT NULL ?

其实我们刚学习 C 语言的时候,就接触过 NULL,比如下面这句代码。int *p = NULL;它实际上表示将指针指向一块不被使用的内存地址,一般会在宏中定义好。那么我们常用的 Java 语言,同样也用到 null,表示一个空引用,如果你不小心引用了,那么就会抛出 NullPointerException,就像昨天 Redd……

  • 精品技术教程
  • 编程资源分享
  • 问答交流社区
  • 极客文库知识库

客服QQ


QQ:2248886839


工作时间:09:00-23:00