-
Oracle专题7之多表查找
所属栏目:[MySql教程] 日期:2022-04-02 热度:136
什么是多表查询? 多表查询就是从多个表中获取数据。 1、笛卡尔集 笛卡尔集是集合中的一种。假设A和B都是集合,A和B的笛卡尔集用 A B来表示。即A B所形成的集合叫做笛卡尔集。 下表中,部门表员工表即为部门表和员工表的笛卡尔集。(可以看出,部门表员工[详细]
-
mysql btree索引概论
所属栏目:[MySql教程] 日期:2022-04-02 热度:139
今天研究下,mysql中的B-tree索引,通过这篇文章你可以了解到,mysql中的btree索引的原理,检索数据的过程,innodb和myisam引擎中btree索引的不同,以及btree索引的好处和限制。 B-Tree 索引是 MySQL 数据库中使用最为频繁的索引类型,除了 Archive 存储引[详细]
-
MHA高可用架构工作原理?主库宕机处理步骤
所属栏目:[MySql教程] 日期:2022-04-02 热度:92
主库宕机处理过程: 1. 监控节点 (通过配置文件获取所有节点信息) 系统,网络,SSH连接性 主从状态,重点是主库 2. 选主 (1) 如果判断从库(position或者GTID),数据有差异,最接近于Master的slave,成为备选主 (2) 如果判断从库(position或者GTID),数据一致,按照[详细]
-
之于mycat读写分离主从切换策略的调研
所属栏目:[MySql教程] 日期:2022-04-02 热度:140
当从库宕机后,读请求会全部转移到主库上,对业务无影响。 1、当主库宕机后 目前,我们的writehost只设置了一个主库,当主库宕机后,通过mycat的 读写请求会全部报错,如下所示: 读请求: mysql select * from t1; ERROR 1184 (HY000): 拒绝连接 写请求:[详细]
-
数据库和表操作
所属栏目:[MySql教程] 日期:2022-04-02 热度:84
-- 创建数据库 -- 创建 classroom 数据库 create database 数据库名 default character set 字符编码 collate 排序规则; eg: create database classroom default character set utf8 collate utf8_general_ci; -- 查看所有数据库 show databases; -- 选择[详细]
-
初识MariaDB之1——MariaDB的安装
所属栏目:[MySql教程] 日期:2022-04-02 热度:154
初识MariaDB之1MariaDB的安装: 一、MariaDB介绍 MariaDB是Mysql在被Oracle收购后由原作者重新开发的一种关系型数据库程序,由于是同一个作者,所以在操作上与Mysql十分类似,版本也是相互对应,如:MariaDB5.5对应Mysql的5.5版本,但从Mysql5.6开始对应的[详细]
-
说GTID - GTID的组成和存储
所属栏目:[MySql教程] 日期:2022-04-02 热度:85
GTID是什么 GTID(Global Transaction Identifier)是事务在第一次提交时获取到的唯一标识,该标识在整个的复制拓扑中具有唯一性。 GTID组成 GTID = source_id:transaction_id(c4e5d4a0-a9be-11e9-b444-080027f22add:7) 直观看,GTID有两部分组成,sourc[详细]
-
pt-query-digest查询日志分析工具
所属栏目:[MySql教程] 日期:2022-04-02 热度:148
pt-query-digest查询日志分析工具: 用法示例 (1)直接分析慢查询文件: pt-query-digest slow.log slow_report.log (2)分析最近12小时内的查询: pt-query-digest --since=12h slow.log slow_report2.log (3)分析指定时间范围内的查询: pt-query-digest sl[详细]
-
MySQL 5.7安装部署总结
所属栏目:[MySql教程] 日期:2022-04-01 热度:180
之前搭建MySQL环境都是使用公司内部使用的脚本,其实说实话屏蔽了很多细节,对MySQL的安装还是了解比较肤浅,今天有个MySQL 5.7的数据迁移的任务,也是为了熟悉安装过程就走了一遍安装的流程,整体和5.6差别不大,这里演示安装的都是Percona发布的二进制版[详细]
-
MySQL 产生大量小relay log的故障一例
所属栏目:[MySql教程] 日期:2022-04-01 热度:84
MySQL 产生大量小relay log的故障一例: 一、案例来源和现象 这个案例是朋友 @peaceful遇到的线上问题,最终线索也是他自己找到的。现象如下: 1、出现了大量很小的relay log如下,堆积量大约2600个: ... -rw-r----- 1 mysql dba 12827 Oct 11 12:28 mysq[详细]
-
mysqldump简单解析
所属栏目:[MySql教程] 日期:2022-04-01 热度:165
MySQL中的mysqldump,真是一个经典而有效的工具,经常用,但是不知道后台运行的过程中到底在干些什么,其实如果想得到这些基本的信息不一定要去看代码,我们通过日志的方式就能一窥其中的奥妙。 如果想看到里面的一些较为细节的日志,开个general log就可[详细]
-
MySQL count count 字段 实现上差别
所属栏目:[MySql教程] 日期:2022-04-01 热度:81
水平有限如有误请指出 源码版本:5.7.22 我们继续来讨论一下count(*) count(字段) 实现上的区别。注意我们这里都使用Innodb做为存储引擎,不讨论其他引擎。因为了有了前面的讨论,更容易看出它们的区别,这里我们有如下注意点: 我们需要做到执行计划一样[详细]
-
MySQL连接查询流程源码
所属栏目:[MySql教程] 日期:2022-04-01 热度:89
初始化: 点击(此处)折叠或打开 main |-mysqld |-my_init // 初始话线程变量,互斥量 |-load_defaults // 获取配置 |-init_common_variables // 初始化变量 |-init_server_components // 初始化插件 | |-plugin_init | | |-plugin_initialize | |-initializ[详细]
-
try restarting transaction参数控制
所属栏目:[MySql教程] 日期:2022-04-01 热度:192
Lock wait timeout exceeded; try restarting transaction 锁等待超时。。回滚事务。。 当事务1 获得锁 start TRANSACTION update user set username=gh4g where id=2;#获得锁 此时 事务2 开始事务 start TRANSACTION update user set username=m3mm where[详细]
-
mysql学习笔记之备份与恢复
所属栏目:[MySql教程] 日期:2022-04-01 热度:165
相关关键词: 策略规划,恢复演练,还原与恢复 恢复点目标(PRO):容忍丢失多少数据 恢复时间目标(RTO):需要多久将数据恢复 备份理由:灾难恢复,错误修改,审计,测试 逻辑备份与恢复 备份 ##查看帮助 mysqldump --help ##备份某个表 mysqldump -uroo[详细]
-
MySQL高可用方案MHA在线切换的步骤及原理
所属栏目:[MySql教程] 日期:2022-04-01 热度:114
在日常工作中,会碰到如下的场景,如mysql数据库升级,主服务器硬件升级等,这个时候就需要将写操作切换到另外一台服务器上,那么如何进行在线切换呢?同时,要求切换过程短,对业务的影响比较[详细]
-
MySQL基础篇 事务管理,锁机制案例详解
所属栏目:[MySql教程] 日期:2022-04-01 热度:127
MySQL基础篇 事务管理,锁机制案例详解: 一、锁概念简介 1、基础描述 锁机制核心功能是用来协调多个会话中多线程并发访问相同资源时,资源的占用问题。锁机制是一个非常大的模块,贯彻MySQL的几大核心难点模块:索引,锁机制,事务。这里是基于MySQL5.6演[详细]
-
mysql 查询语句可以使用的函数总结
所属栏目:[MySql教程] 日期:2022-04-01 热度:136
mysql 查询语句有时候需要用到函数,但是函数比子查询的效率要高,有时候函数还是很方便的,下面简单总结sql函数具体用法。 1,对数字处理函数 avg() count() max() min() sum() 2,对字符串的处理 合并字符串函数:concat(str1,str2,str3) 比较[详细]
-
怎样在磁盘上查找MySQL表的大小?此处有答案
所属栏目:[MySql教程] 日期:2022-04-01 热度:156
我想知道 MySQL 表在磁盘上占用多少空间,但看起来很琐碎。不应该在 INFORMATION_SCHEMA.TABLES 中提供这些信息吗?没那么简单! 这个看似简单的问题实际上在 MySQL 中非常复杂。MySQL 支持许多存储引擎(其中一些根本不在磁盘上存储数据), 不同的存储数据格[详细]
-
关于innodb中查询的定位方式
所属栏目:[MySql教程] 日期:2022-04-01 热度:59
涉及源码文件 page0cur.cc page0page.h page0page.cc rem0cmp.cc 为什么谈及定位方法,因为在innodb中,比如一个插入语句我们需要定位在哪里插入(PAGE_CUR_LE),比如一个查询语句我们需要定位到其第一个需要读取数据的位置,因此定位方法是查询的根本。而[详细]
-
CentOS 6.7下源码编译安置MySQL 5.7.5
所属栏目:[MySql教程] 日期:2022-04-01 热度:159
CentOS 6.7下源码编译安置MySQL 5.7.5: 1. 安装相关工具 # yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib libxml libgcrypt libtool bison 2. 清理环境 检查boost版本: # rpm -qa boost* 卸载boost-*等库: # yum -[详细]
-
MySQL权限表简介
所属栏目:[MySql教程] 日期:2022-04-01 热度:97
MySQL权限表存放在MySQL数据库里,由mysql_install_db脚本初始化。这些MySQL权限表分别为user、db、table_priv、 columns_priv、proc_priv和host。 表结构内容简单介绍: user权限表:记录允许连接到服务器上的用户账号信息,其中的权限是全局级的。 db权限[详细]
-
MySQL 5.7和8.0 MHA结构下sysbench压测
所属栏目:[MySql教程] 日期:2022-04-01 热度:90
sysbench压测环境: sysbench server:172.16.7.105 压测数据库服务器:MHA架构,172.16.7.100(主节点)、172.16.7.101、172.16.7.102 MySQL在172.16.7.105(安装MySQL5.7.26)部署目录:/opt/mysql/ 主要压测172.16.7.100主节点 172.16.7.100配置: MySQ[详细]
-
连接数过多,应急处理方法
所属栏目:[MySql教程] 日期:2022-04-01 热度:181
连接数过多,应急处理方法: 一、问题描述 今天突然接到个问题,网页报错:503 Service Temporarily Unavailable。经过查询发现是某个用户的连接超级多,已经将数据库连接占满。处理方案,即时杀掉堵塞的进程,之后可以扩大max_connections参数。 二、处理[详细]
-
Mysql 5.7 Gtid内部学习 Mysql开启初始化Gtid模块
所属栏目:[MySql教程] 日期:2022-04-01 热度:184
本节也是一个重头戏,后面的故障案例也和本节有关。本节将详细介绍Gtid模块的初始化,以及什么时候读取了我们前文提及的两个Gtid持久化介质: binlog文件 mysql.gtid_executed表 此外也会描述他们的读取方式。 同时分析这个步骤我也将在重点步骤分为两种情[详细]