2022年MySql数据库集群 .pdf
《2022年MySql数据库集群 .pdf》由会员分享,可在线阅读,更多相关《2022年MySql数据库集群 .pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、MySql 数据库集群1. 准备服务器由于 MySQL不同版本之间的(二进制日志 )binlog 格式可能会不一样,因此最好的搭配组合是Master 的 MySQL版本和 Slave的版本相同或者更低, Master 的版本肯定不能高于Slave版本。假设同步主机1 名为: 192.168.0.150 ,主机 2 名为: 192.168.0.142, 2 个 MySQL 的 basedir目录都是 /usr/share/mysql ,datadir 都是: /var/lib/mysql 。主机 1:操作系统: fc13.x86_64IP:192.168.0.150MySQL 版本: 5.1.5
2、2主机 2:操作系统: fc13.x86_64IP:192.168.0.142 MySQL 版本: 5.1.52 2. 安装 Mysql Yum install mysql3. 创建数据库分别登录主机1 和主机 2 的 mysql:mysql u root p创建数据库:create database repdatabase; #需要同步的数据库4. 设置同步服务器4.1 设置主机 1:192.168.0.150 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 -
3、 - - - - - - - - 4.1.1 配置 f 文件每个同步服务器都必须设定一个唯一的编号,否则同步就不能正常运行。接下来开始修改 /etc 目录下的f,在 mysqld配置段增加以下几行:server-id = 1 #唯一编号log-bin binlog-do-db= repdatabase #需要同步的数据库,如果没有本行,即表示同步所有的数据库binlog-ignore-db=mysql #被忽略的数据库master-host = 192.168.0.142 #主服务器名master-user = rep #同步账户名,默认是 test master-password = rep
4、 #同步帐户密码,默认是空master-port = 3306 #主服务器的 TCP/IP 端口号,默认是 3306 master-connect-retry=60 #为了使用事务的 InnoDB在复制中最大的持久性和一致性,应该指定innodb_flush_log_at_trx_commit=1,sync_binlog=1 选项:replicate-ignore-db=mysql replicate-do-db=repdatabase innodb_flush_log_at_trx_commit=1 sync_binlog=1 auto_increment_increment=2 #Cont
5、rols the interval between successive column values auto_increment_offset=1 #Determines the starting point for the AUTO_INCREMENT column valueskip-name-resolve #Do not resolve host names when checking client connections. Use only IP addresses. If you use this option, all Hostcolumn values in the gran
6、t tables must be IP addresses or localhost. 4.1.2 创建一个有复制权限的用户在主机 1 上增加一个账号专门用于同步,如下:mysqlGRANT REPLICATION SLAVE ON *.* TO rep192.168.0.142 IDENTIFIED BY rep; 如果想要在主机2 上有权限执行LOAD TABLE FROM MASTER 或LOAD DATA FROM 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共
7、8 页 - - - - - - - - - MASTER 语句的话,必须授予全局的FILE 和 SELECT 权限:mysqlGRANT FILE,SELECT,REPLICATION SLAVE ON *.* TO rep192.168.0.142 IDENTIFIED BY rep; 4.1.3 重启 mysql服务service mysqld restart 4.1.4 锁住主机,注意二进制日志的位置并备份主机数据库a)用 show master status 命令看日志情况mysql show master status; +-+-+-+-+ | File | Position | B
8、inlog_Do_DB | Binlog_Ignore_DB | +-+-+-+-+ | mysqld-bin.000001 | 106 | repdatabase | mysql | +-+-+-+-+ 1 row in set (0.00 sec) b)备份主机 1 上的数据,首先执行如下SQL语句:mysqlFLUSH TABLES WITH READ LOCK; 不要退出这个终端,否则这个锁就不生效了;接着导出数据: billyblack $ mysqldump -u root repdatabase /home/billy/mysql/master/repdatabase.sql 用
9、以下命令在主机上重新打开写操作功能:mysql UNLOCK TABLES;4.2 设置主机 2:192.168.0.142 4.2.1 配置 f 文件在mysqld配置段增加如下几行:server-id = 2 #唯一编号log-bin 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - binlog-do-db= repdatabase #需要同步的数据库,如果没有本行,即表示同步所有的数据库binlog-ignore-db=m
10、ysql #被忽略的数据库master-host = 192.168.0.150 #主服务器名master-user = rep #同步账户名,默认是 test master-password = rep #同步帐户密码,默认是空master-port = 3306 #主服务器的 TCP/IP 端口号,默认是 3306 master-connect-retry=60 replicate-ignore-db=mysql replicate-do-db=repdatabase #为了使用事务的 InnoDB在复制中最大的持久性和一致性,应该指定innodb_flush_log_at_trx_com
11、mit=1,sync_binlog=1 选项:innodb_flush_log_at_trx_commit=1 sync_binlog=1 auto_increment_increment=2 #Controls the interval between successive column values auto_increment_offset=2 #Determines the starting point for the AUTO_INCREMENT column value skip-name-resolve #Do not resolve host names when checki
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年MySql数据库集群 2022 MySql 数据库 集群
限制150内