首页
友情链接
这里是我的信息,欢迎你来看我
Search
1
Kubernetes通过kubeadm安装方法
15,551 阅读
2
linux 意外断电重启导致的XFS文件系统崩溃修复
253 阅读
3
MYSQL-MariaDb数据库的主从同步配置方法
237 阅读
4
tengine编译安装结合lua实现WAF防火墙
214 阅读
5
Kubernetes安装Prometheus+Grafana
200 阅读
linux
Centos
Mysql
运维
web
K8S
FRP
nginx
登录
Search
标签搜索
linux
运维
yum
centos6
自动化
kickstart
镜像制作
密码
单用户
ubuntu
debian
K8S
docker
XFS
文件系统修复
Mysql
数据库
MariaDb
同步
端口映射
ClassHuang
累计撰写
15
篇文章
累计收到
0
条评论
首页
栏目
linux
Centos
Mysql
运维
web
K8S
FRP
nginx
页面
友情链接
这里是我的信息,欢迎你来看我
搜索到
1
篇与
的结果
2021-10-11
MYSQL-MariaDb数据库的主从同步配置方法
使用数据库 MYSQL或者MariaDb1. 操作系统 Centos Ubantu Debian等,配置文件位置可能不同。 2. 配置文件位置 可能为 /etc/my.cnf /etc/my.cnf.d/server.cnf/etc/mysql/mariadb.conf.d/50-server.cnf主服务器配置示例使用 10.0.0.1 作为主服务器安装mariadb-server 10.3版本修改/etc/my.cnf 配置文件添加如下[mysqld] server-id=1 #数据库唯一ID,主从的标识号绝对不能重复。 log-bin=mysql-bin #开启bin-log,并指定文件目录和文件名前缀 binlog-do-db=typecho #需要同步liting数据库。如果是多个同步库,就以此格式另写几行即可。如果不指明对某个具体库同步,就去掉此行,表示同步所有库(除了ignore忽略的库)。 binlog-ignore-db=mysql #不同步mysql系统数据库。如果是多个不同步库,就以此格式另写几行;也可以在一行,中间逗号隔开。 sync_binlog = 1 #确保binlog日志写入后与硬盘同步 binlog_checksum = none #跳过现有的采用checksum的事件,mysql5.6.5以后的版本中binlog_checksum=crc32,而低版本都是binlog_checksum=none binlog_format = mixed #bin-log日志文件格式,设置为MIXED可以防止主键重复。同时将下行注释掉#bind-address=127.0.0.1进入数据库,配置远程访问,查看主服务器master状态(注意File与Position项,从服务器需要这两项参数)mysql -u root -p grant replication slave,replication client on *.* to root@'%' identified by"123123123"; flush privileges; show master status \G主服务器master状态输出File: mysql-bin.000001 Position: 4994 Binlog_Do_DB: row in set (0.00 sec)**导出需要同步的数据库表,可以备份导出,也可以使用Navicat 等工具进行一次数据同步。**配置好网络,确认能和主服务器通信,并安装好数据库。修改/etc/my.cnf 配置文件添加如下[mysqld] server-id=2 #设置从服务器id,必须于主服务器不同 log-bin=mysql-bin #启动MySQ二进制日志系统 replicate-do-db=typecho #需要同步的数据库名。如果不指明同步哪些库,就去掉这行,表示所有库的同步(除了ignore忽略的库)。 replicate-ignore-db=mysql #不同步test数据库 slave-skip-errors = all #跳过所有的错误,继续执行复制操作进入数据库,导入从主服务器备份的表,确保数据与当前主服务器一致。配置主从同步指令mysql -u root -p #连接数据库 stop slave; #执行同步前,要先关闭slave change master to master_host='10.0.0.1',master_user='root',master_password='123123123',master_log_file='mysql-bin.000001',master_log_pos=4994; start slave; #启动同步功能注意:master_log_file 和 master_log_pos 设置为主服务器查看到的File与Position项。查看同步状态show slave status \G如果有如下显示:Slave_IO_Running: Yes Slave_SQL_Running: Yes则同步配置成功,现在修改主服务器上数据,从服务器数据也会自动同步。主主同步配置mysql中有自增长字段,在做数据库的主主同步时需要设置自增长的两个相关配置:auto_increment_offset和auto_increment_increment。auto_increment_offset表示自增长字段从那个数开始,他的取值范围是1 .. 65535auto_increment_increment表示自增长字段每次递增的量,其默认值是1,取值范围是1 .. 65535在主主同步配置时,需要将两台服务器的auto_increment_increment增长量都配置为2,而要把auto_increment_offset分别配置为1和2.这样才可以避免两台服务器同时做更新时自增长字段的值之间发生冲突。主数据库服务器1 my.cnf 配置server-id = 1 log-bin = mysql-bin binlog-ignore-db = mysql,information_schema sync_binlog = 1 binlog_checksum = none binlog_format = mixed auto-increment-increment = 2 auto-increment-offset = 1 slave-skip-errors = all主数据库服务器2 my.cnf 配置server-id = 2 log-bin = mysql-bin binlog-ignore-db = mysql,information_schema sync_binlog = 1 binlog_checksum = none binlog_format = mixed auto-increment-increment = 2 auto-increment-offset = 2 slave-skip-errors = all数据库2也需要开放外部访问权限,然后先在数据库2配置对数据库1的同步,再配置数据库1对数据库2的同步slave stop; change master to master_host='10.0.0.1',master_user='root',master_password='123123123',master_log_file='master-bin.000001',master_log_pos=160; start slave; show slave status \Gslave stop; change master to master_host='10.0.0.2',master_user='root',master_password='123123123',master_log_file='master-bin.000001',master_log_pos=271; start slave; show slave status \G完
2021年10月11日
237 阅读
0 评论
2 点赞