
MySQL
MySQL
dd-moeny
无论什么时候,再困难也要咬牙挺住。不为别的,就因为我们是男人。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Galera Cluster for Mysql集群环境搭建
1、系统环境 CentOS 7.5 虚拟机环境 NODE1:192.168.1.33 NODE2:192.168.1.34 NODE3:192.168.1.352、linux 更换国内镜像 首先备份/etc/yum.repos.d/CentOS-Base.repo 执行命令:mv /e...原创 2019-12-24 21:48:18 · 1822 阅读 · 0 评论 -
MySQL索引背后的数据结构及算法原理
摘要本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论。文章主要内容分为三个部分。第...转载 2020-03-21 21:41:09 · 244 阅读 · 1 评论 -
大众点评订单系统分库分表实践
原大众点评的订单单表早就已经突破两百G,由于查询维度较多,即使加了两个从库,优化索引,仍然存在很多查询不理想的情况。去年大量抢购活动的开展,使数据库达到瓶颈,应用只能通过限速、异步队列等对其进行保护;业务需求层出不穷,原有的订单模型很难满足业务需求,但是基于原订单表的DDL又非常吃力,无法达到业务要求。随着这些问题越来越突出,订单数据库的切分就愈发急迫了。这次切分,我们的目标是未来十年内不需要...转载 2020-03-21 21:44:00 · 252 阅读 · 0 评论 -
MySQL 性能优化神器 Explain 使用分析
简介MySQL 提供了一个 EXPLAIN 命令, 它可以对SELECT语句进行分析, 并输出SELECT执行的详细信息, 以供开发人员针对性优化.EXPLAIN 命令用法十分简单, 在 SELECT 语句前加上 Explain 就可以了, 例如:EXPLAIN SELECT * from user_info WHERE id < 300;准备为了接下来方便演示 ...原创 2020-03-21 16:36:50 · 223 阅读 · 0 评论 -
COUNT(1)和COUNT(*) 的区别
两者本质上没有任何区别。参见MYSQL 参考手册 InnoDBhandlesSELECT COUNT(*)andSELECT COUNT(1)operations in the same way. There is no performance difference.一、count情况1、count(1):可以统计表中所有数据,不统计所有的列,...原创 2020-03-21 02:56:35 · 13976 阅读 · 0 评论 -
【开机自启】Linux下设置MySql自动启动
1、将服务文件拷贝到init.d下,并重命名为mysqlcp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld2、赋予可执行权限chmod +x /etc/init.d/mysqld3、添加服务chkconfig --add mysqld4、显示服务列表chkconfig --list如果看到mysql的服务,并且3,4,...原创 2018-07-08 13:51:58 · 13711 阅读 · 1 评论 -
Innodb中的事务隔离级别和锁的关系
前言我们都知道事务的几种性质,数据库为了维护这些性质,尤其是一致性和隔离性,一般使用加锁这种方式。同时数据库又是个高并发的应用,同一时间会有大量的并发访问,如果加锁过度,会极大的降低并发处理能力。所以对于加锁的处理,可以说就是数据库对于事务处理的精髓所在。这里通过分析MySQL中InnoDB引擎的加锁机制,来抛砖引玉,让读者更好的理解,在事务处理中数据库到底做了什么。一次封锁or两段锁...原创 2020-03-20 21:47:05 · 160 阅读 · 0 评论 -
数据库并发控制 - 锁和 MVCC
在学习几年编程之后,你会发现所有的问题都没有简单、快捷的解决方案,很多问题都需要权衡和妥协,而本文介绍的就是数据库在并发性能和可串行化之间做的权衡和妥协 - 并发控制机制。如果数据库中的所有事务都是串行执行的,那么它非常容易成为整个应用的性能瓶颈,虽然说没法水平扩展的节点在最后都会成为瓶颈,但是串行执行事务的数据库会加速这一过程;而并发(Concurrency)使一切事情的发生都有了可能,...转载 2020-03-20 20:38:14 · 304 阅读 · 0 评论 -
MySQL 索引设计概要
在关系型数据库中设计索引其实并不是复杂的事情,很多开发者都觉得设计索引能够提升数据库的性能,相关的知识一定非常复杂。然而这种想法是不正确的,索引其实并不是一个多么高深莫测的东西,只要我们掌握一定的方法,理解索引的实现就能在不需要 DBA 的情况下设计出高效的索引。本文会介绍数据库索引设计与优化中设计索引的一些方法,让各位读者能够快速的在现有的工程中设计出合适的索引。磁盘 ...转载 2020-03-20 20:35:29 · 148 阅读 · 0 评论 -
『浅入深出』MySQL 中事务的实现
在关系型数据库中,事务的重要性不言而喻,只要对数据库稍有了解的人都知道事务具有 ACID 四个基本属性,而我们不知道的可能就是数据库是如何实现这四个属性的;在这篇文章中,我们将对事务的实现进行分析,尝试理解数据库是如何实现事务的,当然我们也会在文章中简单对 MySQL 中对 ACID 的实现进行简单的介绍。事务其实就是并发控制的基本单位;相信我们都知道,事务是一个序列操作,其中的操作要么都...转载 2020-03-20 20:32:48 · 154 阅读 · 0 评论 -
『浅入浅出』MySQL 和 InnoDB
MySQL 的架构MySQL 从第一个版本发布到现在已经有了 20 多年的历史,在这么多年的发展和演变中,整个应用的体系结构变得越来越复杂:最上层用于连接、线程处理的部分并不是 MySQL 『发明』的,很多服务都有类似的组成部分;第二层中包含了大多数 MySQL 的核心服务,包括了对 SQL 的解析、分析、优化和缓存等功能,存储过程、触发器和视图都是在这里实现的;而第三层就是 MySQ...转载 2020-03-20 20:28:45 · 137 阅读 · 0 评论 -
MySql 5.7 时间加默认值
1、时间精确到毫秒 DROP TABLE IF EXISTS aaa; CREATE TABLE aaa( create_date DATETIME(3) DEFAULT CURRENT_TIMESTAMP(3) COMMENT '测试时间' )例如:INSERT INTO `aaa` (create_date) VALUES( DEFAULT)...原创 2019-07-29 17:13:21 · 3096 阅读 · 0 评论 -
win10 下安装mysql8.0 zip
一、准备1、下载在 https://dev.mysql.com/downloads/mysql/下载mysql windows版本2、配置文件下载完成后解压mysql 在mysql的目录下新建一个my.ini文件在my.ini 文件中填写mysql的配置:[mysqld]# 设置3306端口port=3306# 设置mysql的安装目录basedir=D:...原创 2018-07-04 00:21:57 · 1050 阅读 · 0 评论 -
CentOS7 安装mysql8
一、下载mysql 1.1:在mysql官方网站下载 mysql linux版本下载地址https://dev.mysql.com/downloads/mysql/选择:1.2 root 用户登录修改host 执行命令:vi /etc/hosts 1.3、创建mysql 安装包的上传目录 执行:mkdir -p/usr/soft 给文件夹赋权...原创 2018-07-01 21:57:33 · 3247 阅读 · 0 评论 -
CentOS7.5 安装MySQL8 tar
1、查看是否安装mariadb执行命令:[root@mysql ~]# rpm -qa | grep mariadb显示:mariadb-libs-5.5.56-2.el7.x86_642、卸载mariadb执行命令:[root@mysql ~]# rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64 3...原创 2018-07-08 02:13:21 · 7580 阅读 · 3 评论