博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据库搭建主从复制结构(主写从读)
阅读量:3947 次
发布时间:2019-05-24

本文共 1699 字,大约阅读时间需要 5 分钟。

一、数据库准备

  在搭建数据库主从复制之前,我们先准备两个数据库(这里搭建的是最基础的主从复制结构,主数据库负责写操作,从数据库负责读操作)。建议两个数据库的版本尽量保持一致

在这里插入图片描述

二、搭建过程

2.1 配置Master节点(主数据库)

  先切换到主数据库,进入主数据库的配置文件:

vim /etc/my.cnf

将如下配置粘贴进去:

# 同一局域网内注意要唯一server-id=150# 开启二进制日志功能,名字任意取(mysql-bin就是自定义的二进制名字)log-bin=mysql-bin#复制过滤:不需要备份的数据库不输出(mysql库一般不需要同步)binlog-ignore-db=mysql#为每个session分配内存,在事务过程中用来存储二进制日志的缓存binlog_cache_size=1M#主从复制的格式(mixed,statement,row,默认格式是statement)binlog_format=mixed

2.2 配置Slave节点(从数据库)

  切换到从数据库,进入从数据库的配置文件:

vim /etc/my.cnf

将下面配置粘贴到my.cnf配置文件中

#设置server id ,局域网内必须要唯一server-id=151#开启二进制日志功能,以备slave作为其他从数据库的master时使用(当前主库宕机了,挑选新的从库作为其他从库的主库情况)log-bin=mysql-slave-bin#relay_log配置中继日志relay_log=edu-mysql-relay-bin#复制过滤:不需要备份的数据库,不输出(mysql库一般不同步)binlog-ignore-db=mysql#如果需要同步函数或者存储过程log_bin_trust_function_creators=true#为每个session分配内存,在事务过程中用来存储二进制日志的缓存binlog_cache_size=1M#主从复制的格式(mixed,statement,row,默认格式是statement)binlog_format=mixed#跳过主从复制中遇到的所有错误或指定类型的错误,避免slave端复制中断#如:1062错误是指一些主键重复,1032错误是因为主从数据库数据不一致slave_skip_errors=1062

  各自执行下面命令,重启主数据库和从数据库

systemctl restart mysqld

2.3 主数据库(Master)授权从数据库(Slave)可以同步权限

  master库和slave库的配置文件修改之后,需要在master库里面对slave进行同步授权,允许slave同步master的数据。

此时需要先登录进入master库后台

mysql -u root -p输入数据库密码

在这里插入图片描述

  然后输入如下指令:

#给root用户分配一个replicaiton slave 从节点复制的权限 grant replication slave on *.* to 'root'@'%';#刷新flush privileges;#查看master状态show master status;

在这里插入图片描述

2.4 从数据库(Slave)设置主节点同步

登录到从数据库的后台,输入如下指令:

change master tomaster_host='主服务器IP',master_port=3306,master_user='root',master_password='123456',master_log_file='mysql-bin.000002',master_log_pos=484;
# 开启slavestart slave;#查看主从同步状态show slave status \G;

在这里插入图片描述

  到这里,主从复制结构已经搭建完成,接下来测试:

三、主从复制测试

  在navicat工具中同时连接上主数据库从数据库

在这里插入图片描述
然后在主库中创建一个新的数据库db_test
在这里插入图片描述
发现从库也新添加了一个db_test数据库,说明主从复制搭建成功。

转载地址:http://nvhwi.baihongyu.com/

你可能感兴趣的文章
在线测速网址
查看>>
mysql中GROUP_CONCAT的应用
查看>>
研发人员的绩效考核
查看>>
Python 3 之多线程研究
查看>>
Python 3中的多线程文件下载类
查看>>
Python库之MySQLdb介绍
查看>>
Python3中利用Urllib进行表单数据提交(Get,Post)
查看>>
Python开发之扩展库的安装指南及Suds(Webservice)的使用简介
查看>>
软件项目管理一点分享
查看>>
iphone程序打包ipa格式
查看>>
Ios开发之Apns功能介绍(应用程序通知)及PHP/Python代码
查看>>
iphone开发的几个Apple官方中文教程地址
查看>>
Algorithms: Kruskal's algorithm and Prim's algorithm for Minimum-spanning-tree
查看>>
Algorithm : Dijkstra's algorithm and Bellmon-Ford Paths algorithm
查看>>
Algorithm: k-nearest neighbors and decison boundary(Cross Validation)
查看>>
Algorithm: Principle Component Analysis for High Dimension Reduction Data
查看>>
Naive Bayesian for Text Classification (MLE, Gaussian Naive Bayesian)
查看>>
Algorithm: Decision Tree, Entropy, Information Gain and Continues features
查看>>
FastDFS 架构分析
查看>>
Windows 应用生成MiniDump文件的方法笔记
查看>>