暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

mysql主从搭建

原创 XHJ 2020-10-20
1531

1.修改MySQL配置文件
[root@localhost ~]# vim /etc/my.cnf
文件内容
[mysqld]
#开启二进制日志
log-bin=mysql-bin
#标识唯一id(必须),一般使用ip最后位
server-id=2
#不同步的数据库,可设置多个
binlog-ignore-db=information_schema
binlog-ignore-db=cluster
binlog-ignore-db=mysql
#指定需要同步的数据库(和slave是相互匹配的),可以设置多个
binlog-do-db=test
#添加日志存储方式和规则(选填)
#设置存储模式不设置默认
binlog_format=MIXED
#日志清理时间
expire_logs_days=7
#日志大小
max_binlog_size=100m
#缓存大小
binlog_cache_size=4m
#最大缓存大小
max_binlog_cache_size=521m
2.重启MySQL
service mysqld restart
进去mysql设置允许从库获得主库日志  注:这里使用root用户配置,不建议使用,正常使用新创建的用户进行授权
[root@localhost ~]# mysql -u root -p
#给从库放权限
mysql>GRANT REPLICATION SLAVE ON . TO ‘repl’@’%’ IDENTIFIED BY ‘repl2019’;  #修改用户权限
mysql>select host,user,password from mysql.user;  #查看是否修改成功
mysql>FLUSH PRIVILEGES;   #刷新
注:如果数据库有数据需要进行数据迁移保证数据的一致性  数据迁移
创建数据库: 在从库中创建一个和主库相同的数据库,不然两个数据库不能同步(进行过数据迁移就跳过)
CREATE DATABASE test CHARACTER SET utf8 COLLATE utf8_general_ci;
4.重启MySQL,登录MySQL,查看主库信息
mysql> show master status;
 显示内容
±-----------------±---------±-------------±---------------------------------±------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
±-----------------±---------±-------------±---------------------------------±------------------+
| mysql-bin.000006 | 120 | ufind_db | information_schema,cluster,mysql | |
±-----------------±---------±-------------±---------------------------------±------------------+
1 row in set (0.00 sec)

mysql>
 注:如果执行这个步骤始终为Empty set(0.00 sec),那说明前面的my.cnf没配置对

三、Slave的配置
1.从库配置
#开启二进制日志(可以不配置)log-bin=mysql-bin
server-id=3
binlog-ignore-db=information_schema
binlog-ignore-db=cluster
binlog-ignore-db=mysql#与主库配置一直
replicate-do-db=test
replicate-ignore-db=mysql
log-slave-updates
slave-skip-errors=all
slave-net-timeout=60

4.重启MySQL,登录MySQL
#关闭Slave
mysql> stop slave; #设置连接主库信息
mysql> change master to MASTER_HOST=‘10.10.18.133’, MASTER_USER=‘repl’,MASTER_PASSWORD=‘repl2019’,MASTER_PORT=3306,MASTER_LOG_FILE=‘mysql-binlog.000003’, MASTER_LOG_POS=1585,MASTER_CONNECT_RETRY=10;
#开启Slave
mysql> start slave;

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论