十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
mysql主从复制三种模式:
创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站制作、成都做网站、新余网络推广、微信小程序开发、新余网络营销、新余企业策划、新余品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供新余建站搭建服务,24小时服务热线:18982081108,官方网址:www.cdcxhl.com
1、异步复制:主服务器将执行的事务发送到从服务器,不等待从服务器的响应,主服务器只是将事务发送出去;
2、半同步复制:主服务器会等待从服务器的响应,当主服务器收到从服务器的响应后,才继续执行下一个事务;
3、同步复制:主服务器会等待从服务器的响应,主服务器将事务发送到从服务器后,必须等待从服务器的响应,从服务器确认收到事务后,主服务器才能继续执行下一个事务。
拓展:MySQL主从复制模式可以实现数据备份、提高服务器性能、实现数据安全等功能,是MySQL数据库系统中常用的一种复制方式。
可以利用光盘引导启动进入PE系统后完整拷贝硬盘内的所有数据。
所有东西完整导出到移动硬盘可以通过硬盘克隆来完成。详细操作步骤如下:
1、安装并打开软件,主页面找到“克隆”栏,选择“磁盘克隆”。
2、选择源磁盘(要导出的磁盘)
3、选择目标磁盘(要导入的磁盘)
4、选择好两个磁盘,点击“开始备份”。
5、在备份详情页面显示备份进度和详细过程。
6、进度条100%后,点击“完成”就导出所有的内容到移动硬盘了。
补充说明:移动硬盘缺点:损毁基本无法恢复:除此之外同固态硬盘一样,在硬受到物理损坏时数据是无法恢复的,不过这种情况只是小概率事件,基本不会遇到。
1、首先要在本地建立两个mysql服务,指定不同的端口。我这里一个主(3306),一个从(3307)。
2、然后修改主配置文件:
[mysqld]
server-id = 1
binlog-do-db=test #要同步的数据库
#binlog-ignore-db=mysql #不同步的数据库,如果指定了binlog-do-db这里应该可以不用指定的
log-bin=mysql-bin #要生成的二进制日记文件名称
修改从配置文件:
[mysqld]
server-id = 2
log-bin = mysql-bin
replicate-do-db=test
3、在主库添加一个用户 repl 并指定replication权限
create user 'repl'@'127.0.0.1' identified by 'asdf';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'127.0.0.1'; -- --这里我指定数据库(test.*)时报错,而指定全库(*.*)时会成功。
4、保持主从mysql的test数据库初始状态一致。
一般是先将所有的表加读锁,然后copy磁盘上的数据库文件夹。我这里直接停止服务,然后将数据文件拷贝过去。
5、在主数据库里面运行show master status;记下file和position字段对应的参数。
mysql show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 | 107 | test | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
6、在从库设置它的master:
mysql change master to master_host='127.0.0.1',master_port=3306,master_user='repl',master_password='asdf',master_log_file='mysql-bin.000001',master_log_pos=107;
Query OK, 0 rows affected (0.19 sec)
这里的master_log_file和master_log_pos对应刚才show master status记下的参数。
7、在从库开启从数据库复制功能。
slave start;
mysql slave start;
Query OK, 0 rows affected (0.00 sec)
在从库可以通过show slave status来查看一些参数。
8. 此时在主库创建表或插入数据,在从库就会很快也能看到了。
-- 主库
mysql create table tianyc_02(b int);
Query OK, 0 rows affected (0.16 sec)
mysql insert into tianyc_02 values(2013);
Query OK, 1 row affected (0.13 sec)
-- 从库
mysql show tables;
+----------------+
| Tables_in_test |
+----------------+
| tianyc_01 |
| tianyc_02 |
+----------------+
2 rows in set (0.00 sec)
mysql select * from tianyc_02;
+------+
| b |
+------+
| 2013 |
+------+
1 row in set (0.00 sec)同理,可以搭建第二、第三个从节点。
一、复制表里面的一条记录并插入表里面\x0d\x0a ① insert into article(title,keywords,desc,contents) select title,keywords,desc,contents from article where article_id = 100;\x0d\x0a\x0d\x0a二、复制表里的多条数据/记录,并插入到表里面\x0d\x0a ① INSERT INTO `power_node`(title,type,status) SELECT title,type,status FROM power_node WHERE id
回答于 2022-11-16