mysql复制怎么设置 mysql怎么复制数据

mySQL如何复制多条记录到另一张表?一、复制表里面的一条记录并插入表里面\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
如何在一台windows主机上实现MySQL的主从复制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)同理 , 可以搭建第二、第三个从节点 。
mysql主从复制三种模式mysql主从复制三种模式:
1、异步复制:主服务器将执行的事务发送到从服务器,不等待从服务器的响应,主服务器只是将事务发送出去;
2、半同步复制:主服务器会等待从服务器的响应,当主服务器收到从服务器的响应后 , 才继续执行下一个事务;
3、同步复制:主服务器会等待从服务器的响应,主服务器将事务发送到从服务器后,必须等待从服务器的响应,从服务器确认收到事务后,主服务器才能继续执行下一个事务 。
拓展:MySQL主从复制模式可以实现数据备份、提高服务器性能、实现数据安全等功能,是MySQL数据库系统中常用的一种复制方式 。
【mysql复制怎么设置 mysql怎么复制数据】关于mysql复制怎么设置和mysql怎么复制数据的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读