MySQL多主一从的备份方案
发布时间:2022-01-16 11:39:42 所属栏目:MySql教程 来源:互联网
导读:本篇内容介绍了MySQL多主一从的备份方法的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 为了负载均衡我们做过一主一从、一主多从,那么多主一从我们
本篇内容介绍了“MySQL多主一从的备份方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 为了负载均衡我们做过一主一从、一主多从,那么多主一从我们基本用于备份策略当中。我们知道宏观的一主多从其实就是加了几个服务器,微观到每个服务器就是一主一从的实现。多主一从的实现是也是基于一主一从,区别在于配置与启动/停止的方式上。 主服务器略 下面我们来仔细看下从服务器的配置文件/etc/my.cnf,主要有两部分[mysqld_multi]和[mysqld]模块 [mysqld_multi] mysqld = /usr/local/mysql/bin/mysqld_safe mysqladmin = /usr/local/mysql/bin/mysqladmin user = root password = 123456 # The MySQL server [mysqld1] port = 3306 socket = /tmp/mysql.sock1 pid-file = /data/dbfile/file-1.pid log-bin=mysql-bin-1 binlog_format=mixed log-error=/data/dbfile/err-1.log server-id = 1 master-host=192.168.1.1 master-user=testrep master-password=rep123 master-port=3306 master-connect-retry=30 master-info-file=master-1.info relay-log=relay-bin-2 relay-log-index=relay-bin-1.index relay-log-info-file=relay-log-1.info replicate-do-db=mytestdb innodb_data_home_dir = /data/dbfile/1test innodb_data_file_path=ibdata1:10M:autoextend innodb_log_group_home_dir = /data/dbfile/1test log-slave-updates [mysqld2] port = 3307 socket = /tmp/mysql.sock2 pid-file = /data/dbfile/file-2.pid log-bin=mysql-bin-2 binlog_format=mixed log-error=/data/dbfile/err-2.log server-id = 2 master-host=192.168.1.1 master-user=testrep master-password=rep123 master-port=3306 master-connect-retry=30 master-info-file=master-2.info relay-log=relay-bin-2 relay-log-index=relay-bin-2.index relay-log-info-file=relay-log-2.info replicate-do-db=mytestdb innodb_data_home_dir = /data/dbfile/2test innodb_data_file_path=ibdata2:10M:autoextend innodb_log_group_home_dir = /data/dbfile/2test log-slave-updates [mysqld_multi]模块说明——这个模块是必须的,否则mysqld多实例服务会起不来 其中4个选项分别指定mysqld的启动、管理位置,超级用户口令是mysqld_multi所需要的 [mysqld]模块——这个大家应该都很熟悉了实例 启动部分:[mysqld2]就是[mysqld1]的一个拷贝,区别于[mysqld1]的端口和文件 Slave部分:server-id等选项不要重复指定,每个[mysqld]Slave拥有自己的属性和文件 值得一提的是InnoDB部分,由于每个主服务器的ibdata、ib_logfile*基本是默认设置,所以Replicate过来后会交叉覆盖,这样会导致从服务器数据混乱。我们可以为每个实例配置InnoDB文件独立的存储位置来解决这一问题 启动/停止多实例 # /usr/local/mysql/bin/mysqld_multi start 1,2 # /usr/local/mysql/bin/mysqld_multi stop 1,2 查看每个实例是否都起来了 # ps aux|grep mysq l 我们可以看到四个相关进程,每个实例分别有两个进程 启动/停止还有很多种方式 # /usr/local/mysql/bin/mysqld_multi --config-file=/etc/my.cnf --mysqld=/usr/local/mysql/bin/mysqld_safe start 1,2 # /usr/local/mysql/bin/mysqladmin shutdown 1,2 “MySQL多主一从的备份方法”的内容就介绍到这里了,感谢大家的阅读。 (编辑:好传媒网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |