
原理与概念
文章平均质量分 66
Z.l_
这个作者很懒,什么都没留下…
展开
-
B+树相关数据结构和算法
二分查找法二分查找法(binary search)也称为折半查找法,用来查找一组有序的记录数组中的某一记录,简单来讲就是将记录按照有序化(递增递减)排列,在查找过程中采用跳跃式方式查找,即先以有序序列的中间位置为比较对象,如果要找的元素值小于该中点元素,则将待查序列缩小为左半部分,否则为右半部分。一次比较将查找区间缩小一半。具体如下:这里有10个数字,现在需要查找48这条记录,二分法查找过程如上,第一次查找为37,48大于37所以在右侧再次二分法查询,这次定位为50大于48在左侧查询,可以得到48,整原创 2021-01-27 14:53:43 · 600 阅读 · 0 评论 -
关于视图: V$RMAN_BACKUP_JOB_DETAILS
该视图记录了rman备份的相关信息,主要内容如下:SQL> desc V$RMAN_BACKUP_JOB_DETAILS; Name Null? Type ----------------------------------------- -------- ---------------------------- SESSION_KEY原创 2021-01-26 09:53:58 · 1131 阅读 · 0 评论 -
xtrabackup原理
1.什么是xtrabackupPercona-xtrabackup是 Percona公司开发的一个用于MySQL数据库物理热备的备份工具,支持MySQL、Percona server和MariaDB,开源免费,是目前较为受欢迎的主流备份工具。开源、免费的MySQL热备份软件,它可以为InnoDB和XtraDB数据库执行非阻塞备份(对于MyISAM的备份同样需要加表锁)。在实际生产环境中增量备份是非常实用的,如果数据大于50G或100G,存储空间足够的情况下,可以每天进行完整备份,如果每天产生的数据量较大原创 2020-12-17 09:31:10 · 402 阅读 · 0 评论 -
oracle自动启动脚本
oracle自动启动脚本/etc/oratab介绍系统版本:CentOS release 6.8 (Final)数据库版本:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production核心文件:/etc/oratab注:如果相应目录下没有该文件,可以使用find命令进行查找复制关于该文件的说明:文件内容格式:$ORACLE_SID:$ORACLE_HOME:[Y/N]第一和第二字段分别是数据库的系原创 2020-12-17 09:22:25 · 962 阅读 · 0 评论 -
MySQL相关文件——二进制日志
MySQL二进制日志—binlog一、什么是二进制日志1.概念 二进制日志被称为binlog,它会记录所有的修改数据库的语句或者有可能改变数据库的语句,但是像select,show等不会对数据库进行写操作的语句不会被记录。2.具体分析 二进制日志,内容是二进制的也就是说使用cat等命令是无法直接查看的,在二进制日志中有着“事件”,“位置”的概念的。**事件:**events。在binlog中每一条记录都可以当作是一个“事件”,因为二进制日志记录的是对数据库的修改,也就是每有一次修改就原创 2020-11-03 11:28:25 · 176 阅读 · 0 评论 -
MySQL相关文件——Innodb存储引擎文件
上面说的都是MySQL本身的文件,与存储引擎无关。除了这些文件外,每个表存储引擎都还有自己独有的文件:表空间文件重做日志文件1. 表空间文件Innodb采用将存储的数据按照表空间(tablespace)进行存放的设计。在默认配置下会有一个初始大小为10MB名为ibdata1的文件。这个文件就是默认的表空间文件(tablespace file),可以通过参数innodb_data_file_path对其进行设置。查看参数对应值:mysql> show variables like原创 2020-11-03 11:26:01 · 276 阅读 · 0 评论 -
MySQL相关文件——表结构定义文件
因为MySQL插件式存储引擎体系结构的关系,MySQL数据的存储是根据表进行的,每个表都有一个与之对应的文件。但不论采用什么存储引擎,MySQL都有一个以frm为后缀名的文件(这个特性在MySQL8中被取消),这个文件记录了该表的表结构定义。frm还用来存放视图的定义,如下所示创建一个v_a视图,那么相应的也会产生一个v_a.frm文件,用来记录视图的定义,这个文件是文本文件,可以直接使用cat命令进行查看。mysql> create or replace view v_a as select原创 2020-11-03 11:25:22 · 472 阅读 · 0 评论 -
MySQL相关文件——PID文件
在MySQL实例启动的时候,会把自己的进程ID写入到一个文件中,这个文件就是PID文件。这个文件可以通过参数pid_file进行控制,默认位于数据库目录下,文件名为主机名.pid。当MySQL关闭实例后这个文件也会随之消失。查看pid文件信息:mysql> show variables like 'pid_file'\G*************************** 1. row ***************************Variable_name: pid_file原创 2020-11-03 11:24:29 · 3216 阅读 · 0 评论 -
MySQL相关文件——套接字文件
MySQL有两种主要的连接方式:常用的还是TCP连接:[root@mysql8 data]# mysql -h 192.168.103.67 -uroot -pEnter password: Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 14Server version: 8.0.15 MySQL Community Server - GPLCopyright (c)原创 2020-11-03 11:23:47 · 297 阅读 · 0 评论 -
MySQL相关文件——日志文件
日志文件记录了影响MySQL数据库的各种类型活动。MySQL数据库中常见的日志文件有:错误日志(error log)二进制日志(binlog)慢查询日志(slow query log)查询日志(log)1. 错误日志(error log)错误日志记录了MySQL启动,运行,关闭的过程。当数据库出现问题的时候应该首先查看该文件来定位问题。注意:错误日志并不只会记录数据库所有的错误信息,也会记录一些警告信息和正确信息。查看数据库错误日志的位置:show variables l原创 2020-11-03 11:22:43 · 937 阅读 · 0 评论 -
MySQL相关文件——参数文件
1.参数文件当MySQL实例启动的时候,数据库会先去读取一个配置参数文件,用来寻找数据库各种文件的所在位置及指定某些初始化参数,这些参数通常定义了某种内存结构有多大等,在默认情况下,MySQL实例会按照一定顺序在指定的位置进行读取,可以使用mysql --help | grep my.cnf来进行寻找。[root@mysql8 ~]# ps -ef | grep mysqldmysql 65894 1 0 14:56 ? 00:00:00 /bin/sh /usr/原创 2020-11-03 11:21:14 · 357 阅读 · 0 评论 -
MySQL存储引擎介绍
MySQL的组成部分:连接池组件管理服务和工具组件SQL接口组件查询分析器组件优化器组件缓冲组件(cache)插件式存储引擎(相比其他数据库比较大的区别)物理文件存储引擎是底层物理结构的实现,每个存储引擎的开发者可以按照自己的意愿来开发存储引擎是基于表的,而不是数据库。MySQL的存储引擎MySQL数据库独特的插件式存储引擎结构,每个存储引擎都有自己的特点,能够根据不同的应用建立不同存储引擎的表。MySQL开源特性使得用户可以根据自己MySQL预定义的存储引擎接口来编写自己的存.原创 2020-09-14 16:02:38 · 153 阅读 · 0 评论 -
Buffer Cache内部原理-LRU队列-主辅LRU
LRU队列文章目录LRU队列1.主LRU和辅LRU链表2.物理读时访问LRU链表情况3.辅助LRU为空后的处理方式LRU分为LRU和LRUW,他们两个分别分为主辅两个链表。也就是说一组LRU包含四个链表,主LRU,辅LRU,主LRUW,辅LRUW。其中主LRU和辅LRU用于在Buffer cache中寻找可以覆盖的buffer cache块。主LRUW和辅LRUW的作用和 检查点队列类似或者说是二者合力而为,是DBWR用来写脏块的。1.主LRU和辅LRU链表作用:物理读时,服务器进程将数据块从数据文原创 2020-08-18 15:49:11 · 451 阅读 · 0 评论 -
Buffer Cache内部原理-HASH链表
1. Buffercache的工作原理-1文章目录1. Buffercache的工作原理-11.1 HASH链表1.1.1 hash链表与逻辑读1.1.2 Cache Buffers Chain Latch和Buffer Pin锁1.1.3 Cache Buffers Chain Latch的竞争1.1 HASH链表 Buffercache作为磁盘数据块的缓存在Oracle的所有池中是最大的。在生产环境中往往几十G甚至上百G。为了更好的管理Buffercache准确的找到数据文件需要的数据块或者查看原创 2020-08-14 17:59:09 · 421 阅读 · 0 评论 -
HASH算法介绍
HASH算法介绍文章目录HASH算法介绍1.HASH key,hash函数与hash值2.链表与HASH2.1 使用遍历算法查询链表2.2 使用hash算法查询2.3 两种查询的区别 在Oracle中使用频率最高的算法就是hash算法接下来以共享池中的SQL语句查找为例,描述hash算法1.HASH key,hash函数与hash值 最简单的hash就是求余给它一个值可以生成另一个值。 hash算法的核心就是设计一个hash函数,每次传给它一个给定值(源值,也称为hash的key),可以得到原创 2020-08-12 16:59:08 · 1323 阅读 · 0 评论 -
Oracle快照控制文件理解
Oracle快照控制文件 快照控制文件(snapshot control file),顾名思义就是Oracle控制文件的一个副本或者备份。快照控制文件并不多见,在使用RMAN的时候这个快照控制文件才会被使用。控制文件简单介绍控制文件是Oracle的重要组成部分,记录了当前数据库的结构信息,同时也包含数据文件,日志文件,归档的信息。记录数据库当前的SCN。1.什么是快照控制文件1)为什么要有快照控制文件? 控制文件在数据库的运行过程中时刻都在发生变化,rman备份需要依赖于控制文件和恢复目录。原创 2020-08-12 12:49:19 · 526 阅读 · 0 评论 -
MySQL多实例搭建
MySQL多实例搭建文章目录MySQL多实例搭建一、什么是MySQL多实例二、MySQL多实例优劣势三、如何部署MySQL多实例1. 使用mysqld_multi搭建1.1 环境规划1.2 创建用户组以及相关目录和授权1.3 安装需要的包1.4 修改系统限制参数1.5 修改内核参数1.6 解压安装包并建立链接1.7 改写配置文件1.8 进行初始化1.9 查看数据库是否初始化成功1.10 设置启动1.11 使用mysql_multi进行多实例管理四、需要注意的问题一、什么是MySQL多实例 MyS原创 2020-08-06 18:52:23 · 612 阅读 · 0 评论 -
Oracle RAC—OCR理解
Oracle RAC—OCR理解文章目录Oracle RAC—OCR理解一、概念与原理1.什么是OCR2.OCR包含了哪些内容3.OCR的特点4.工作原理5.OCR存储内容6.OCR的健忘问题二、OCR的管理和维护1)查看集群版本2)OCR健康状态检查——ocrcheck3)OCR内容查看——ocrdump4)OCR配置——ocrconfig5)OCR修复——ocrconfig -repair6)OCR移除——ocrconfig -replace一、概念与原理1.什么是OCR OCR就好比Wind原创 2020-08-06 14:29:15 · 2245 阅读 · 0 评论 -
MySQL二进制日志的理解
MySQL二进制日志—binlog文章目录MySQL二进制日志—binlog一、什么是二进制日志1.概念2.具体分析二、二进制日志的作用1.基于时间点的恢复原理三、二进制日志的模式以及相关参数binlog的模式:statement、row、mixed参数1:log_bin参数2:sql_log_bin参数3:binlog_format参数4:max_binlog_size参数5:sync_binlog四、具体测试五、关于mysqlbinlog命令一、什么是二进制日志1.概念 二进制日志被称为bin原创 2020-08-05 15:18:52 · 690 阅读 · 0 评论 -
Oracle中undo实现一致性读
Oracle中undo实现一致性读文章目录Oracle中undo实现一致性读一致性读的实现1.什么是一致性读2.undo如何实现一致性读3.当事务被提交ITL重用怎样实现一致性读4.ORA-1555 在Oracle中undo主要有以下三个作用:提供一致性读,回滚事务,实例恢复。一致性读的实现1.什么是一致性读 我们都知道数据库中有脏读,那么与脏读相对应的就是一致性读。举一个简单的例子,这里有一个表,表中有100000行数据,进行一次全表查询需要消耗10分钟。时间是15:00时我开始了查询,那么原创 2020-08-05 10:59:14 · 411 阅读 · 0 评论 -
关于MySQL的一致性读
MySQL的一致性读文章目录MySQL的一致性读一、什么是一致性读1.一致性的定义2.对一致性的分析二、MySQL怎样保证数据的一致性三、可重读隔离级别的一致性读四、模拟测试五、结论 数据可用性:正确性、完整性、一致性。这是我们进行数据备份时的要求,如果无法保证备份数据的可用性那么备份数据也就失去了意义。前两个性质很好理解,但是一致性具体是什么呢?一、什么是一致性读1.一致性的定义**数据的一致性:**指相关联的数据之间的逻辑关系是否正确。**数据库的一致性:**指数据库从一个一致性状态变成另原创 2020-08-04 14:55:19 · 1266 阅读 · 0 评论 -
MySQL的四种隔离级别介绍
MySQL定义了四种隔离级别:包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的。低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销。Read Uncommitted(读取未提交内容-RU):该级别,所有事务都可以读取到其他事务未提交的数据变化,这种读取其他会话还没提交的事务,叫做脏读现象。所以这种级别很少用到实际应用中,性能会比其他级别强一些。Read Committed(读取提交内容-RC):这是大多数数据库系统的默认隔离级别(但不是MySQL默认的)。它满足了隔原创 2020-07-29 17:12:49 · 293 阅读 · 0 评论 -
MySQL轻量级监测工具—doDBA
doDBA的下载与部署文章目录doDBA的下载与部署一、什么是doDBA二、下载与部署1.软件下载2.配置文件解析3.启动监控三、doDBA可选数据源1.mysql2.innodb3.myall4.mytop一、什么是doDBA doDBA工具是基于控制台的远程系统监视器。在远程系统上不需要特殊的软件。它从Linux和MySQL收集实时性能数据。并且可以生成一个执行文件来帮助您分析MySQL数据库。该程序是免费软件。doDBA是用go编写的。二、下载与部署1.软件下载#下载软件[root@m原创 2020-07-29 10:49:02 · 666 阅读 · 0 评论 -
MySQL5.6基于GTID主从复制
GTID简述:mysql数据库从5.6.5开始新增一种基于GDIT的复制方式。通过GDIT保证每个主库上提交的事务在集群中有一个唯一的ID.这种方式强化了数据库的主备一致性,故障恢复以及容错能力。GTID (Global Transaction ID) 是对于一个已提交事务的编号,并且是一个全局唯一的编号。 GTID 实际上 是由 UUID+TID 组成的。其中 UUID 是一个 MySQL 实例的唯一标识。TID 代表了该实例上已经提交的事务数量,并且随着事务提交单调递增。环境准备:操作系统:C原创 2020-07-28 16:27:01 · 173 阅读 · 0 评论 -
MySQL备份与恢复—xtrabackup
xtrabackup文章目录xtrabackup一、原理与概念1.什么是xtrabackup2.xtrabackup实现机制3.xtrabackup的备份流程二、环境规划1.版本信息三、部署与测试1.部署2.测试一、原理与概念1.什么是xtrabackup Percona-xtrabackup是 Percona公司开发的一个用于MySQL数据库物理热备的备份工具,支持MySQL、Percona server和MariaDB,开源免费,是目前较为受欢迎的主流备份工具。开源、免费的MySQL热备份软件原创 2020-07-28 16:14:00 · 622 阅读 · 0 评论 -
数据迁移工具—DataX部署与使用
数据迁移工具—DataX的部署与使用文章目录数据迁移工具—DataX的部署与使用一、基本概念与原理1.什么是DataX2.DataX的原理二、下载与部署1.环境规划2.资源下载3.开始安装3.1 Maven部署3.2 dataX部署三、测试四、总结一、基本概念与原理1.什么是DataX DataX 是阿里开源的一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各种异构数据源之间稳定高效的数据同步功能。是一个单机多原创 2020-07-23 16:13:29 · 2571 阅读 · 0 评论 -
Oracle集群—DG3—管理和维护
DG管理和维护文章目录DG管理和维护1.DG角色在线转换1.1 角色(主备)1.2 角色切换(主备切换)2.切换前准备2.1 确定主备相关参数:2.1.1 查看主库角色和保护模式及级别2.1.2 通过参数查看主库对应的备库信息2.1.3 查看主库对应的convert参数2.1.4 查看主库归档位置以及对应备库信息2.2 网络检查2.2.1 使用tnsping2.2.2 进行远程登录测试3.切换方法3.1 主库转备库3.1.1 查看主库角色切换状态3.1.2 正常主库切换备库命令3.1.2 执行切换后的操作原创 2020-07-22 14:44:28 · 333 阅读 · 0 评论 -
Oracle集群—DG1—概念与机制
数据卫士—DG文章目录数据卫士—DG1. 相关概念1.1 什么是DG1.2 DG的原理架构1.3 DG相关服务1.3.1 日志发送1.3.1.1 日志发送—使用ARCH进程1.3.1.2 日志发送—使用LGWR进程1.3.2 日志接收1.3.3 日志应用1.4 DG保护模式1. 相关概念1.1 什么是DG DG全称Data Guard,官方给出的定义是“Oracle Data Guard ensures high availability, data protection, and disaste原创 2020-07-21 17:35:16 · 1273 阅读 · 0 评论 -
关于MySQL的主从复制模式
文章目录MySQL的主从复制模式MySQL的半同步复制技术半同步复制的特性:半同步复制存在的问题:半同步复制的条件:MySQL的主从复制模式 MySQL的主从复制模式包括异步复制,全同步复制,半同步复制。MySQL默认为异步模式。异步复制:(Asynchronous replication)。MySQL的默认复制,主库在执行完客户端提交的事务后会立刻将执行结果返回给客户端,并不关心从库是否已经接收处理,这样带来的问题就是当主死掉了,此时主上提交的事务可能还没有传到从上。而强行将从提升为主就会导致新原创 2020-07-21 10:50:13 · 175 阅读 · 0 评论 -
Oracle的Central Inventory和Local inventory理解
Central Inventory -> oraInventoryLocal Inventory -> Oracle Home inventory[oracle@yzorcl1 OPatch]$ ./opatch lsinventoryOracle Interim Patch Installer version 12.2.0.1.17Copyright (c) 2020, Oracle Corporation. All rights reserved.Oracle Home原创 2020-07-20 16:10:19 · 674 阅读 · 0 评论 -
OGG概念与机制
OGG:Oracle Golden Gate文章目录OGG:Oracle Golden Gate1.OGG的特点:2.OGG的工作原理: 简称为OGG,提供异构环境下的数据的实时捕捉,变换和投递。1.OGG的特点:对生产环境影响较小,因其实时读取交易日志从而实现了用最小的资源占用解决了大交易量数据的实时复制。以交易为单位复制,保证交易的一致性实现了只同步提交的数据。高性能,智能的交易重组和操作合并,使用数据库本地接口访问,并行处理体系,灵活的拓扑结构:支持一对一、一对多、多对一、多对多和双向原创 2020-07-20 15:59:26 · 1244 阅读 · 0 评论