mysql 的主从复制和主主复制的区别
最大区别是主从是对主操作数据,从会实时同步数据。反之对从操作,主不会同步数据,还有可能造成数据紊乱,导致主从失效。主主则是无论对那一台操作,另一个都会同步数据。一般用作高容灾方案
mysql 的主从复制和主主复制的区别
最大区别是主从是对主操作数据,从会实时同步数据。反之对从操作,主不会同步数据,还有可能造成数据紊乱,导致主从失效。主主则是无论对那一台操作,另一个都会同步数据。一般用作高容灾方案
mysql的读写分离和主从复制的区别在哪里
从目的上来说都是减小服务器压力,运转效率更高,也更有利于信息的管理
读写分: 是一个表只负责向前端展示数据,后台管理人员对数据库表进行的增删改会在另一个表里,把这两个表给他分开,各管各的,这就是读写分离
主从复制:一般就是一个表在增删改之后会及时更新到另外一个表里,保证他两数据室一样的可以说主从复制是实现读写分离的技术之一,两个是不同概念,没法直接比较。读写分离的意思是,写入的时候向 a 服务器写入,而读出的时候从 b c d 甚至更多的服务器读出;这样的架构适合于读多写少的应用,最典型的就是火车购票系统,一般我们买票的时候要先查询好多次,包括车次啊,时间啊,这都是读操作,而最后可能只买一张车票,这是写操作;做了读写分离之后,可以将资源分配到最合理的地方,不会使某些资源闲置,而另一些资源不够用;
但是读写分离必然引发主从复制,试想一共有 10 张票,买了 1 张票,读的时候如果还是读到 10 张余票就不对了,因此需要主从复制,再读的时候,就只能读到 9 张余票了;读写分离是依赖主从复制的。
但是主从复制不一定是为了读写分离,可以能是为了容灾备份。
读写分离和主从复制也不是一个层面的东西,
读写分离是编程层面的一种解决方案,
主从复制是数据库提供的一个功能。1、主从复制是用来部署两台主备数据库服务器,备数据库不停读取主服务器的bin-log日志,如果主服务器有任何修改都可以同步更新到备服务器。通过这样的方式达到数据库同步。
2、读写分离一般是针对主从两台服务器情况,主服务器负责写操作,备服务器负责读操作,这样能够缓解主服务器压力,提高系统效率。主从复制是实现读写分离的前提条件。
做读写分离时最重要的就是确保(读库和写库)数据统一,mysql主从复制可以最大程度满足数据统一。
主从复制的另一个用途是做mysql备份的。
什么是mysql 复制及其实现原理
利用mysql proxy来实现的。 MySQL Proxy最强大的一项功能是实现“读写分离(Read/Write Splitting)”。基本的原理是让主数据库处理事务性查询,而从数据库处理SELECT查询。数据库复制被用来把事务性查询导致的变更同步到集群中的从数据库。#表中最好没有主键,unique key等约束,不然下面的sql会出错。
insert into table_name values select * from table_name;#复制自己标签:10,主从复制,读写,mysql,tttt,原理,服务器 From: https://blog.51cto.com/yetaotao/5800209
mysql> create table tttt(id int(10) default 0,val int(10) default 0)engine=innod
b,default charset=utf8;
query ok, 0 rows affected (0.17 sec)
#预先插入5条数据
mysql> insert into tttt values (1,10),(1,11),(2,1),(2,2),(3,4);
query ok, 5 rows affected (0.06 sec)
records: 5 duplicates: 0 warnings: 0
#复制自己
mysql> insert into tttt select * from tttt;
query ok, 5 rows affected (0.06 sec)
records: 5 duplicates: 0 warnings: 0
#查看表,已经是10条了
mysql> select *from tttt;
+------+------+
| id| val |
+------+------+
|1 |10 |
|1 |11 |
|2 |1 |
|2 |2 |
|3 |4 |
|1 |10 |
|1 |11 |
|2 |1 |
|2 |2 |
|3 |4 |
+------+------+
10 rows in set (0.00 sec)
#再复制一次
mysql> insert into tttt select * from tttt;
query ok, 10 rows affected (0.05 sec)
records: 10 duplicates: 0 warnings: 0
#现在是20条了。
mysql> select *from tttt;
+------+------+
| id| val |
+------+------+
|1 |10 |
|1 |11 |
|2 |1 |
|2 |2 |
|3 |4 |
|1 |10 |
|1 |11 |
|2 |1 |
|2 |2 |
|3 |4 |
|1 |10 |
|1 |11 |
|2 |1 |
|2 |2 |
|3 |4 |
|1 |10 |
|1 |11 |
|2 |1 |
|2 |2 |
|3 |4 |
+------+------+
20 rows in set (0.00 sec)