- 博客(524)
- 资源 (34)
- 收藏
- 关注
原创 108.第十九章 MySQL数据库 -- MySQL高可用 Galera Cluster(十八)
Galera Cluster:集成了Galera插件的MySQL集群,是一种新型的,数据不共享的,高度冗余的高可用方案,目前Galera Cluster有两个版本,分别是Percona Xtradb Cluster及MariaDB Cluster,Galera本身是具有多主特性的,即采用multi-master的集群架构,是一个既稳健,又在数据一致性、完整性及高性能方面有出色表现的高可用解决方案。
2023-04-08 20:00:00
311
1
原创 107.第十九章 MySQL数据库 -- MySQL高可用 MHA(十七)
MySQL官方和社区里推出了很多高可用的解决方案,大体如下,仅供参考(数据引用自Percona)MMM: Multi-Master Replication Manager for MySQL,Mysql主主复制管理器是一套灵活的脚本程序,基于perl实现,用来对mysql replication进行监控和故障迁移,并能管理mysql Master-Master复制的配置(同一时间只有一个节点是可写的)官网: http://www.mysql-mmm.org https://code.google.c
2023-04-07 20:00:00
243
原创 106.第十九章 MySQL数据库 -- MySQL 中间件代理服务器(十六)
在整个IT系统架构中,数据库是非常重要,通常又是访问压力较大的一个服务,除了在程序开发的本身做优化,如:SQL语句优化、代码优化,数据库的处理本身优化也是非常重要的。主从、热备、分表分库等都是系统发展迟早会遇到的技术问题问题。Mycat是一个广受好评的数据库中间件,已经在很多产品上进行使用了。
2023-03-11 20:00:00
343
原创 105.第十九章 MySQL数据库 -- MySQL半同步复制、复制过滤器、复制的问题和解决方案(十五)
默认情况下,MySQL的复制功能是异步的,异步复制可以提供最佳的性能,主库把binlog日志发送给从库即结束,并不验证从库是否接收完毕。这意味着当主服务器或从服务器端发生故障时,有可能从服务器没有接收到主服务器发送过来的binlog日志,这就会造成主服务器和从服务器的数据不一致,甚至在恢复时造成数据的丢失。参看:https://mariadb.com/kb/en/library/mysqld-options/#-binlog-ignore-db。让从节点仅复制指定的数据库,或指定数据库的指定表。
2023-03-08 21:26:04
411
原创 104.第十九章 MySQL数据库 -- MySQL主从复制、 级联复制和双主复制(十四)
参考官网主节点配置:(1) 启用二进制日志主节点第一项要开启二进制日志(2) 为当前节点设置一个全局惟一的ID号说明:第二项在主节点上指定唯一的一个叫server-id的值,这个server-id的值是将来我们每个节点,主节点和从节点参与复制的所有节点,它们的id必需唯一,一般来讲这个id推荐使用ip地址的最后一个数字,比方说我现在的ip是172.31.1.8,那我们就把最后这个8来作为server-id,这个server-id是一个整数,你只要指定它的值就可以,只要确保每个节点的id唯一就行(3)
2023-03-06 20:00:00
358
原创 103.第十九章 MySQL数据库 -- MySQL的备份和恢复、MySQL主从复制(十三)
InnoDB 存储引擎支持事务,可以利用事务的相应的隔离级别,实现热备,也可以实现温备但不建议用。MyISAM不支持事务,只能支持温备;不支持热备,所以必须先锁定要备份的库,而后启动备份操作。范例:mysqldump 常见通用选项详解。
2023-02-17 20:00:00
709
原创 102.第十九章 MySQL数据库 -- MySQL的备份和恢复(十二)
灾难恢复:硬件故障、软件故障、自然灾害、黑客攻击、误操作测试等数据丢失场景参考链接: https://www.toutiao.com/a6939518201961251359/
2023-02-08 20:00:00
748
原创 101.第十九章 MySQL数据库 -- MySQL的日志管理(十一)
事务日志的写入类型为“追加”,因此其操作为“顺序IO”;通常也被称为:预写式日志 write ahead logging。中继日志 reley log,在主从复制架构中,从服务器用于保存从主服务器的二进制日志中读取的事件。事务里面有一个和它的性能密切相关的一个配置叫innodb_flush_log。事务日志文件: ib_logfile0, ib_logfile1。事务日志:transaction log。事务日志:transaction log。二进制日志 binary log。
2023-02-07 20:00:00
520
原创 100.第十九章 MySQL数据库 -- MySQL的并发控制(十)
锁类型:锁粒度:实现分类:锁策略:在锁粒度及数据安全性寻求的平衡机制在mysql中刚才讲InnoDB和MyISAM的时候提到行级锁、表级锁,那在mysql中这个锁实际上它有多种分类,比方说从它的共享程度上可以分成读锁和写锁,读锁又称为共享锁,或者称为S锁,S就是共享的意思,写锁又称为排它锁,又称为X锁,所谓的共享就是你可以读,我也可以读,但是只能读不能写,就是我加入读锁以后那么大家都只能读不能写,互相都可以读,读是可以的,但是不能写,而写锁就是我一旦加了写锁,我自己可以对这个资源读和写,但是别的就不能写了,
2022-12-23 20:00:00
1247
原创 99.第十九章 MySQL数据库 -- MySQL的索引(九)
索引:是排序的快速查找的特殊数据结构,定义作为查找条件的字段上,又称为键key,索引通过存储引擎实现索引可以降低服务需要扫描的数据量,减少了IO次数索引可以帮助服务器避免排序和使用临时表索引可以帮助将随机I/O转为顺序I/O占用额外空间,影响插入速度聚簇(集)索引、非聚簇索引:数据和索引是否存储在一起主键索引、二级(辅助)索引稠密索引、稀疏索引:是否索引了每一个数据项简单索引、组合索引左前缀索引:取前面的字符做索引覆盖索引:从索引中即可取出要查询的数据,性能高。
2022-12-22 21:30:00
441
原创 98.第十九章 MySQL数据库 -- MySQL数据库架构、存储引擎、服务器配置和状态(八)
MySQL是C/S 架构的,connectors是连接器;可供Native C API、JDBC、ODBC、NET、PHP、Perl、 Python、Ruby、Cobol等连接mysql;ODBC叫开放数据库(系统)互联,open database connection;JDBC是主要用于java语言利用较为底层的驱动连接数据库;以上这些,站在编程角度可以理解为连入数据库管理系统的驱动,站在mysql角度称作专用语言对应的链接器.
2022-12-21 20:15:00
357
原创 97.第十九章 MySQL数据库 -- MySQL视图、函数、触发器及用户权限管理(七)
事件(event)是MySQL在相应的时刻调用的过程式数据库对象。一个事件可调用一次,也可周期性的启动,它由一个特定的线程来管理的,也就是所谓的“事件调度器”。事件和触发器类似,都是在某些事情发生的时候启动。当数据库上启动一条语句的时候,触发器就启动了,而事件是根据调度事件来启动的。由于它们彼此相似,所以事件也称为临时性触发器。
2022-12-20 20:00:00
602
原创 96.第十九章 MySQL数据库 -- 多表查询(六)
内连接如上图所示,左边表和右边表我们挑出大家都遵守的一些条件的记录,这个条件我先定义出来,定义出来这个条件以后A表有些记录是符合的,B表有些记录是符合的,把这个都符合条件记录的这些记录给它拿出来,这就是内连接,内连接的实现是inner join,前面是A表后面是B表,中间inner join,注意内连接是要加条件的,条件写在on的后边,on后面加上一些条件,你满足我也满足中间取大家的交集,它这个连接是横向合并的这个交集。子查询:在SQL语句嵌套着查询语句,性能较差,基于某语句的查询结果再次进行的查询。
2022-12-19 20:00:00
581
原创 95.第十九章 MySQL数据库 -- 单表操作(五)
常见聚合函数:avg(), max(), min(), count(), sum() ,注意:聚合函数不对null统计。官方帮助:https://dev.mysql.com/doc/refman/8.0/en/select.html。比较操作符:=,(相等或都为空), ,!=(非标准SQL), >, >=,
2022-12-17 20:00:00
799
原创 94.第十九章 MySQL数据库 -- SQL语言分类和常见SQL用法(四)
char和varchar的区别,如果有一个定义的数据类型是4,在定义char和varchar的时候要约定好它的字符个数最多是多少,比方说在约定都是CHAR(4)的情况下,也就是说最多是4个,最多4个意味着我们不能超过4个但是可以少于4个,如果添加了一个’’ (空串),如果定义程CHAR(4)的话它存的话怎么存,注意你虽然是空值它也要占4个字符的空间,如果是latin1它占4个字节,如果是VARCHAR(4),这个数据没有占空间在硬盘存储的时候也不占空间,但是也不能说不占它也要占一个字节;
2022-12-16 20:00:00
782
原创 p10.第一章 Python基础入门 -- 习题详解(十)
∈ N*),那么这句话可以写成如下形式:F(n)=F(n-1)+f(n-2)上面的质数解法,为了确定一个质数,需要执行12757次,没有这个必要。把if语句改成三元表达式的样子,也可以使用abs(),内建绝对值函数。利用素数性质:所有大于10的质数中,个位数只有1,3,7,9。大于2之后,只有奇数才是质数,所以,不用测试偶数,修改为。进一步修改,奇数没有必要和2取模,那代码能做什么修改?为什么计算到一个数的“一半”就可以了?如果设F(n) 为该数列的第n项(那么从2开始到10万,有哪些素数呢?
2022-12-15 20:00:00
742
原创 p8.第一章 Python基础入门 -- 习题详解(八)
给一个半径,求圆的面积和周长。圆周率3.141.3.3.2 排序并打印输入两位数,比较大小后,从小到大升序打印三元表达式python没有三目运算符,但提供了三元表达式 真值 if 条件 else 假值1.3.3.3 获取最大值依次输入若干个整数,打印出最大值。如果输入为空,则退出程序1.3.3.4 计算整数位数并打印给定一个不超过5位的正整数(不转换为字符串),判断该数的位数,依次打印出万位、千位、百位、十位、个位的数字给定一个不超过5位的正整数(不转换为字符串),判断该
2022-12-13 20:00:00
483
原创 p7.第一章 Python基础入门 -- 分支循环语句(七)
顺序分支根据不同的情况判断,条件满足执行某条件下的语句例如,先洗手,如果饭没有做好,玩游戏;如果饭做好了,就吃饭;如果饭都没有做,叫外卖循环condition必须是一个bool类型,这个地方有一个隐式转换bool(condition),相当于False等价if 语句这行最后,会有一个冒号,冒号之后如果有多条语句的代码块,需要另起一行,并缩进if、for、def、class等关键字后面都可以跟代码块这些关键后面,如果有一条语句,也可以跟在这一行后面。例如if 1>2: pass1.
2022-12-12 20:00:00
492
原创 p6.第一章 Python基础入门 -- 内建函数和数值处理 (六)
1.2.3.4 数值型int、float、complex、bool都是class,1、5.0、2+3j都是对象即实例int:Python3的int就是长整型,且没有大小限制,受限于内存区域的大小float:由整数部分和小数部分组成。支持十进制和科学计数法表示。C的双精度型实现complex:由实数和虚数部分组成。实数和虚数部分都是浮点数,3+4.2Jbool:int的子类,仅有2个实例True、False对应1和0,可以和整数直接运算1.2.3.4.1 类型转换int、float、com
2022-12-11 20:00:00
573
原创 p5.第一章 Python基础入门 -- 运算符、优先级和表达式 (五)
False等价布尔值,相当于bool(value)1.2.3.2.12 逻辑运算真值表与逻辑 &:相当于* 乘法或逻辑 |:相当于+ 加法非逻辑 ~:Not,取反逻辑运算当中的0都代表假,1都代表真,逻辑与你可以认为这就是乘法,逻辑或相当于加法,取反就是你是假取反就是真,你是真取反就是假,在数学表达的时候Ā=F,也就是A上面画一横叫取反它等于F,什么意思,如果A是假那你得到的F就是真,如果A是真取反得到的就是假;逻辑与相当于乘法,把假都当0看,把真都当1看,0乘任何数都得0,1乘1等于1;逻辑或
2022-12-10 20:00:00
734
原创 p4.第一章 Python基础入门 -- 进制和码制 (四)
常见进制有二进制、八进制、十进制、十六进制。应该重点掌握二进制、十六进制。十进制逢十进一;十六进制逢十六进一;二进制逢二进一在计算机当中数值是最重要的,你不管它是字符串还是任何对象,其实说到底在内存当中放的只有0和1,那也就是说在内存当中实际上我们看到的只有数字,没有其它,就包括指令都是数字,所以在计算机当中数制是相当重要的,重点来讲的话二进制比较重要或者十六进制比较重要;在计算机当中每一个0或者1这是一个位置,代表了一个开关量,这一个开关量要么是0要么是1,只能是其中的某一种状态,这个叫1位,叫1个b
2022-12-09 20:00:00
788
原创 p3.第一章 Python基础入门 -- Python编程基本概念 (三)
1989年圣诞节期间,为了打发无聊的时间,荷兰人Guido van Rossum(吉多·范罗苏姆)(数学、计算机双硕士,2005年加入Google,2013年加入DropBox),决心开发一种新的解释性脚本语言。1991年初发布了第一个公开发行版。由于他是英国BBC喜剧《Monty Python’s Flying Circus》的忠实粉丝,因此为这门语言取名Python。Python目前已经成为很多大学的编程课语言。甚至在国内一些考试已经引入了Python。科学计算方面、运维领域Python几乎已经成为最主
2022-12-08 20:00:00
556
原创 p2.第一章 Python基础入门 -- 冯诺依曼体系和计算机基础 (二)
艾伦·麦席森·图灵(Alan Mathison Turing,1912年6月23日-1954年6月7日),英国数学家、逻辑学家,被称为计算机科学之父,人工智能之父。图灵提出的著名的图灵机模型为现代计算机的逻辑工作方式奠定了基础。图灵机已经有输入、输出和内部状态变化机制了。计算机主要指的电子计算机,电子计算机主要诞生在从美国开始,但是理论从什么时候开始到,它是由英国科学家图灵,计算机界有个重要的奖项,也就是计算机界的诺贝尔奖就是图灵奖,这是一个非常重量级的奖,这个人的名字就叫图灵,有一部电影《模仿游戏》是
2022-12-07 20:00:00
518
原创 p1.第一章 Python基础入门 -- Python开发环境安装 (一)
Python下载地址:https://www.python.org/downloads/下载并安装3.6.8下载Windows x86-64 executable installer,python 3.6.8下载地址:https://www.python.org/ftp/python/3.6.8/python-3.6.8-amd64.exe开始安装注意,勾选增加PATH路径。选项特性高级选项安装过程安装完成打开Windows命令行pip是Python包管理器,以后安装Python第三
2022-12-06 20:00:00
580
原创 我的创作纪念日
一年前的今天我开始在csdn发文章,那时只是单纯想记录学习算法的一点心得,后来想着把平时学习,项目中遇到的问题及解决方法也都记录下来,可是贪多嚼不烂,兴致过去了,人就懒散了,不想再写文。后来又经历换城市找工作,搬家,工作初期开始的不适应,不知不觉到今天已经一周年了。虽然写文很少,但是每次写文记录总能给自己带来很踏实的感觉,感觉自己有所成长和收获。在职业生涯中不断积累,厚积薄发。平时工作生活中,在项目忙的时候,遇到问题和解决方法简要记录,有空后整理工作问题与解决方案,详细分析并发文记录。在学习阅读中,有心得体
2022-12-04 17:16:23
227
2
原创 93.第十九章 MySQL数据库 -- MySQL安装和基本使用(三)
利用cmake编译,而利用传统方法,cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影响,因此在同一个源码树上可以进行多次不同的编译,如针对于不同平台编译。编译选项:https://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html。建议:内存6G以上,否则编译时可能会出错。
2022-10-24 20:00:00
371
原创 92.第十九章 MySQL数据库 -- MySQL安装和基本使用(二)
源代码编译安装二进制格式的程序包:展开至特定路径,并经过简单配置后即可使用程序包管理器管理的程序包。
2022-10-23 20:00:00
342
原创 91.第十九章 MySQL数据库 -- 数据库原理(一)
关系型数据库基础安装MySQL管理数据库和表用户和权限管理函数,存储过程,触发器和事件MySQL架构存储引擎服务器选项,系统和状态变量优化查询和索引管理锁和事务管理日志管理备份还原MySQL集群。
2022-10-22 20:00:00
639
原创 y165.第九章 GitOps从入门到精通 -- Argo Rollouts(十四)
由一个控制器和一组CRD组成,可为Kubernetes提供高级部署功能,包括支持与Ingress Controller(Nginx和ALB)及ServiceMesh(Istio、Linkerd和SMI)集成,利用它们的流量治理能力实现流量迁移过程能够查询和解释来自多种指标系统(Prometheus、Kubernetes Jobs、Web、Datadog等)的指标来验证Blue-Green或Canary部署结果,并根据结果自动决定执行升级或回滚几个相关的CRD基本工作机制。
2022-10-16 20:00:00
374
原创 y164.第九章 GitOps从入门到精通 -- ArgoCD快速入门和ArgoCD进阶(十三)
同步选项(Sync Options)用于禁用或启用同步过程中的某些特性资源修剪传播策略,默认使用foreground策略另外可选的策略还有background和orphanPruneLastReplaceValidation设定同步策略启用自动同步d自动修剪自动自我修复设定同步选项禁止修剪特定的资源禁用kubectl验证有选择地执行同步(两种途径之一)命令:argocd app set --sync-option ApplyOutOfSyncOnly={true|false}
2022-10-15 20:00:00
438
原创 y163.第九章 GitOps从入门到精通 -- ArgoCD快速入门(十二)
ArgoCD有两种部署方式:多租户部署和核心化部署多租户常用于为多个应用程序开发团队提供服务,并由平台团队维护的场景有两类可选择的部署方式支持用户通过Web UI或CLI进行访问支持集群级部署和名称空间级两种安装机制核心化部署安装的组件较小且更易于维护,它不包含API Server和UI,且不提供高可用机制仅适用于独立使用ArgoCD且不需要多租户特性的集群管理员用户要通过Kubernetes的访问权限来管理ArgoCD。
2022-10-14 20:00:00
303
原创 y162.第九章 GitOps从入门到精通 -- ArgoCD基础(十一)
ArgoCD是什么?将应用程序部署到Kubernetes之上的GitOps工具核心组件:Application Controller及相关的一组CRD基础工作模型以特定Repository(配置仓库)为应用程序部署和管理的惟一可信源,该Repository负责定义Application的期望状态Application Controller负责将Repository中定义的Application运行于一个特定的目标Kubernetes Cluster之上。
2022-10-13 20:00:00
363
基于二进制包安装kubernetes v1.23(Containerd) ansible安装包
2022-08-08
基于kubeadm安装kubernetes v1.23(Containerd) ansible安装包
2022-08-08
Wireshark-win64-3.6.1
2022-02-07
Wireshark-win64-3.4.10
2021-11-19
pycharm-community-2021.2.3
2021-11-19
xdm-2020 下载器
2021-11-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人