从头mysql

记一次线上问题引发的对 Mysql 锁机制分析

最近双十一开门红期间组内出现了一次因 Mysql 死锁导致的线上问题,当时从监控可以看到数据库活跃连接数飙升,导致应用层数据库连接池被打满,后续所有请求都因获取不到连接而失败 ......
机制 问题 Mysql

mysql 操作详细教程

MySQL是一种流行的关系型数据库管理系统,用于存储和管理数据。下面是MySQL操作的详细教程: 安装MySQL:首先,你需要下载和安装MySQL。你可以从MySQL官方网站(https://www.mysql.com)上下载适合你操作系统的安装程序,并按照安装向导进行安装。 启动MySQL服务器: ......
教程 mysql

数据库性能查看-查看MySQL数据库操作记录

测试orm或者Django序列化器的时候,我需要知道他们都干了什么,这就需要打开MySQL的操作日志 进入MySQL的客户端命令界面: show variables like 'gen%'; + + + | Variable_name | Value | + + + | general_log | ......
数据库 数据 性能 MySQL

mysql跨库事务XA

XA的性能很低,但是没得选的时候,也是个方案 <?PHP $dbtest1 = new mysqli("127.0.0.1","public","public","dbtest1")or die("dbtest1 连接失败"); $dbtest2 = new mysqli("127.0.0.1pub ......
事务 mysql

为什么MySQL不建议使用delete删除数据?

总的来说,虽然MySQL并不直接建议禁止使用DELETE操作删除数据,但在特定情况下,频繁的DELETE操作可能会带来磁盘空间浪费、性能下降、事务日志膨胀等问题。由于DELETE操作是直接删除数据,一旦误操作或者需要恢复已删除的数据,将会面临一定的困难。DELETE操作通常会涉及表级锁定,这意味着在... ......
建议 数据 delete MySQL

Mysql主键不要使用uuid或者不连续不重复雪花id

一、简介 mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一,单机递增),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究竟有什么坏处? 二、对比 2.1、自增主键id 自增的主键的值是顺序的,所以Inno ......
雪花 Mysql uuid

MySQL学习(17)MVCC

前言 在聚簇索引中,每一条记录中包含trx_id和roll_pointer隐藏列。 trx_id存储了该记录最近一次修改时的事务id。 roll_pointer存储了该记录最近一次修改时产生的undo日志的地址。 undo日志中记录了修改前的数据,并且除了insert操作产生的undo日志外,对于u ......
MySQL MVCC 17

实现批量插入和更新(mysql)

在实际数据库应用中,经常需要实现插入或更新(插入新数据,如果已存在则更新已有数据)的功能。然而,在处理大量数据时,频繁的数据库 I/O 操作可能导致性能问题。 MySQL 批量插入和更新 使用INSERT ... ON DUPLICATE KEY UPDATE MySQL 提供了 INSERT .. ......
mysql

基于MFC框架的mySQL数据库访问计算器

该计算器是在上次基础上去掉了许多计算方法,只保留了基本的加减乘除四则运算,实现了用户登录功能,计算过程保留在数据库的功能: 第一步:创建数据库,以创建成功,下面是创建后的表格: 数据库名称为mydata,里面有两张表分别是computer以及user。 原本我想利用Nodejs中间件的方式让MFC应 ......
计算器 框架 数据库 数据 mySQL

JDBC之Mysql

一、JDBC是什么? Java DataBase Connectivity(Java语言连接数据库) 二、JDBC的本质是什么? JDBC是SUN公司制定的一套接口(interface)。 接口都有调用者和实现者。 面向接口调用、面向接口写实现类,这都属于面向接口编程。 三、为什么要面向接口编程? ......
Mysql JDBC

MySQL 导出表结构(含列名、数据类型、字段备注注释)导出成Excel

SELECT COLUMN_NAME 列名, COLUMN_COMMENT 名称 , column_key 主键, -- COLUMN_TYPE 数据类型, DATA_TYPE 字段类型, CHARACTER_MAXIMUM_LENGTH 长度, IS_NULLABLE 是否必填, -- COLUM ......
字段 注释 备注 类型 结构

Mysql中如何解决You can't specify target table '表名' for update in FROM clause报错

Mysql中如何解决You can't specify target table '表名' for update in FROM clause报错 为什么会出现这个错误呢?这是因为在MySQL使用时,在同一条SQL语句中,不允许先SELECT出同一个表的某些值,再对该表进行UPDATE操作。 解决方 ......
39 specify clause target update

MYSQL 事务的底层原理

事务的底层原理 在事务的实现机制上,MySQL 采用的是 WAL:Write-ahead logging,预写式日志,机制来实现的。 在使用 WAL 的系统中,所有的修改都先被写入到日志中,然后再被应用到系统中。通常包含 redo 和 undo 两部分信息。 为什么需要使用 WAL,然后包含 red ......
底层 原理 事务 MYSQL

Windows下如何快速移动MySQL/MariaDB数据库文件

近期遇到一个要迁移数据库的问题,用户说不希望数据库文件存在于C盘。查了一下资料,这里做个总结。这个方法适用于MySQL和MariaDB。 步骤如下: 1、停止数据库服务 2、将数据库移动到需要迁移的路径 3、修改安装路径data目录下的my.ini文件 4、将 datadir=xxx改成需要迁移的路 ......
Windows MariaDB 数据库 文件 数据

mysql5.7安装插件udp(lib_mysqludf_sys)

项目应用中需要用mysql执行一下命令行.几经搜索可以安装lib_mysqludf_sys插件可以实现 本地window环境安装(mysql8.0 , 64位 , 使用lib_mysqludf_sys.dll文件) -- 查看环境中插件目录 show variables like '%plugin% ......

MySQL基本数据类型简记

1、在MySQL整型数值范围 TypeStorage (Bytes)Minimum Value SignedMinimum Value UnsignedMaximum Value SignedMaximum Value Unsigned TINYINT 1 -128 0 127 255 SMALLI ......
简记 类型 数据 MySQL

MySQL - MySQL 占用内存涨得特别快?可能原因?解决方案

https://www.processon.com/mindmap/655307fe6a2ff722ead8d9e4 ......
MySQL 内存 解决方案 原因 方案

MySQL - 一条SQL查询语句是如何执行的

MySQL 的逻辑架构图 详细解答 https://www.processon.com/mindmap/655307fe6a2ff722ead8d9e4 ......
语句 MySQL SQL

服务器docker中redis和mysql连不上解决方法

问题描述 mysql报错: ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0 redis报错:(总之就是本地连不上docker中 ......
服务器 方法 docker redis mysql

mysql中select、from、where、group by、having、order by 、limit执行顺序

语法顺序:select->from->where->group by->having->order by -> limit执行顺序:from --> where -- > group by --> having --> select --> order by --> limit1)from子句组装来 ......
顺序 having select mysql group

手机centos下mysql安装,ARM架构下安装Mysql8.0数据库

只能安装使用Mysql 8.0版本,因为5.7版本在mysql官网没有适配,需要自己手动编译安装 一、下载镜像 https://downloads.mysql.com/archives/community/ 二、卸载系统自带的MySQL和MariaDB rpm -qa | grep mysql rp ......
架构 数据库 数据 centos Mysql8

macOS系统MySQL安装 新手详细教程(全网最详细)

1.打开终端 2.安装mysql,终端输入命令: brew install mysql 3.启动MySQL.终端输入命令: mysql.server start 4.查看MySQL版本以及是否成功安装,终端输入命令: mysql --version 5.配置MySQL的账号及密码.终端输入: mys ......
全网 新手 教程 系统 macOS

MYSQL主从复制

MYSQL主从复制 将主数据库(MASTER)的DDL和DML操作通过二进制日志传到从数据库(SLAVE),然后在从库重新执行(重做),从而使得从库数据和主库的数据保持同步 MYSQL主从复制要点有以下几个方面: 主库出现问题,可以快速切换到从库 实现读写分离,降低主库访问压力 可以在从库中执行备份 ......
主从 MYSQL

Docker 树莓派 mysql5.7

创建my.cnf [mysqld] ## server_id=1 ## binlog-ignore-db=mysql ## log-bin=replicas-mysql-bin ## binlog_cache_size=1M ## binlog_format=mixed ## expire_logs ......
树莓 Docker mysql5 mysql

查询mysql数据量,表数量脚本

# 查询数据库中每个库的数据量 SELECT table_schema AS "Database", SUM(data_length + index_length) / 1024 / 1024 AS "Size (MB)" FROM information_schema.TABLES GROUP B ......
脚本 数量 数据 mysql

SQLyog 连接 MySQL8.0 提示密码错误(错误号码:2508)

原因分析:MySQL 8.0 安装时自动为‘root’@'localhost’创建帐户,密码的加密方法发生了改变,因此 SQLyog 不能正常解析,才报出如上错误。 解决方法:可解决先安装 MySQL8.0 并且已经已对操作过数据库后,再安装 SQLyog 首次登陆会出现密码错误。 进入 cmd 输 ......
错误 号码 密码 SQLyog MySQL8

mysql数据表 Table is marked as crashed and should be repaired 的解决办法

问题 查询时,报 Table is marked as crashed and should be repaired 错误 错误原因 网上查了一下,错误的产生原因,有网友说是频繁查询和更新XXX表造成的索引错误,还有说法是Mysql数据库因某种原因而受到了损坏。 如:数据库服务器突发性断电,在数据表 ......
数据表 repaired crashed 办法 数据

mysql-partition库-创建数据库表分区、展示表分区最新字段

说明[tips] 提供mysql数据库的分区表最新分区查询,支持分区字段为DATE或TO_DAYS(date_str)类型的数据表新建分区,依赖库包括:"pandas", "pymysql", "sqlalchemy". [Provide the latest partition query for ......

Mysql数据库的四大语言

1.数据定义语言(DDL):用来创建数据库各种对象——表,视图,索引,同义词等,DDL操作是隐形提交的,不能roolback(回滚)的。 隐式提交包括:alter,comment,quit,creat,drop,rename等 2.数据操作语言(DML):1、查询 select from where ......
语言 数据库 数据 Mysql

Mysql数据库查询之分组查询

1.分组查询语法: SELECT 字段 1,字段 2 FROM 表名 where 条件 GROUP BY 分组字段 HAVING 条件 order by; 2. 统计类型: 求平均,求最大,求最小,求和等等 分组查询需要结合分组函数一起完成,常用的分组函数: COUNT(参数):统计查询语句返回的行 ......
数据库 数据 Mysql