欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MySQL主从复制单表或者多表

程序员文章站 2024-01-08 08:47:58
...

MySQL数据库安装不过多的介绍了:必须保证2个数据库的版本一致。 主数据库:192.168.0.43 从数据库:192.168.0.53 修改43主数据

MySQL数据库安装不过多的介绍了:必须保证2个数据库的版本一致。



主数据库:192.168.0.43

从数据库:192.168.0.53

修改43主数据库的配置文件:

打开logbin日志生成文件:

# binary logging - not required for slaves, but recommended

log-bin=mysql-bin

# binary logging format - mixed recommended

binlog_format=mixed

server-id=Master_id选nf文项,其中master_id必须为1到232–1之间的一个正整数值。去掉前面的注视符号

server-id = 1

重新启动数据库服务。

配置复制:

1. 建立一个专门用于复制的账户允许它远程登陆:

mysql > GRANT FILE,SELECT,REPLICATION SLAVE ON *.* TO ' slaveuser'@'192.168.0.53' IDENTIFIED BY 'password';

mysql > FLUSH PRIVILEGES;

2.主服务器上当前的二进制日志名和偏移量值,直接输入命令SHOW MASTER STATUS.

mysql> SHOW MASTER STATUS;

+------------------+-----------+--------------+------------------+

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+------------------+-----------+--------------+------------------+

| mysql-bin.000017 | 351051132 | | |

+------------------+-----------+--------------+------------------+

1 row in set (0.00 sec)



File列显示日志名,而Position显示偏移量。在该例子中,二进制日志值为mysql-bin.000017偏移量为351051132。记录该值。以后设置从服务器时需要使用这些值。它们表示复制坐标,告诉从服务器应从该点开始从主服务器上进行更新。

取得快照并记录日志名和偏移量后,,可以在主服务器上重新启用写活动:



上面的操作步骤2你可以不用 采用步骤3的方法 这样可以保证不停止你的主库的时候 数据的偏移量节点都是一致的。




3.使用mysqldump备份主服务器的数据,将转储文件装载到从服务器:

root@hr43 > mysqldump --master-data -u root -p hrsoft_share 表名 > 表名.sql



grep 'mysql-bin' 表名.sql 查询二进制日志名和偏移量值

拷贝 vip_company.sql 文件到从数据上。

修改53从服务器上面的数据库配置文件:

log-bin=mysql-bin #开始bin-log日志

server-id = 2

master-host = 192.168.0.43 #主数据库地址

master-user = 'slaveuser' #执行登录用户

master-password = 'password' #执行密码

master-port = 3306 #默认端口

report-host = net-app1

master-connect-retry = 30 # 如果从服务器发现主服务器断掉重新连接时间30S

log-bin

expire_logs_days = 3 #保留3天的日志文件

log-slave-updates

replicate-do-table=hrsoft_share.表名# 只复制表名表

如果要是复制多个表只要在下面直接添加(复制几个就添加几个)

replicate-do-table=hrsoft_share.表名

MySQL主从复制单表或者多表

上一篇:

下一篇: