MYSQL简单配置主从

*配置Replication**
准备两台mysql服务器,版本最好一致,防止版本不同带来的兼容性问题。

第一步:配置

主服务器配置文件:/etc/my.cnf 编辑该文件,添加如下:

 [mysqld]
 log-bin=/var/log/mysql/mysql-bin       //生成bin文件路径自己指定
 server-id=1               //随意设置数字,保证id是唯一的

日志目录:/var/log/mysql 创建:

mkdir -p /var/log/mysql
chown -R mysql.mysql /var/log/mysql    //给目录授权,属主属组给mysql

从配置文件:/etc/my.cnf 添加server-id:

 [mysqld]
 server-id=2    //同上可随意设置,主要保证它是唯一的就好

重启服务

systemctl restart mysqld

从服务器需要一个主数据库存在的用户来登陆主数据库获取数据,所以我们在主数据库里创建一个用户:

1.mysql>CREATE USER ‘user_name‘@‘%‘
2.mysql>GRANT USER REPLICATION SLAVE ON *.* TO ‘user_name‘@‘%‘ identified by ‘123‘;         

1//%所有主机可以是IP、localhost(本机)

2//REPL..SLAVE-只读权限,all=所有权限,(库名).(表名)-代表所有 ,by ‘密码‘-需遵顼密码原则

简单在从服务器测试一下刚才创建的用户能否进入主数据库

[[email protected] ~]# mysql -uuser_name -p‘123‘ -h mysql-master1(主服务器IP)

第二步:主从数据保持一致

主数据库中是否存有数据,若存有,用mysqldump 导出数据,并导入从数据库

主:

[[email protected] ~]# mysqldump -uroot -p‘xx‘ -all >/mysql_bak/all.sql
scp /mysql_bak/all.sql 192.168.xx.xx:/root/

从:

[[email protected] ~]# mysqldump -uroot -p‘xx‘ </root/all.sql

最后一步:从数据库里配置链接

查看主服务器master详情信息用来配置从数据库

mysql> FLUSH TABLES WITH READ LOCK;   --刷新所有表和阻止写入

mysql> show master status \G      --查看主master的信息
****************** 1. row ****************
             File: mysql-bin.000001     --得到起始bin文件名
         Position: 0                    --得到POS
     Binlog_Do_DB:
 Binlog_Ignore_DB:
Executed_Gtid_Set:
1 row in set (0.00 sec)

根据上面信息来从数据库里面配置:

mysql> CHEANGE MASTER TO
MASTER_HOST=‘192.168.10.130‘,   --主服务器IP
MASTER_USER=‘user_name‘,        --连接主服务器数据库的用户
MASTER_PASSWORD=‘123‘,          --用户密码
MASTER_LOG_FILE=‘mysql-bin.000001‘,  --起始bin文件名称
MASTER_LOG_POS=0;

完成后,启动从服务器的复制线程并检查--》启动:start slave 停止:stop slave

mysql> show slave start;    --启动
       Query OK, 0 rows affected (0.09 sec)

show slave status\G;        --检查
长数据中找到:Slave_IO_Running: Yes
            Slave_SQL_Running: Yes   --yes代表完成主从配置,NO则需要根据报错排查问题

排错:IO/SQL常见错误分析

IO线程:IO是从服务器用了去主服务器上去查找bin文件的,取回bin文件暂存在一处
SQL线程:从服务器到暂存处读取bin文件并写入从数据库,达到主从数据同步
      1、检查主/var/log/mysql 目录权限是否赋予给mysql
      2、主/etc/my.cnf 配置里的log-bin文件生成位置是否有多条,注释掉其他,保留自己设置
      3、主数据库上创建给从用来访问链接的用户,有权限问题
      4、server-id 相同

具体问题具体分析,多根据报错定位问题,并解决。

原文地址:https://blog.51cto.com/14514572/2432299

时间: 2024-11-05 20:41:03

MYSQL简单配置主从的相关文章

mysql简单的主从设置及问题解决

mysql简单的主从设置及问题解决 这周,本人因为工作需要,需要了解mysql如何设置主从关系,所以对这个新鲜的事物着手尝试了一下.其实网上有很多关于这个话题的文章,我也是在百度了很多文章后,终于成功的设置成功了.下面,就将一个简短易实践的过程分享给大家. 一.软件及环境 软件:MySql Server 5.6.21(主从版本尽量保持一致); 环境: 1.主机IP:192.168.10.34;主机port:3306 2.从机IP:192.168.10.35从机port:3306 二.配置过程 配

MySQL数据库配置主从服务器实现双机热备

转自:http://www.cnblogs.com/cchun/p/3712637.html 一.安装MySQL 说明:在两台MySQL服务器192.168.21.169和192.168.21.168上分别进行如下操作,安装MySQL 5.5.22  二.配置MySQL主服务器(192.168.21.169) mysql -uroot -p #进入MySQL控制台 create database osyunweidb; #建立数据库osyunweidb insert into mysql.use

Windows下多个Mysql实例配置主从(转)

https://www.cnblogs.com/jpfss/p/8143720.html 序: 网上有很多类似的文章,也是各种百度出来的,但是对于多数刚开始接触MYSQL主从的小白来说,网上文章的代码里面很多技术点都没有理解,有跌打误撞碰上的,但多数都是这篇文章卡主了,换篇文章接着卡.- -. 下面真正开始写教程之前,我希望你能够先完整的看完,再去敲代码. 方法适用于MYSQL 5.1之后的版本.之前的版本,自行百度. Mysql的主从是个什么德行我就不解释了.不然你也不会搜不到这篇文章. 环境

MySQL数据库配置主从同步

1.环境说明:DB master: 172.16.1.55 DB slave: 172.16.1.56 2.Server-id 配置(/etc/my.cnf): 主库配置server-id要比从库的ID小. 主库ID设置:Server-id=55 从库ID设置:Server-id=56 3.日志格式设置(/etc/my.cnf): log-bin=mysql-bin (主库.从库都设置) 4.主库授权从库的权限设置: grant replication slave on *.* to 'slav

mysql主从复制配置(精简版)

一.首先准备两台服务器,虚拟机即可,以笔者为例:master:192.168.1.105 slave:192.168.1.106 二.保证两台虚拟机能相互ping通,先把防火墙关闭:service iptables stop 三.安装mysql,可参考笔者linux 快速安装mysql 四.配置主从 编辑/etc/my.cnf文件 (1)配置master 添加如下配置: server-id = 1      #Server标识log-bin            #打开 MySQL 的 Bina

mysql主从简单配置

接上一篇源码安装mysql5.6. 主从服务器均安装了msyql5.6 主服务器和从服务器均开启了logbin日志. 主从服务器均开启了server-id,且serverid编号不一样. 主服务器配置同步的帐号 grant replication slave on *.* to 'repl'@'192.168.4.31' identified by 'repl'; flush privileges: show master status;看主服务器二进制文件信息. 可以从第一个二进制日志第一行开

[原创]mysql 5.6安装配置,主从分离,读写分离简单教程

文章中参考使用了多个博客的资料,汇总而成!其流程准确性被人亦本人实践! https://blog.csdn.net/qq_35206261/article/details/81321201 https://www.cnblogs.com/qianniao12/p/8011222.html https://blog.csdn.net/qq_35206261/article/details/81321201 https://blog.csdn.net/why15732625998/article/d

MySQL Replication的主从同步的常用2种配置方式

因为实际的业务需求最近就需要部署一些mysql服务器,而在部署mysql服务器中在做主从同步时用的都是MySQL Replication的主从同步的方法,当然实现mysql主从同步的方法还有很多,这里就只说使用MySQL Replication的主从同步的功能,在实现mysql的主从同步的常用的2种配置方式,当然可以根据实际的生产环境选择不同的方式,在这里就简单的把2种配置方法配置my.cnf说一下,因为以前有写过mysql的主从同步方法,这里就不再赘述了,需要可以参看:http://jim12

Mysql 5.6主从同步配置

主从同步,本质是利用数据库日志,将主库数据复制一份到从库,本质上是使用了数据复制技术. 本文概要 主库的基本配置 从库的基本配置 完全同步的步骤 注意事项 工作原理 1. 主库的基本配置 做两件事:启用日志(记录数据库操作),赋予从库复制权限.配置如下: 启用日志: # sync_binlog=1 #默认为0,当 sync_binlog=0,当事务提交之后,MySQL不做fsync之类的磁盘同步指令刷新binlog_cache中的信息到磁盘,而让Filesystem自行决定什么时候来做同步,或者