目录 早期的网络 Web 1.0: 只读 [Read-Only](1990-2004) Web 2.0: 可读-可写 [Read-Write](2004-至今) Web 3.0: 可读-可写-可拥有 [...Web 2.0: 可读-可写 [Read-Write](2004-至今) Web 2.0 时代始于2004年,伴随着社交媒体平台的出现。网络不再是只读的,它演变为可读写的。...Web 3.0: 可读-可写-可拥有 [Read-Write-Own] “Web 3.0” 的前提是以太坊联合创始人 Gavin Wood 在2014年以太坊推出后不久提出的。...2020年推特上的一篇帖子一语中的:Web1 是只读的,Web2 是可读-可写的,Web3 将会是 可读-可写-可拥有 的。
今年夏天,罗伯特·捷克(Robert Czech)成为了世界上第一个获得脑机接口的完全瘫痪的人,也是第一个带着脑机接口 (BCI) 回家的美国人。
业界对这个概念的探讨纷纷展开,目前比较普遍的共识是,相对 Web 1.0 的“只读”和 Web 2.0 的“可读 + 可写”,Web 3.0 是既“可读 + 可写”又“可拥有”。...沈旸:Web 1.0 是可读,以前叫门户网站。Web 2.0 是可读可写,相当于是互联网社交媒体。现在大部分国外认为 Web 3.0 叫可读可写加可拥有。但是,我认为这些定义都可能是错的。...因为可读可写它只是个概念,没有谈到技术的本质。 我们看一下,Web 1.0 和 Web 2.0 之间并没有明显的技术的代差,或者明显的时间点。...比如,2000 年以前,在社交网络之前就有 BBS,它也是可读可写的,而且在 BBS 里面的交流,比现在所谓的社交软件要自由,从这个角度上讲,可读可写它并不是一个界限。...另一方面,从数据库的角度上讲,数据库自诞生以来,天生就是可读可写的,而不是在 2000 年以前只可读,2000 年以后才可写。
能够做主备切换,而MySQL也有自己的一套备库方案。称之为主从复制。 搭建MySQL从库是为了实时同步主库数据,同一时候也能够分担主库的读压力。对数据库端做成读写分离结构。...搭建MySQL主从库注意点: 1.主库和从库的 server-id 一定不能同样。 2.在主库创建replication slave账户。...Position: 251651 Binlog_Do_DB: Binlog_Ignore_DB: 1 row in set (0.00 sec) 4.配置从库 change master...启动从库 slave start show slave status\G *************************** 1. row ***************************...Last_SQL_Error: Replicate_Ignore_Server_Ids: Master_Server_Id: 100 注意: 假设从库
前言:我们都知道,MySQL 主从延迟是一件很难避免的情况,从库难免会偶尔追不上主库,特别是主库有大事务或者执行 DDL 的时候。...MySQL 除了这种正常从库外,还可以设置延迟从库,顾名思义就是故意让从库落后于主库多长时间,本篇文章我们一起来了解下 MySQL 中的延迟从库。...延迟从库介绍延迟复制是一种特殊的复制策略,它允许从库在主库执行完数据变更后延迟一段时间再将这些变更同步到从库。...延迟从库使用场景对比正常从库,延迟从库会落后于主库固定的时间,比如设置 3 小时或 6 小时,这样主库的更新操作会在 3 小时或 6 小时后在延迟从库执行。...点停下,这样这个延迟从库整体就回放到主库误操作前的时间点了,具体示例操作如下:sql 代码解读复制代码#在主库找到误操作的gtid,再往上一条gtid,设置同步截止点mysql> STOP SLAVE
/mysql-8.0.16/bin/mysql -uroot -p123456 -S /data/3306/mysqldata/mysql.sock -e " set global super_read_only...=0; stop slave; reset slave all; reset master;" /home/mysql/mysql-8.0.16/bin/mysql -uroot -p123456.../mysql-8.0.16/bin/mysqladmin -uroot -p123456 -S /data/3306/mysqldata/mysql.sock shutdown /home/mysql/...mysql-8.0.16/bin/mysqld_safe --defaults-file=/home/mysql/my_3306.cnf & counter=0 # 等待MySQL服务启动 until...exit fi done /home/mysql/mysql-8.0.16/bin/mysql -uroot -p123456 -S /data/3306/mysqldata/mysql.sock
前言:我们都知道,MySQL 主从延迟是一件很难避免的情况,从库难免会偶尔追不上主库,特别是主库有大事务或者执行 DDL 的时候。...MySQL 除了这种正常从库外,还可以设置延迟从库,顾名思义就是故意让从库落后于主库多长时间,本篇文章我们一起来了解下 MySQL 中的延迟从库。...延迟从库介绍延迟复制是一种特殊的复制策略,它允许从库在主库执行完数据变更后延迟一段时间再将这些变更同步到从库。...延迟从库使用场景对比正常从库,延迟从库会落后于主库固定的时间,比如设置 3 小时或 6 小时,这样主库的更新操作会在 3 小时或 6 小时后在延迟从库执行。...点停下,这样这个延迟从库整体就回放到主库误操作前的时间点了,具体示例操作如下:#在主库找到误操作的gtid,再往上一条gtid,设置同步截止点mysql> STOP SLAVE;mysql> change
在缓存方面的我们有了 redis 这样的 nosql 数据库,而 mongodb 在业务等级和 mysql 基本是平级的,当然从使用程度上说,mysql 这样关系型数据库统计地位确实根深蒂固的。...而大数据领域有列式数据库 HBase ,另外数据关系领域在一对多领域衍生出来某个对象需要的对象关系跟自己平级,那就出现了图数据库,目前主流图数据库还是 neo4j。...回到 mysql ,关于他的讲述,如今各种视频资料已经漫天遍野,本人自然无法聊出更多所以就根据其常见的机制简单介绍。索引几乎聊到数据库,索引是必然会聊到的,主键索引和唯一索引是开发必须考虑的。...主从复制中有 relay logmysql 的所有信息复制在 binlog 中,如果从节点需要复制主节点信息,需要读取主节点的 binlog 写入到 relay log,然后在从 relay...大家可能会好奇为什么还多加一个 relay log ,这是开发中默认的一个想法,网络是不可靠的,同时数据之间需要缓冲,如果从节点,读取后直接同步,那么网络出错了,可能会产生错误数据,万一有请求来了,我一遍同步一遍接受请求压力山大呀
前言: MySQL 主从架构应该是最常用的一组架构了。从库会实时同步主库传输来的数据,一般从库可以作为备用节点或作查询使用。...其中 server_uuid 是一个 MySQL 实例的唯一标识, transaction_id 代表了该实例上已经提交的事务数量,并且随着事务提交单调递增,所以 GTID 能够保证每个 MySQL 实例事务的执行...特别是对于一主多从的架构,借助GTID,在发生主备切换的情况下,MySQL 的其它 Slave 可以自动在新主上找到正确的复制位置,这大大简化了复杂复制拓扑下集群的维护,也减少了人为设置复制位置发生误操作的风险...3.备份可在从库端进行 MySQL 全量备份会对服务器造成一定压力,有时也会短暂持有全局锁。特别是数据量大,业务繁忙的数据库,全量备份可能会对业务产生影响。...5.注意从库监控及主从延迟 从库虽然不如主库那么重要,但平时也要多关注从库监控状态,不要等到需要使用从库时才发现从库早已和主库不一致了。除去一些基础监控,从库端要特别关注复制状态及延迟状态。
MySQL是一个关系型数据库管理系统,MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,就增加了速度并提高了灵活性。...4、MySQL管理 可以使用命令行工具管理MySQL数据库(命令mysql 和 mysqladmin),也可以从MySQL的网站下载图形管理工具MySQL Administrator和MySQL Query...phpMyAdmin是由php写成的MySQL资料库系统管理程式,让管理者可用Web界面管理MySQL资料库。 ...二、MySLQ存储引擎 1、MySQL存储引擎简介 插件式存储引擎是MySQL数据库最重要的特性之一,用户可以根据应用的需要选择如何存储和索引数据库,是否使用事务等。...MySQL Workbench(GUITOOL)一款专为MySQL设计的ER/数据库建模工具,是著名的数据库设计工具DBDesigner4的继任者。
背景: 随着网站访问量的增长,一主一从的架构已经无法满足业务需求,需要增加一到两台从库,我们需要在保证业务正常运行的情况下新增从库 实施: 1、首先需要保证主从两台机器间的正常通信 1 -A INPUT...= 217020207929 partial = N incremental = N format = tar compact = N compressed = N encrypted = N 4、从库安装好数据库...,做好系统初始化等操作,这里不再讲述,然后在进行还原操作 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 一定要先停止数据库,然后再清空数据目录下的所有数据...(全量备份时) service mysql stop cd /usr/local/mysql rm -rf data/* 对数据进行准备工作,合成可用的一致的数据,--use-memory可以加速准备工作的完成...:mysql -R data/ /etc/init.d/mysqld restart 这里我们有已经安装好的数据库,只需要将数据目录清空即可 5、建立主从关系 1 2 授权 grant replication
环境准备: master:192.168.0.106:3306 slave:192.168.0.105:3306 主和从都必须配置有唯一的ID(server_id:建议ip最后一组+MySQL端口号,例如...repl'@'192.168.0.%'; 2、mysqldump备份master数据库 1 mysqldump -S /tmp/mysql3306.sock -p --master-data=2 --single-transaction...gtid set must not overlap with @@GLOBAL.GTID_EXECUTED 登录slave数据库,清除从站已有GTID_EXECUTED值,然后再执行还原 1 mysql...> reset master; 2 mysql> exit; 3 gunzip < 3306-2019-10-13.sql.gz | mysql -S /tmp/mysql3306.sock -p 5、...master复制连接账号 MASTER_PASSWORD:master复制连接密码 MASTER_PORT:master端口 MASTER_AUTO_POSITION:使用GTID模式 6、登录slave数据库,
1、什么是MySQL复制延迟? 本质是MySQL从库的relay log回放跟不上主库生成速度,产生延迟 2、主从延迟常见的原因有哪些?...1、大事务,从库回放时间较长,导致主从延迟 2、主库写入过于频繁,从库回放跟不上 3、参数配置不合理 4、主从硬件差异 5、网络延迟 6、表没有主键或者索引大量频繁的更新 7、一些读写分离的架构,从库的压力比较大...3、解决主从延迟有哪些方法 1、对于大事务,拆分成小事务 2、开启并行复制 3、升级从库硬件 4、尽量都有主键 4、什么是并行复制,参数有哪些?...先回顾MySQL并行复制的路程 a. MySQL5.6 是基于数据库级别的并行复制 slave-parallel-type=DATABASE(不同库的事务,没有锁冲突) b....business=space_collection&business_id=343928&desc=0 文章推荐: MySQL复制从库延迟原因深入分析 给MySQL 5.7打补丁,并且编译出和官方一致的
要学Web 开发,也得先对数据库有所了解呀。数据库分门别类,多种多样,目前我选择了 MySQL 。 ...看了 MySQL,觉得数据库处理也不是很难,主要就是一些对数据的处理,MySQL 主要就是一些命令的运用。 看过了,怕忘了吧,得及时记录下来。...(2)关系数据库 关系是一个带有属性的表,这个表称为关系表,一组表组成一 数据库。 表由行和列组成,其行称为元组,列称为属性。 ...除此之外,最好为数据库创建索引,可以加快查询速度。...create table book(index index_name); 查看(id)索引的使用:explain select id from book where name="book2"; 还可以从宏观上查看
作者:天山老妖S 链接:http://blog.51cto.com/9291927 一、创建数据库 1、创建数据库 创建数据库,指定数据库的默认字符集为utf8。...create database schoolDB default character set utf8; 连接数据库,客户端必须选择UTF8字符集。...数据库中的三张表分别为学生表(student)、课程表(TSubject)、分数表(TScore)。 ?...StudentID nvarchar(15), subJectID nvarchar(10), mark decimal)ENGINE=InnoDB DEFAULT CHARSET=utf8; 二、数据库信息的生成
然而,我们不应忽视一个基本且重要的原则——代码的可读性。那么究竟何谓代码的可读性?顾名思义,代码可读性是指代码可理解的程度,是代码作者通过代码这个媒介,将需要表达的信息输出到读者脑中的能力。...return StepExitEnum.CONTINUING; } 这种代码很常见,耐着性子其实也容易看懂:创建目录->读取加密文件->解密文件,就当前来说其实满足了业务需求也就可以了,但不够优雅;从长期来讲...那究竟如何才能提高代码的可读性?毕竟代码可读性作为团队协作开发的前提,是软件可维护性的前提,是代码评审的前提,也是代码评审中的核心关注点之一。...合理的抽象,从功能角色、职责划分上就很清晰,有了这个基础,才能清晰的编写业务逻辑代码,而不是堆砌各种条件判断和循环,同时带着两条斜杠和注释,这是可读性的基础。...通过自然语言描述Java函数需求,实时生成高质量、高可读性的Java函数代码。生成代码可直接复制到IDEA,或一键导入Java全自动开发工具函数库。
原理如下图所示: 读写分离的方案 如果从库崩了,实在无法访问了,就会把所有请求打到主库上。...二、怎么理解读写分离 读写分离有个限制条件就是主库可以用来做读写,从库实时同步主库数据,而且从库是只读的。 我们的项目中有统计功能就是连接从库查询数据,从库不会进行数据更新的操作。...读写分离我认为可以分为两种: 1、完全的读写分离:主库只用来更新数据,从库只用来查询数据。 2、部分读写分离:主库既可以用来读数据,又可以进行查数据;从库作为只读的备库,分担耗性能的查询工作。...我们项目采用的是第二种方案,涉及到 I/O 密集型的查询工作就交给 MySQL 从库去处理。 添加描述 部分读写分离 三、从节点的高可用如何保证?...方案二:部署两个从节点,从节点之间相互同步数据,只有一个从节点提供服务,另外一个节点作为备用从库,前者崩了的话,流量自动切换到后者。
在MySQL中,索引属于存储引擎级别的概念,不同存储引擎对索引的实现方式是不同的。...ASC|DESC]; unique|fulltext为可选参数,分别表示唯一索引、全文索引 index和key为同义词,两者作用相同,用来指定创建索引 col_name为需要创建索引的字段列,该列必须从数据表中该定义的多个列中选择...3、查看索引占用的磁盘空间 schoolDB数据库索引占用的磁盘空间。...possible_keys:MySQL在搜索数据记录时可以选用的各个索引 key:实际选用的索引 key_len:显示MySQL使用索引的长度(使用的索引个数),当key字段的值为 null时,索引的长度就是...rows:MySQL在执行查询时预计会从数据表里读出的数据行的个数。 extra:提供与关联操作有关的信息。
背景介绍 近来一套业务系统,从库一直处于延迟状态,无法追上主库,导致业务风险较大。...从资源上看,从库的CPU、IO、网络使用率较低,不存在服务器压力过高导致回放慢的情况;从库开启了并行回放;在从库上执行 SHOW PROCESSLIST 看到没有回放线程阻塞,回放一直在持续;解析relay...并行度统计 众所周知,MySQL 从库并行回放主要依赖于 binlog 中的 last_commmitted 来做判断,如果事务的 last_commmitted 相同,则基本上可以认为这些事务可以并行回放...,下面从环境中获取一个relay log进行并行回放的大概统计 $ mysqlsqlbinlog --no-defaults mysql-bin.046638 |grep -o 'last_committed...从库也就只能串行回放这些事务,引起回放延迟。 优化措施 从业务侧对表做改造,在允许的情况下给相关表都添加上主键。
一 主库手动复制至从库 1.1 Master主库锁表 1 mysql> flush tables with read lock; 2 Query OK, 0 rows affected (0.00...sec) 1.2 主库备份 1 [root@master ~]# mysqldump -uroot -p -B mydb > master.sql 说明:-B参数有建库语句。...1.3 从库导入数据库 1 [root@Slave01 ~]# mysql -uroot -padmin < master.sql 1.4 主库解开锁表功能 1 mysql> unlock tables
领取专属 10元无门槛券
手把手带您无忧上云