从头mysql

MySQL-DQL

准备测试表,先跟着执行下面的SQL ```sql #1.登录MySQL后 #2.创建test_database数据库,不存在则创建 create database if not exists test_database; #2.1.如果test_database库存在,可以根据自己意愿删除或换个名称 ......
MySQL-DQL MySQL DQL

MySQL学习进阶篇Day1

1. 存储引擎 1.1 MySQL体系结构 1). 连接层 最上层是一些客户端和链接服务,包含本地sock 通信和大多数基于客户端/服务端工具实现的类似于 TCP/IP的通信。主要完成一些类似于连接处理、授权认证、及相关的安全方案。在该层上引入了线程 池的概念,为通过认证安全接入的客户端提供线程。同 ......
MySQL Day1 Day

Mysql数据库遇到的问题及解决办法

1、1205 - Lock wait timeout exceeded; try restarting transaction 该异常代表数据库中有进程锁住了,会导致后续对数据库的操作都无法执行,需要杀掉锁住的进程 解决办法: 1)、SELECT * FROM information_schema. ......
办法 数据库 数据 问题 Mysql

【MySQL】【锁】MySQL 记录锁+间隙锁可以防止删除操作而导致的幻读吗?

1 前言 我们这节讨论下 记录锁+间隙锁可以防止删除操作而导致的幻读吗?答案是可以的哈。 2 什么是幻读 首先来看看 MySQL 文档是怎么定义幻读(Phantom Read)的: The so-called phantom problem occurs within a transaction w ......
MySQL 间隙

【MySQL】【锁】MySQL update 没加索引会锁全表?

1 前言 我们这节讨论下 update 语句修改数据库数据的时候,where 条件没有带上索引,会导致锁表么,说个前提,接下来说的案例都是基于 InnoDB 存储引擎,且事务的隔离级别是可重复读。 2 为什么会发生这种现象 InnoDB 存储引擎的默认事务隔离级别是「可重复读」,但是在这个隔离级别下 ......
MySQL update

MySQL基础

MySQL是一种开源的关系型数据库管理系统(RDBMS),由瑞典的MySQL AB公司开发。MySQL是目前最流行的关系型数据库之一,广泛应用于Web应用程序、企业级应用和大数据处理等领域。 ......
基础 MySQL

mysql之ddl之trancate

截断,trancate table tk_student 即保留表结构,重新建表tk_student 相比于delete这种dml,对数据操作(一条一条删除数据)的语句,效率要高很多。 但delete也有优点,即可以回滚事务(反悔),而trancate(隐式提交)不能回滚(反悔) 两种方法删除数据后 ......
trancate mysql ddl

MySQL - mysql 面试题

事务的四个特点是什么?他们的实现原理是什么? mysql的redolog、undolog、binlog分别有什么作用? 什么是二阶段提交,如何保证宕机时数据的一致性? MVCC如何实现多版本并发控制?如何解决读写冲突? mysql中的幻读是什么?如何解决幻读问题? 事务的四个特点是什么?他们的实现原 ......
MySQL mysql

MySQL事务隔离级别

一、事务的四大特性 原子性(Atomicity):事务是最小的执行单位,不允许分割。事务的原子性确保动作要么全部完成,要么完全不起作用; 一致性(Consistency):执行事务前后,数据保持一致,例如转账业务中,无论事务是否成功,转账者和收款人的总额应该是不变的; 隔离性(Isolation): ......
级别 事务 MySQL

MySQL存储引擎精简版

# 存储引擎 ## 简介 概念:其是存储数据,建立索引,更新查询数据等操作的技术支持,引擎是基于表的,所以又称表结构 ## 常见分类 ### InnoDB MySQL5.5之后默认引擎 特点: 1.操作遵循ACID原则,支持事务 2.支持行锁 3,支持外键约束 ### MyISAM MySQL早期默 ......
引擎 MySQL

mysql语言

DQL:数据查询语言->数据 select+from+where DML:数据操作语言->数据 insert、update、delete DDL:数据定义语言->数据库对象(数据库,表,索引,触发器,存储过程,函数) create alter:修改数据库对象 drop DCL:数据控制语言 gran ......
语言 mysql

MySQL索引高级进阶详解-玩转MySQL数据库

# 前言 从今天开始本系列文章就带各位小伙伴学习数据库技术。**数据库技术是Java开发中必不可少的一部分知识内容。也是非常重要的技术。本系列教程由浅入深, 全面讲解数据库体系。非常适合零基础的小伙伴来学习。** *** 全文大约 **【1957】字**,不说废话,只讲可以让你学到技术、明白原理的纯 ......
MySQL 索引 数据库 数据

MySQL索引

一、索引介绍 1、索引是一种用于快速查询和检索数据的数据结构,其本质可以看成是一种排序好的数据结构。 2、优缺点: 使用索引可以大大加快 数据的检索速度(大大减少检索的数据量), 这也是创建索引的最主要的原因 创建索引和维护索引需要耗费许多时间。 索引需要使用物理文件存储,也会耗费一定空间。 3、分 ......
索引 MySQL

Oracle迁移到MySQL时数据类型转换问题

最近在做“去O”(去除Oracle数据库)的相关工作,需要将Oracle表结构转换成MySQL的表结构。这里面最重要的一点就是字段数据类型的变化。 1.ORACLE常用的数据类型与MySQL的对应关系 2.Oracle 中 varchar2(N) 与 varchar2(N char) 的区别 var ......
类型 数据 Oracle 问题 MySQL

记一次windows装docker,然后nacos连接宿主机mysql报错问题

之前一直用linux装docker,这两天有空研究下windows上装Docker Desktop。 安装步骤就不一一细说了,记录几个容易忘得地方。 设置docker镜像存储位置 //打包现有镜像 wsl --export docker-desktop-data "D:\\work\\other-t ......
宿主机 宿主 windows docker 问题

【MySQL】【锁】MySQL 中的加行锁过程详解

1 前言 上节我们看了MySQL有哪些锁,那么这节我们就来看看MySQL的加锁过程,什么样的操作下加了什么样的锁等。 我先在这里给大家补充一个知识点:比如我的主键有:1、3、5 1的间隙锁是:(-oo,1) 1的next-key锁也就是临键锁是:(-oo,1] 3的间隙锁是:(1,3) 3的next ......
MySQL 过程

django 使用mysql数据库

1.手动创建mysql数据库,比如xadmin create database xadmin charset=utf8; 2.配置django项目setting.py文件中的数据库设置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends. ......
数据库 数据 django mysql

MYSQL 超时问题排查过程

发现疑点 通过IT的监控发现存在负载(Load)最高了两个SQL如下: SELECT * FROM `wobshiporder` WHERE `WOBShipOrderID` = ? FOR UPDATE INSERT INTO `WOBShipOrder` ( `OAID` , `IsDecryp ......
过程 问题 MYSQL

MYSQL性能优化-CPU/内存/磁盘

CPU 配置MYSQL的IO线程与CPU核数一致。通过以下命令查看当前配置的配置,默认4 #show variables like ‘%_io_threads’; 只能通过修改配置文件来修改以上的配置 innodb_read_io_threads=16 innodb_read_write_threa ......
磁盘 内存 性能 MYSQL CPU

MYSQL双一配置对对写入性能影响

innodb_flush_log_at_trx_commit介绍 通过以下命令可以查询/设置innodb_flush_log_at_trx_commit的值: #select @@innodb_flush_log_at_trx_commit; #set global innodb_flush_log ......
性能 MYSQL

The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement 默认情况下,启动MySQL数据库实例期间,会读取所有的权限表条目到内存中,后续被缓存到内存中的权限条 ......

MySQL快速安装配置及相关命令

* 安装 1. 下载 https://dev.mysql.com/downloads/mysql/ 2. 配置,解压并建立初始化配置文件my.ini,内容如下: ``` [mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir=D:\mysql-8.0 ......
命令 MySQL

Mysql:低版本的mysql,5.7-,不知道root密码,如何控制(增、删、改、查)mysql.user:变相跳过mysql的用户认证

可以通过直接在mysqld的服务器上,通过os层的文件操作+为mysqld进程发送sighup(-1)信号实现。 原理: 低版本的mysql,5.7-,其用户账号是通过mysql系统库下的user系统表来控制的; 而,mysql.user表是myisam引擎表; 所以,我们只要将user.frm\u ......
mysql 密码 版本 用户 Mysql

关于MYSQL连接后关闭连接问题

因为创建连接并注册驱动时可能会错先错误,但是链接还是会进行创建 ,如果不判断连接Connection为不为空就关闭的话会引起空指针异常,同理ResultSet、PreparedStatement也是如此。 创建顺序是从Connection->Preparedstatment->ResultSet,关 ......
问题 MYSQL

docker启动mysql失败

root@ecs-kc1-small-1-linux:~# docker run -p 3306:3306 mysql:8-oracle2022-03-05 13:40:49+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server ......
docker mysql

docker导出mysql软件包

查看镜像:docker images 导出镜像:docker save 05db07cd74c0 >E:\mysql.tar 导入镜像: 在新电脑上执行命令: docker load -i C:\Docker\redis.tar C:\Docker\redis.tar 为压缩文件路径, 此时需要一定 ......
软件包 docker mysql 软件

MySQL Binlog 权限

Check binlog status -- https://github.com/alibaba/canal/wiki/AdminGuide show variables like 'log_bin'; show variables like 'binlog_format'; MySQL Binl ......
权限 Binlog MySQL

mysql删除表数据,释放空间

1.当RDS磁盘报警的时候,不能降配时候,需要删除部分日志表,释放空间。 TRUNCATE 只能删除整个表或者整个分区的数据,不能删除部分行。如果需要删除部分行,应该使用 DELETE 命令。 使用DELETE后,空间还不能释放,执行OPTIMIZE TABLE tablename; 释放空间 ......
数据 mysql 空间

在Linux中优雅的安装MYSQL

首先我们需要准备一个Linux环境,和一个MySql的安装包(本次采用的mysql安装包版本为:8.0.27) 把文件放在linux下的/usr/local目录下 对文件进行解压 3.1:tar -xvf mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz --解压 ......
Linux MYSQL

MySQL8中binlog过期参数

binlog_expire_logs_seconds 设置二进制日志过期时间(以秒为单位)。二进制日志文件过期后,可以被自动删除。可能的删除发生在启动时和刷新二进制日志(flush logs、或日志容量超过max_binlog_size的设置)时。 默认的二进制日志过期时间为2592000秒,即30 ......
参数 MySQL8 binlog MySQL