二进制 版本linux mysql

一步步带你设计MySQL索引数据结构

前言 MySQL的索引是一个非常重要的知识点,也基本上是面试必考的一个技术点,所以非常重要。那你了解MySQL索引的数据结构是怎么样的吗?为什么要采用这样的数据结构? 现在化身为MySQL的架构师,一步步迭代设计出MySQL的索引结构,保证你再也忘记不了索引的结构了,轻松通过面试。 索引介绍 MyS ......
数据结构 索引 结构 数据 MySQL

Vue 响应式原理模拟以及最小版本的 Vue的模拟

在模拟最小的vue之前,先复习一下,发布订阅模式和观察者模式 对两种模式有了了解之后,对Vue2.0和Vue3.0的数据响应式核心原理 1.Vue2.0和Vue3.0的数据响应式核心原理 (1). Vue2.0是采用Object.defineProperty的方式,对数据进行get,set方法设置的 ......
Vue 原理 版本

MYSQL-INNODB索引构成详解

作者:郑啟龙 摘要: 对于MYSQL的INNODB存储引擎的索引,大家是不陌生的,都能想到是 B+树结构,可以加速SQL查询。但对于B+树索引,它到底“长”得什么样子,它具体如何由一个个字节构成的,这些的基础知识鲜有人深究。本篇文章从MYSQL行记录开始说起,层层递进,包括数据页,B+树聚簇索引,B ......
MYSQL-INNODB 索引 INNODB MYSQL

《MySQL必知必会》之快速入门存储过程

使用存储过程 本章介绍什么是存储过程,为什么使用、如何使用,并介绍如何创建和使用存储过程的基本语法 存储过程 在实际应用中,往往需要执行多个表的多条sql语句 存储过程就是为以后的使用而保存的一条或者多条sql语句的集合 使用存储过程的好处:简单、安全、高性能 创建存储过程 需求:一个返回产品平均价 ......
过程 MySQL

MySQL中这14个牛逼的功能,惊艳到我了!!!

前言 我最近几年用MYSQL数据库挺多的,发现了一些非常有用的小玩意,今天拿出来分享到大家,希望对你会有所帮助。 1.group_concat 在我们平常的工作中,使用group by进行分组的场景,是非常多的。 比如想统计出用户表中,名称不同的用户的具体名称有哪些? 具体sql如下: select ......
功能 MySQL

MySQL JDBC驱动版本与数据库版本的对应关系及注意事项

事情发生 学了三遍的servlet,经典老师又教的第一万遍登陆注册,并且让实现,并且让演示,我们老师可能和之前的小学期公司老师 完全没有沟通过,我们小学期大作业都做了一个小项目出来还搁这登陆注册。 就把五个月前写的一个小项目拿出来,是一个类似菜鸟教程的网站,不过只有java的教程,这都是后话, 项目 ......
版本 注意事项 事项 数据库 数据

MySQL 的 NULL 值是怎么存储的?

大家好,我是小林。 之前有位读者在面字节的时候,被问到这么个问题: 如果你知道 MySQL 一行记录的存储结构,那么这个问题对你没什么难度。 如果你不知道也没关系,这次我跟大家聊聊 MySQL 一行记录是怎么存储的? 知道了这个之后,除了能应解锁前面这道面试题,你还会解锁这些面试题: MySQL 的 ......
MySQL NULL

mysql-DuplicateUpdate和java的threadpool的"死锁"

大家千万不要被文章的标题给迷惑了,他两在本篇文章是没有关系的, 今天给大家讲讲最近2个有意思的issue,分享一下我学到的 mysql DuplicateUpdate的用法要注意的点 java的threadpool使用不当会造成“死锁”问题 mysql DuplicateUpdate的用法要注意的点 ......

CAP 7.0 版本发布通告 - 支持延迟消息,性能炸了?

前言 今天,我们很高兴宣布 CAP 发布 7.0 版本正式版,我们在这个版本中带来了大批新特性以及对性能的优化和改进。 自从今年 1月份发布 6.0 版本以来,已经过去了快1年的时间。在过去的将近1年的时间里,我们也发布了几个次要版本和小版本(6.0.1, 6.1.0, 6.2.0, 6.2.1), ......
通告 性能 版本 消息 CAP

复现MySQL的索引选择失误以及通过OPTIMIZER_TRACE分析过程

复现MySQL的索引选择失误以及通过OPTIMIZER_TRACE分析过程 验证环境:MySQL 5.7.39 windows-pc 一、构造数据(生成150万数据) 构建一张账户表,带有一级部门id和二级部门id,并且建立有索引。比较典型的业务场景,根据部门id进行各类查询。 CREATE TAB ......

Linux系统各种库/软件版本输出指令

日常开发基于Linux系统(其实更多的是Ubuntu平台),平时总会遇到一些情况需要查看某个库或者软件的版本信息,在这里做一下简单的记录。 1. 查看glibc版本 方法一:使用ldd指令 cv@cv:~$ ldd --version ldd (Ubuntu GLIBC 2.23-0ubuntu11 ......
指令 版本 系统 Linux 软件

自动增加 Android App 的版本号

一般的 C# 应用程序中都有一个 AssemblyInfo.cs 文件,其中的 AssemblyVersion attribute 就可以用来设置该应用程序的版本号。譬如, [assembly: AssemblyVersion("1.0.*")] 这样设置的 AssemblyVersion attr ......
Android 版本 App

mysql基础问题三问(底层逻辑;正在执行;日志观察)

背景:经常面试会遇到且实际工作中也会应用到的三个场景: 目录: 一.mysql查询时的底层原理是什么? 二.如何查看正在执行的mysql语句? 三.如何观察mysql运行过程中的日志信息? - - - - - - - - - -分割线- - - - - - - - - - -一.mysql查询时的底 ......
底层 逻辑 正在 基础 问题

MySQL进阶实战5,为什么查询速度会慢

一、先了解一下MySQL查询的执行过程 MySQL在查询时,它是由很多子任务组成的,每个子任务都会消耗一定的时间,如果要想优化查询,实际上要优化其子任务,可以消除一些子任务、减少子任务的执行次数、让子任务执行的更快。 MySQL查询的执行过程:从客户端到服务器、然后在服务器进行解析、生成执行计划、执 ......
实战 速度 MySQL

MySQL进阶实战6,缓存表、视图、计数器表

一、缓存表和汇总表 有时提升性能最好的方法是在同一张表中保存衍生的冗余数据,有时候还需要创建一张完全独立的汇总表或缓存表。 缓存表用来存储那些获取很简单,但速度较慢的数据; 汇总表用来保存使用group by语句聚合查询的数据; 对于缓存表,如果主表使用InnoDB,用MyISAM作为缓存表的引擎将 ......
视图 缓存 计数器 实战 MySQL

前端学习 linux —— 软件安装(Ubuntu)

软件安装(Ubuntu) 本篇主要讲解 ubuntu 中软件的安装、apt 的源、内网部署案例(graylog 为例),最后是 python 开发准备。 apt 和 rpm 在linux 第一篇我们知道如果机器是 ubuntu 则可用 apt-get/dpkg 安装软件,如果是centos 则可用 ......
前端 Ubuntu linux 软件

MySQL数据库:2、MySQL的下载与安装、基本使用、系统服务制作

一、MySQL简介 ​ MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 二、安装与下载 1、下载流程 1、访问官方(www.mysql.com) 2、点击‘DOWNLOADS’,进入下载界面 3、下拉,找到‘ ......
MySQL 数据库 数据 系统

MySQL主从同步

1.什么是MySQL主从同步? “主”指的是MySQL主服务器(master),负责写请求。“从”指的是MySQL从服务器(slave),负责读请求。主从同步指的是将主服务器上的数据同步至从服务器。 2.为什么需要主从同步? 针对大流量,一台服务器已经不能满足要求。这个时候往往是将MySQL集群部署 ......
主从 MySQL

MySQL数据库:6、约束的概述及语法

Python基础之MySQL数据库 一、约束概述 1、为什么要约束 ​ 为了防止数据库中存在不符合语义规定的数据和防止错误信息的输入、输出造成无效的操作而提出的 ​ 为了保证数据的完整性,SQL规范以约束的方式对表数据进行额外的条件限制,从以下四个方面考虑 实体完整性:例如一个表中不能存在两条相同的 ......
语法 数据库 数据 MySQL

MySQL数据库:7、SQL常用查询语句

Python基础之MySQL数据库 一、SQL语句常用查询方法 前期数据准备 ​ 为了更加直观的展示、演示SQL语句查询关键字,需导入下列表格与记录(数据) ​ 模拟公司,导入创建公司员工表,表内包含:ID、姓名、年龄、工作时间、岗位 创建人员表格: create table emp( id int ......
常用查询 语句 常用 数据库 数据

MySQL 性能压测工具-sysbench,从入门到自定义测试项

sysbench是一个开源的、基于LuaJIT(LuaJIT 是 Lua 的即时编译器,可将代码直接翻译成机器码,性能比原生 lua 要高) 的、可自定义脚本的多线程基准测试工具,也是目前用得最多的 MySQL 性能压测工具。 基于 sysbench,我们可以对比 MySQL 在不同版本、不同硬件配 ......
sysbench 性能 工具 MySQL

Multipass,多平台本地轻量级Linux体验!

Multipass 是由Ubuntu官方提供,在Linux,MacOS和Windows上快速生成Ubuntu虚拟机的工具。它提供了一个简单但功能强大的CLI,可让我们在本地快速进入Ubuntu系统环境并使用Linux命令,亦可以在本地计算机创建自己的迷你型云服务器。总的来说就是在本地创建Ubuntu... ......
轻量 轻量级 Multipass Linux 平台

有来实验室|第一篇:Seata1.5.2版本部署和开源商城订单支付业务实战

有来实验室结合正式的商城订单支付业务场景将 Seata 分布式事务可视化,通过现象去看本质(原理和源码),告别被动式输入的短期记忆学习。 ......
实战 实验室 订单 版本 业务

MySQL锁,锁的到底是什么?

MySQL锁是解决资源竞争的一种方案。短短一句话却包含了3点值得我们注意的事情:1.对什么资源进行竞争?2.竞争的方式(或者说情形)有哪些?3.锁是如何解决竞争的?这篇文章开始带你循序渐进地理解这几个问题。 ......
MySQL

Linux 系统环境监测

Linux系统环境监测 Linux系统环境主要监测CPU、内存、磁盘I/O和网络流量。 1. CPU (1) 查看CPU的负载情况:uptime 可以通过uptime查看系统整体的负载情况。 如果服务器的CPU为1核心,则1分钟的系统平均负载 >=3 说明负载过高,如果服务器的CPU为4核心,则lo ......
环境监测 环境 系统 Linux

Linux面试题1:用户态和内核态

内核态和用户态 我们开发的服务代码,都是基于操作系统抽象提供的功能接口,进而操作相应的硬件资源。而硬件资源对于安全性要求非常高,所以对于安全性和系统稳定性而言,需要划定不同的应用程序运行级别。 Intel对于CPU的权限划分了四个等级0 ~ 3,linux采用了其中的0和2这两个等级。运行在0级别的 ......
内核 用户 Linux

Apache Dubbo 多语言体系再添新员:首个 Rust 语言版本正式发布

Dubbo Rust 定位为 Dubbo 多语言体系的重要实现,提供高性能、易用、可扩展的 RPC 框架,同时通过接入 Dubbo Mesh 体系提供丰富的服务治理能力。本文主要为大家介绍 Dubbo Rust 项目基本情况,通过一个示例快速体验 Rust 首个正式版本特性,并给出了 Dubbo R ......
体系 语言 版本 Apache Dubbo

Linux 基础-文件权限与属性

一个基本概念:任何装置在 Linux 下都是文件,数据沟通的接口也有专属的文件在负责,Linux 的文件种类繁多,常用的是一般文件(-)与目录文件(d)。 注意:Linux 文件类型和文件的文件名所代表的意义是两个不同的概念,在 linux 中文件类型与文件扩展名没有关系。它不像 Windows 那... ......
属性 权限 文件 基础 Linux

linux server设置开机自动连接WIFI

1.前言 之前买了一个工控机,装过几个OS(linux 发行版),但是一直没有细研究过流程,只是停留在能用就不管了,工控机自带无线网卡(和俩个有线网口),所以这篇文章好好介绍如何开机自动连接WIFI(无图形化界面)。 2.安装软件 首先系统我安装的是 ubuntu 18.04 server版 ,安装 ......
server linux WIFI

一步一图带你深入理解 Linux 物理内存管理

1. 前文回顾 在上篇文章 《深入理解 Linux 虚拟内存管理》 中,笔者分别从进程用户态和内核态的角度详细深入地为大家介绍了 Linux 内核如何对进程虚拟内存空间进行布局以及管理的相关实现。在我们深入理解了虚拟内存之后,那么何不顺带着也探秘一下物理内存的管理呢? 所以本文的目的是在深入理解虚拟 ......
物理 内存 Linux