虚拟机+centos7+mysql主从配置

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

虚拟机配置Mysql主从1、准备工作2、首先第一个坑是安装mysqlCentOS7的yum源中默认好像是没有mysql的,一般百度搜centos安装mysql会出现很多,这里不多说,就是提示下,看看centos的版本再继续。安装完建个测试库:createdatabase`test_data`;3、配置主从在网上找了两个教程,大部分能用,有小部分有问题。下面做下总结。①检查mysql是否开机启动systemctllist-unit-files|grepmysql(centos7及以上)chkconfig--list|grepmysqld(centos7以下)②设为开机启动systemctlenablehttpd.service(centos7及以上)chkconfigmysqldon(centos7以下)③主库关闭防火墙systemctlstopfirewalld.service(CentOS7.0默认使用的是firewall作为防火墙)serviceiptablesstop(centos7以下)关于systemctl命令,自己有兴趣可以查下④修改主库my.cnf,主要是设置个不一样的id和logbin[root@mastermysql]#vi/etc/my.cnf#记住这部分一定要配置在[mysqld]后面,否则无法找到从节点,各个配置项的含义可自己查阅文档[mysqld]log-bin=mysql-binserver-id=1binlog-do-db=test_data//需要复制的数据库,如果没有本行,即表示复制所有的数据库binlog-ignore-db=information_schemabinlog-ignore-db=mysql⑤启动主库生效重启mysqld就行安装Centos.7静态IP配置主库IP:192.168.1.22从库IP:192.168.1.23Centos7安装mysql配置主从参考://blog.csdn.net/faye0412/article/details/6280761servicemysqldrestart或者systemctlrestartmysqld.service查看mysql状态:systemctlstatusmysqld.service查看mysql日志:journalctl-xe⑥登陆主库[root@localhostetc]mysql-uroot–p⑦创建同步账号mysqlgrantreplicationslaveon*.*to'这里是从库登录主库用户名'@'这里是从库IP地址'identifiedby'这里是从库登录主库的密码';例:grantreplicationslaveon*.*to'slave'@'192.168.1.23'identifiedby'slave';⑧检查创建是否成功selectuser,hostfrommysql.user;⑨显示主库信息记录File和Position,从库设置将会用到mysqlshowmasterstatus;+------------------+----------+---------------+--------------------------+|File|Position|Binlog_Do_DB|Binlog_Ignore_DB|+------------------+----------+---------------+--------------------------+|mysql-bin.000001|245||information_schema,mysql|+------------------+----------+---------------+--------------------------+1rowinset(0.00sec)#说明,如果执行这个步骤始终为Emptyset(0.00sec),那说明前面的my.cnf没配置对。⑩设置从库my.cnf#记住这部分一定要配置在[mysqld]后面,否则无法找到从节点,各个配置项的含义可自己查阅文档[mysqld]log-bin=mysql-binserver-id=2replicate-do-db=test_datareplicate-ignore-db=mysqlreplicate-ignore-db=information_schemamaster-host=192.168.1.22master-user=slavemaster-password=slavemaster-connect-retry=60保存退出Mysql版本从5.1.7以后开始就不支持“master-host”类似的参数所以master这部分参数不在my.cnf里面设置,而是登录mysql去设置。#注意下面命令语句中的master_log_file='mysql-bin.000001',master_log_pos=98;对应为前面在主库中执行的showmasterstatus;结果stopslave;changemastertomaster_host='192.168.1.22',master_user='root',master_password='pfingo',master_log_file='mysql-bin.000001',master_log_pos=245;startslave;⑪进行测试在主库上的test_data库上建立名为myTest的表mysqlCREATETABLE`myTest`(`id`INT(5)UNSIGNEDNOTNULLAUTO_INCREMENT,`username`VARCHAR(20)NOTNULL,`password`CHAR(32)NOTNULL,`last_update`DATETIMENOTNULL,`number`FLOAT(10)NOTNULL,`content`TEXTNOTNULL,PRIMARYKEY(`id`))ENGINE=MYISAM;在从表中马上看到了效果,主从同步成功了;为了更进一步验证在从库上输入showslavestatus/G;mysqlshowslavestatus/G;Slave_IO_Running:Yes(网络正常);Slave_SQL_Running:Yes(表结构正常)进一步验证了以上过程的正确性。

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功