业务mysql8 online mysql
蛋疼的mysql_ping()以及MYSQL_OPT_RECONNECT(转)
From: https://www.felix021.com/blog/read.php?2102 昨天@Zind同学找到我之前的一篇blog(已经修改),里面提到了mysql_ping和MYSQL_OPT_RECONNECT的一些事情。之所以写那篇blog,是因为去年写的一些代码遇到了“2006: ......
mysql5.7 wait_timeout (转)
参考:https://blog.csdn.net/ivory_town1/article/details/77702357 1.修改参数配置文件 vi /etc/my.cnf [mysqld] wait_timeout = 28800 interactive_timeout = 28800 #增加以 ......
rpm 安装mysql8
下载MySQL 安装包 https://dev.mysql.com/downloads 安装 rpm -ivh 包名 默认配置 /etc/my.cnf 初始化mysql mysqld --initialize --user=mysql --console 安装完密码默认存放在 /var/log/my ......
2023-12-28 js深拷贝的一些常见写法与业务场景
为什么要用深拷贝? 如果你有一下场景,那么就很需要用到深拷贝: var a = [1,2,3]; var b = a; b.push(4); console.log(a,b); 可以发现2个数组都是[1,2,3,4],为什么b发生改变会影响到原数组a呢? 原因:二者是属于浅拷贝的一种关系,引用了同一 ......
银河麒麟系统下完全mysql卸载
1. 下载卸载包首先,您需要下载MySQL数据库的卸载包。卸载包是一个脚本文件,它将协助您在系统上卸载MySQL数据库。您可以从MySQL官方网站下载该卸载包。 2. 停止MySQL服务在执行卸载之前,您需要停止MySQL服务。打开终端并运行以下命令: 终端命令:sudo service mysql ......
MySQL设置数据库为只读
原文链接:https://zhuanlan.zhihu.com/p/444587888 从库用:set global read_only = 1; 解开:set global read_only = 0; 主库为从库dump时用:flush tables with read lock; 解开:unl ......
MySQL-锁
按粒度划分 1.全局锁 概念 全局锁就是对整个数据库实例加锁。 应用场景 全库逻辑备份(mysqldump) 实现方式 MySQL 提供了一个加全局读锁的方法,命令是Flush tables with read lock (FTWRL)。 当你需要让整个库处于只读状态的时候,可以使用这个命令,之后其 ......
MYSQL高级SQL语句
SQL语句 SELECT 显示表格中一个或数个字段的所有数据记录 语法:SELECT "字段" FROM "表名"; SELECT Store_Name FROM Store_Info; DISTINCT 不显示重复的数据记录 语法:SELECT DISTINCT "字段" FROM "表名"; S ......
mysql怎么保证高可用的?
分布式系统,高可用是一个很重要的指标。 当选择 mysql 作为分布式系统的数据库,高可用也是必须要考虑的。 那么,mysql是如何保证高可用的呢? 有的同学可能听过一个词,叫做:mysql主备。 对,mysql就是通过主备来保证高可用。 搭建mysql主备,需要那些组件呢? 见名思义,首先需要一个 ......
docker安装mysql8 并配置大小写不敏感
docker安装mysql8 一. 准备好mysql配置文件my.cnf [mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 #basedir=/usr/local/mysql # 设置mysql数据库的数据的存放目录 #datadir=/usr/local/m ......
MySQL数据库-3
MySQL数据库-3 第14章_视图 #第14章_视图 /* 1.视图的理解 视图,可以看做是一个虚拟表,本身是不存储数据的。 视图的本质,就可以看做是存储起来的SELECT语句 视图中SELECT语句中涉及到的表,称为基表 针对视图做DML操作,会影响到对应的基表中的数据。反之亦然。 视图本身的删 ......
数据模型与极端业务场景
业务、产品、研发 研发对数据模型的设计依赖对PRD的理解,极端业务场景中研发无法感知 满足PRD中描绘的业务场景,增加更多的数据模型约束已达到强制满足描绘的业务场景,防止异常情况的处理,这种方式明显的会对后续适配实际极端业务场景造成改造工作量变大的问题 问题 1、那如何在涉及数据模型时有效的避免这个 ......
相关业务SHELL脚本
SHELL脚本: 基于shell实现不同服务器root密码的统一 遇到的问题: 发现旧密码如果含有一些特殊符号,如"}","{"等,使用expect的话就会出现问题。 #!/bin/bash #多个服务器修改密码的脚本 file=./10-bt.txt new_passwd='12\}2231321 ......
mysql_real_query与mysql_query 区别
mysql_real_query(&mysql, sql, strlen(sql)); //多了一个长度 mysql_query(&mysql, sql); 1、mysql_real_query sql语句中可以包含二进制数据,调用的时候多一个strlen 2、mysql_query sql语句只能 ......
MySQL 事务日志
MySQL 事务日志 事务有4种特性:原子性,一致性,隔离性和持久性。那么事务的四种特性到底是基于什么机制实现呢(是通过什么来控制的呢)? 事务的"隔离性"由 锁机制 实现(通过加锁来实现隔离)。 而事务的"原子性","一致性"和"持久性"由事务的 redo 日志 和 undo 日志 来保证 red ......
MySQL 8用户及权限管理
官方链接:https://dev.mysql.com/doc/refman/8.0/en/create-user.html The optional WITH clause is used to enable a user to grant privileges to other users. Th ......
MySQL 事务的基础知识
事务的基础知识 1. 数据库事务概述 事务是数据库区别于文件系统的重要特性之一,当我们有了事务就会让数据库中的数据始终保持 一致性,同时我们还能通过事务的机制 恢复到某个时间地点的数据,这样可以保证已提交到数据库的修改不会因为系统崩溃而丢失。 1.1 存储引擎的支持情况 查询当前 MySQL 支持的 ......
使用Mybatis自定义插件实现不侵入业务的公共参数自动追加
背景 后台业务开发的过程中,往往会遇到这种场景:需要记录每条记录产生时间、修改时间、修改人及添加人,在查询时查询出来。 以往的做法通常是手动在每个业务逻辑里耦合上这么一块代码,也有更优雅一点的做法是写一个拦截器,然后在Mybatis拦截器中为实体对象中的公共参数进行赋值,但最终依然需要在业务SQL上 ......
MySQL 数据目录
MySQL 的数据目录 1. MySQL 的主要目录结构 方式1:通过命令搜索 find / -name mysql 方式2(推荐):通过查看配置文件获取目录结构 vim /etc/my.cnf (重要)- my.cnf 配置信息说明 [mysqld] bind-address=0.0.0.0 po ......
麒麟下mysql安装及使用
1、进入软件商店--搜索mysql--安装mysql服务器和mysql工作台,重新启动系统; 2、检测mysql版本:显示mysql ver 8.0.33 终端命令:mysql --version 3、启动mysql服务进程 终端命令:sudo systemctl mysql 4、查看服务状态 终端 ......
18-mysql索引
一、b+树 每次查找数据时把磁盘IO次数控制在一个很小的数量级,最好是常数数量级。那么我们就想到如果一个高度可控的多路搜索树是否能满足需求呢?就这样,b+树应运而生(B+树是通过二叉查找树,再由平衡二叉树,B树演化而来)。 1.索引字段要尽量的小:通过上面的分析,我们知道IO次数取决于b+数的高度h ......
记一次Ubuntu Server Upgrade服务器升级导致的MySQL崩溃的问题
开篇介绍,大致两部分内容: ibdata1文件损坏导致MySQL崩溃无法启动 重装MySQL时忘记清空datadir和配置文件夹导致还是无法启动 在Ubuntu升级后 (18.04 to 22.04),MySQL突然不好用了(MySQL Version 8.0.36)。 Systemctl stat ......
17--MySQL优化
MySQL优化 一、优化工具: 1、系统优化工具 1.1 top (1)简介: 实时监控当前操作系统的负载情况的,每秒刷新一次状态,通常会关注三大指标(CPU、MEM、IO) (2)评判标准 (2.1) 整体的负载情况,判断标准,如果值非常高,只能告诉我们操作系统很繁忙 load average: ......
13-Mysql备份恢复
一、备份的类型 冷备份:关闭数据、停止业务 温备份:加锁备份 热备份:在先备份,不会影响到也正常运行 二、备份方式 2.1 逻辑备份:基于SQL语句的备份 mysqldump建库、建表、数据插入 基于二进制日志:数据库的所有变化类的操作 基于复制的备份:将二进制日志实时传送到另一台机器并且恢复 2. ......
14-Mysql主从复制
一、mysql复制原理 1.1 主从复制原理过程 从库的I/O thread 线程会读取master info 文件 获取主库的 user,password port信息然后还会获取上次获取主库二进制日志的位置 如3640 就是00003这个文件640这个位置,主库收到从库的请求后,会验证用户名密码 ......
12-Mysql的日志管理
一、mysql常见日志 二、错误日志 配置方法: [mysqld] log-error=/data/mysql/mysql.log 查看配置方式: mysql> show variables like '%log%error%'; 作用: 记录mysql数据库的一般状态信息及报错信息,是我们对于数据 ......
面试官:MySQL 到底是 join 性能好,还是 in 一下更快呢?被问懵逼了…
来源:https://juejin.cn/post/7169567387527282701 先总结: 数据量小的时候,用join更划算 数据量大的时候,join的成本更高,但相对来说join的速度会更快 数据量过大的时候,in的数据量过多,会有无法执行SQL的问题,待解决 事情是这样的,去年入职的新 ......
11-MySQL 存储引擎
MySQL 存储引擎 可以理解为,MySQL的“文件系统”,(插件形式存在)只不过功能更加强大。mysql提供的存储引擎有InnoDB、MyISAM等 TokuDB 是第三方的存储引擎moardb,数据压缩比打,写入数据快,如果你的应用是读多写少的情况强烈建议使用此存储引擎 innodb存储引擎的功 ......
09-MySQL 索引管理及执行计划
一、mysql索引类型 BTREE:B+树索引 (常用) HASH:HASH索引 FULLTEXT:全文索引 RTREE:R树索引 二、索引分类 主键索引 普通索引*** ** 唯一索引 三、索引基本管理 创建和删除: alter table stu add index idx_name(stu_n ......
04-Mysql多实例
多实例就是多套线程和多各进程和多个预分配的内存结构 配置思路 启动多个mysqld进程 规划多套数据 规划多个端口 规划多套日志路径 配置例子 1、创建多套目录 mkdir -p /data/330{7,8,9} 2、准备多套配置文件 vi /data/3307/my.cnf [mysqld] ba ......