MySQL 日志 redo log、undo log、binlog、relay log、general log、slow query log、errorlog

MySQL中有以下7种类型日志文件:重做日志(redo log) 回滚日志(undo log) 二进制日志(binlog) 中继日志(relay log) 慢查询日志(slow query log) 一般查询日志(general log) 错误日志(errorlog)重做日志(redo log)回滚日志(undo log)二进制日志(binlog)中继日志(relay log)慢查询日志(slow query log)一般查询日志(general log)错误日志(errorl
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

8.1 问题 D: 【递归入门】n皇后 问题(原始的8皇后问题)

题目描述 会下国际象棋的人都很清楚:皇后可以在横、竖、斜线上不限步数地吃掉其他棋子。如何将8个皇后放在棋盘上(有8 * 8个方格),使它们谁也不能被吃掉!这就是著名的八皇后问题。输入一个整数n( 1 < = n < = 10 )输出每行输出对应一种方案,按字典序输出所有方案。每种方案顺序输出皇后所在的列号,相邻两数之间用空格隔开。如果一组可行方案都没有,输出“no solute!”样例输入Copy4样例输出Copy2 4 1 33...
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

MySQL InnoDB 缓冲池 buffer pool

什么是buffer poolMySQL服务器启动的时候会向操作系统申请了一片连续的内存作为缓冲池(buffer pool),默认128M,可以通innodb_buffer_pool_size过来调整它的大小。用于缓存表数据与索引数据,把磁盘上的数据加载到缓冲池,避免每次访问都进行磁盘IO,起到加速访问的作用。buffer pool中存有控制块和缓存页一一对应,控制块包含:缓存页所属的表空间编号、页号、缓存页在buffer pool中的地址、链表节点信息、一些锁信息以及LSN信息;缓存页和磁盘上默认的
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

Redis的对象和数据结构

Redis数据库的键值对(key-value)都是由对象(object)组成。对象总共有5种:字符串对象(string) 列表对象(list):有序链表,value能重复,可通过下标取元素,可在头/尾进行插入或删除。使用场景: 哈希对象(hash):HashMap 集合对象(set):不重复、无序、不能通过下标取元素。 有序集合对象(zset)而对象则是由6种主要数据结构创建:简单动态字符串(SDS):相比C字符串,SDS做了优化:直接获取字符串重读、避免缓冲区溢出、空间预分配。 链
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

Eureka实现原理和自我保护机制简单介绍

Eureka是在Java语言上,基于Restful API开发的服务注册与发现组件,由Netflix开源。Eureka遵循AP原则。目前Eureka仅开源到1.X版本,2.X版本已经宣布闭源。Eureka采用的是Server/Client的模式进行设计:Server扮演了服务注册中心的角色,为Client提供服务注册和发现的功能,维护着注册到自身的Client的相关信息,同时提供接口给Client获取到注册表中其他服务的信息。 Client将有关自己的服务的信息通过一定的方式登记到Server上,
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

指针第三部分(“ * ”与“ & ”、指针的步长)---- 2021.1.31

目录上一讲指针链接:“ * ”与“ & ”指针的步长结束语上一讲指针链接:指针第二部分(指针变量的定义、初始化、使用)---- 2021.1.29“ * ”与“ & ”“ * ”与“ & ”这两个符号是我们在使用指针时会频繁使用到的两种符号。首先通过“ * ”符号取指针变量所指向的那块内存的内容,进而我们对那块内存区域进行操作。“ & ”符号是对其那块被操作的内存区域取地址,也就是获取地址编号赋值给我们定义的指针变量。上述说的两点,大家应该都清楚。但是我想借这个
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

指针第四部分(野指针、空指针、万能指针)---- 2021.2.5

目录上一讲指针链接:野指针空指针万能指针结束语上一讲指针链接:指针第三部分(“ * ”与“ & ”、指针的步长)---- 2021.1.31野指针先请大家看一下下面所给出的一段代码。想想这段代码有没有语法问题,最终能不能成功运行?int main(){ int* p; *p = 200; printf("%d\n", *p); system("pause"); return 0;}先对上述代码做一个简单的解析:首先我们定义了一个指针变量p,
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

指针第五部分(const修饰的指针、多级指针)---- 2021.2.22

const修饰的指针我们先讲使用const关键字修饰的变量。举个例子:const int a = 10;const关键字作用:修饰变量a,不能通过变量a来修改变量a内存里面的内容,从而只能通过指针来修改其中的内容。那我们看看...
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

指针第六部分(指针数组、指针作为函数的形参)---- 2021.3.6

指针数组我们在接触指针的时候往往会接触到指针数组和数组指针这两个概念。我们今天先讲指针数组的概念和用法,至于数组指针我们会在之后的文章中提及到。首先在说指针数组之前我觉得很有必要引入下普通数组的概念,也就是整型数组。整型数组:是一个数组,数组的每一个元素都是整型。那么我们可以由整型数组的概念中引入指针数组。指针数组:是一个数组,数组的每一个元素都是一个指针。那我们又是在什么条件下才提出的指针数组呢?因为正如下代码所示,我们定义了三个整型变量a,b和c。并且分别赋值为10,20和30。那么我们想
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

Linux操作系统(计算机的哲学)中的进程

Linux操作系统中的进程1 认识冯诺依曼系统2 操作系统2.1 概念2.2 设计OS的目的2.3 定位3 进程3.1 进程的基本概念3.2 进程的描述3.3 如何组织进程3.4 进程的基本操作3.4.1 查看进程3.4.2 创建进程3.4.3 进程的状态3.4.4 僵尸进程和孤儿进程1 认识冯诺依曼系统我们常见的计算机笔记本和不常见的计算机服务器大部分都遵循冯诺依曼系统。我们所认识的计算机,都是由一个个的硬件组件组成。输入单元:键盘鼠标等中央处理器(CPU):包含运算器和控制器等输出单
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

C++中的类与对象1

类和对象1 面向过程和面向对象的初步认识2 类2.1 类的引入2.2 类的定义2.3 类的作用域2.4 类的实例化2.5 类的访问限定符和封装2.5.1 访问限定符2.5.2 封装2.6 类的对象大小的计算2.6.1 类对象的存储方式2.7 类成员函数的this指针2.7.1 this指针的引出2.7.2 this指针的特性1 面向过程和面向对象的初步认识C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

C++中的类与对象2——构造函数、析构函数、拷贝构造函数、赋值运算符重载函数

类的成员函数1 类的构造函数1.1 构造函数的概念1.2 构造函数的特性2 类的析构函数2.1 析构函数概念2.2 析构函数的特性3 类的拷贝/复制构造函数3.1 拷贝/复制构造函数的概念3.2 拷贝/复制构造函数的特征4 类的赋值运算符重载函数4.1 运算符重载4.2 赋值运算符重载1 类的构造函数1.1 构造函数的概念对于以下的日期类class Date{ public: void SetDate(int year, int month, int day) { _year = ye
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

力扣——只出现一次的数字ⅠⅡⅢ(C++)

只出现一次的数字1 题目描述2 题目分析和实现2.1 题目12.1.1 分析2.1.2 实现2.2 题目22.2.1 分析2.2.2 实现2.3 题目31 题目描述题目链接如下:https://leetcode-cn.com/problems/single-number/https://leetcode-cn.com/problems/single-number-ii/https://leetcode-cn.com/problems/single-number-iii/2 题目分析和实
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

栈和队列的互相实现

栈和队列1 栈和队列3 用栈实现队列3.1 思路分析3.2 代码实现4 用队列实现栈4.1 思路分析4.2 代码实现1 栈和队列栈: 后进先出的数据结构队列:先进先出的数据结构如图所示:那么以C++为例,自己使用的编程语言里栈和队列是什么样的呢。可以思考以下几个方面:C++中的 stack 是容器吗?我们使用的stack是属于哪个版本的 STL ?我们使用STL中的 stack 是怎么实现的呢?stack 提供迭代器来遍历 stack 空间吗?C++标准库是有多个版本的,
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

Linux操作系统的进程2

进程优先级&环境变量&程序地址空间1 进程优先级1.1 进程优先级的概念1.2 查看系统进程和优先级1.3 更改系统的优先级2 环境变量2.1 基本概念2.2 常见环境变量和查看环境变量的方法2.3 和环境变量相关的命令2.4 环境变量的组织方式2.5 设置&获取环境变量和环境变量的特性3 进程地址空间(重点)3.1 地址空间的引入3.2 什么是地址空间3.3 为什么要有地址空间3.4 地址空间怎么使用3.5 页表的作用和进程地址空间的管理3.5.1 页表的作用3.5.2 程序地址空
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

C++中的类与对象3

1 const 修饰类的成员函数将 const 修饰的类的成员函数称之为 const 成员函数,const 修饰成员函数实际修饰该成员函数隐含的this指针,表明在该成员函数中不能对类的任何成员进行修改。1 const 对象可以调用非 const 成员函数吗?const Date* this -----> Date* this 这其实权限的放大,从可读变为可读可写,这当然是不行的。2 非 const 对象可以调用 const 成员函数吗?原理和1 相似,Date* this --
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

C/C++内存管理&模板初阶

内存管理和模板初阶1 内存管理1.1 C/C++ 的内存分布1.2 C 中动态内存管理方式1.3 C++ 中动态内存管理方式1.3.1 new/delete操作内置类型1.3.2 new/delete操作自定义类型1.3.3 operator new 与 operaror delete 函数1.3.4 new 和 delete 的实现原理1.4 malloc/free 和 new/delete的区别2 模板初阶2.1 泛型编程2.1 函数模板2.1.1 概念2.1.2 格式2.1.3 原理2.1.4 实例化
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

深度解析树(二叉树和n叉树)的前中后序和层序的遍历方法:递归法和迭代法

把递归和迭代遍历树学个通透1 二叉树基础扫盲1.1 二叉树的种类1.2 二叉树的存储方式1.2 二叉树的 C++ 定义2 两种遍历方式3 递归的方法论4 二叉树和N叉树的前中后序的递归遍历5 二叉树和N叉树的前中后序的迭代遍历5.1 二叉树前序遍历5.2 二叉树中序遍历5.3 二叉树后序遍历5.4 N叉树前序遍历5.4 N叉树后序遍历6 二叉树和N叉树的层序遍历1 二叉树基础扫盲说道二叉树,大家对于二叉树其实都很熟悉了,本文呢我也不想教科书式的把二叉树的基础内容在啰嗦一遍,所以一下我讲的都是一些比较重
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

二叉树前中后序遍历的递归和非递归实现

目录二叉树遍历前序遍历递归非递归中序遍历递归非递归后序遍历递归非递归二叉树遍历二叉树的遍历分为深度优先和广度优先深度优先又分为前序遍历、中序遍历和后序遍历详见:初识二叉树我们可以理解为对结点的处理顺序在前、中间还是最后例如:前序遍历二叉树的前序遍历递归 public List<Integer> preorderTraversal(TreeNode root) { List<Integer> list = new ArrayList<
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0

一文读懂Java NIO模型

Java IO读写原理在操作系统中,程序运行的空间分为内核空间和用户空间。应用程序都是运行在用户空间的,所以它们能操作的数据也都在用户空间。IO共分为两阶段:数据准备阶段(写入内核缓冲区)。内核缓冲区(内核空间)复制数据到用户进程缓冲区(用户空间)阶段。一旦拿到数据后就变成了数据操作,不再是IO操作。内核缓冲区与进程缓冲区缓冲区的目的,是为了减少频繁的系统IO调用。大家都知道...
分类: 其他 发布时间: 04-01 10:13 阅读次数: 0