Linux系统下MySQL配置主从分离的步骤

目录
  • 主数据库操作(ip:192.168.176.110)
  • 主数据库操作(ip:192.168.176.120)
  • 总结
主服务器 192.168.176.110
从服务器 192.168.176.120

主数据库操作(ip:192.168.176.110)

配置MySQL主服务器的配置文件

[root@localhost ~]# vi /etc/my.cnf

在my.cnf内加上如下配置

server-id = 1 #保证唯一性
log-bin = mysql-bin #主从服务的核心 定义binblog日志的前缀名
#binlog-do-db=test #需要同步的数据库,如果没有本行,即表示同步所有的数据库
#binlog-do-db=mydb #需要同步的数据库,同时同步test、mydb库 、
#binlog-ignore-db=mysql #被忽略的数据库

重启MySQL主服务器

[root@localhost ~]# service mysqld restart

登录MySQL

[root@localhost ~]# mysql -uroot -p123456 

查看数据库状态

需要记住File列和Position列的数据,配置从服务器需要使用

mysql> show master status;

主数据库操作(ip:192.168.176.120)

配置MySQL从服务器的配置文件

[root@localhost ~]# vi /etc/my.cnf

在my.cnf内加上如下配置

server-id = 2 #保证唯一性

重启MySQL主服务器

[root@localhost ~]# service mysqld restart

登录MySQL

[root@localhost ~]# mysql -uroot -p123456 

配置同步主服务器:

master_host主服务器地址

master_port主服务器端口

master_user主服务器用户名

master_password主服务器密码

master_log_file 对应上图的主服务器File列数据

master_log_pos对应上图的主服务器Position列数据

mysql> change master to master_host='192.168.176.110',master_port=3306,master_user='root',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=157;

开启服务,并查看服务状态

mysql> start slave;  #开启从服务
mysql> show slave status\G; #查看从服务状态

配置成功

配置出错

注意:配置主从同步,出现Slave_IO_Running: No 情况处理方式(复制同一套环境出现的问题)

如果出现上图的错误,说明两台虚拟机的MySQL环境的UUID一致。 可以通过命令检测他们的UUID。

[root@localhost ~]# cat /var/lib/mysql/auto.cnf

如果命令无效 则进入到MySQL,执行以下命令获取安装的路径

mysql> show variables like 'datadir';

然后从服务器生成一个新的UUID

mysql> select uuid();

复制后 通过命令去修改里面的UUID(路径为自己mysql安装路径)

[root@localhost ~]# vi /var/lib/mysql/auto.cnf

最后重启下mysql服务

[root@localhost ~]# service mysqld restart

执行完后重新的去执行【配置同步主服务器】的步骤,配置参数和主服务器相同的即可

以上是配置主从同步,出现Slave_IO_Running: No 情况处理方式

主服务器创建数据库

主库宕机处理方式

1-确保所有的relay log全部更新完毕,在每个从库上执行show processlist

2-更新完毕后,登录所有从库查看master.info文件,对比选择pos最大的作为新的主库,

3-然后登录这个新的主库,执行stop slave;进入主目录,删除master.Info和relay-log.info配置my.cnf文件开启log-bin文件

4-创建用于同步的用户并授权slave

5-登录另外一台从库,执行stop slave停止同步

6-执行start slave

7-修改新的master数据,测试slave是否同步更新

从库宕机

1-查看从库上mysql的错误日志,里面有记录主从挂掉时的binlog信息。

2-有了binlog和postion信息后,只需要重新在从库上进行change master to配置即可。配置后开启slave状态,没有报错

3-查看slave状态,发现slave已经正常了,开始进行延时数据恢复。

总结

到此这篇关于Linux系统下MySQL配置主从分离的文章就介绍到这了,更多相关MySQL配置主从分离内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Mysql数据库之主从分离实例代码

    介绍 MySQL数据库设置读写分离,可以使对数据库的写操作和读操作在不同服务器上执行,提高并发量和相应速度. 现在的网站一般大点的,都采用有数据库主从分离.读写分离,即起到备份作用也可以减轻数据库的读写的压力,一直听说过这些,但是自己从没有自己动手亲手实践过,今天有时间实践一下,记录下过程. 实验环境 我准备了两台服务器,一个是本机电脑,一个是远程vps,分别在两台机子上装的有数据库. MySQL安装我就不介绍了,这里需要注意的是:MySQL安装的版本最好一致,如果不一致,低版本向高版本读的时候

  • MySQL主从同步、读写分离配置步骤

    现在使用的两台服务器已经安装了MySQL,全是rpm包装的,能正常使用. 为了避免不必要的麻烦,主从服务器MySQL版本尽量保持一致; 环境:192.168.0.1 (Master) 192.168.0.2 (Slave) MySQL Version:Ver 14.14 Distrib 5.1.48, for pc-linux-gnu (i686) using readline 5.1 1.登录Master服务器,修改my.cnf,添加如下内容: server-id = 1 //数据库ID号,

  • 详解MySQL的主从复制、读写分离、备份恢复

    一.MySQL主从复制 1.简介 我们为什么要用主从复制? 主从复制目的: 可以做数据库的实时备份,保证数据的完整性: 可做读写分离,主服务器只管写,从服务器只管读,这样可以提升整体性能. 原理图: 从上图可以看出,同步是靠log文件同步读写完成的. 2.更改配置文件 两天机器都操作,确保 server-id 要不同,通常主ID要小于从ID.一定注意. # 3306和3307分别代表2台机器 # 打开log-bin,并使server-id不一样 #vim /data/3306/my.cnf lo

  • 详解MySQL主从复制读写分离搭建

    MySQL主从设置 MySQL主从复制,读写分离的设置非常简单: 修改配置my.cnf文件 master 和 slave设置的差不多: [mysqld] log-bin=mysql-bin server-id=222 log-bin=mysql-bin的意思是:启用二进制日志. server-id=222的意思是设置了服务器的唯一ID,默认是1,一般取IP最后一段,可以写成别的,只要不和其他mysql服务器重复就好. 这里,有的MySQL默认的my.cnf文件引用了/etc/mysql/conf

  • mysql主从复制读写分离的配置方法详解

    一.说明 前面我们说了mysql的安装配置,mysql语句使用以及备份恢复mysql数据;本次要介绍的是mysql的主从复制,读写分离;及高可用MHA; 环境如下: master:CentOS7_x64 mysql5.721 172.16.3.175 db1 slave1:CentOS7_x64 mysql5.7.21 172.16.3.235 db2 slave2:CentOS7_x64 mysql5.7.21 172.16.3.235 db3 proxysql/MHA:CentOS7_x64

  • Linux系统下MySQL配置主从分离的步骤

    目录 主数据库操作(ip:192.168.176.110) 主数据库操作(ip:192.168.176.120) 总结 主服务器 192.168.176.110 从服务器 192.168.176.120 主数据库操作(ip:192.168.176.110) 配置MySQL主服务器的配置文件 [root@localhost ~]# vi /etc/my.cnf 在my.cnf内加上如下配置 server-id = 1 #保证唯一性 log-bin = mysql-bin #主从服务的核心 定义bi

  • Linux系统下快速配置HugePages的完整步骤

    前言 关于Linux系统的HugePages与Oracle数据库优化,可以参考熊爷之前的文章,相关概念介绍的非常清晰: Linux大内存页Oracle数据库优化 本文旨在Linux系统上快速配置HugePages 测试环境:RHEL6.8 + 512G物理内存:Oracle 11.2.0.4 SGA=400G. 1.设置memlock无限制 在/etc/security/limits.conf配置文件中,设置oracle用户memlock无限制: vi /etc/security/limits.

  • linux系统下安装配置解压版的MySQL数据库图解

    一.解压文件到当前目录 命令:tar -zxvf mysql....tar.gz 二.移动解压完成的文件夹到目标目录并更名mysql 命令:mv mysql-版本号 /usr/local/mysql 添加系统mysql组和mysql用户 添加系统mysql组 sudo groupadd mysql 添加mysql用户 sudo useradd -r -g mysql mysql  添加完成后可用id mysql查看 然后进入/usr/local/mysql目录 设置mysql用户组对该文件夹操作

  • Linux系统下Mysql使用简单教程(一)

    如果你会查询这些相关的问题,说明你是一个正在或者准备从事IT的程序猿,对于一个程序猿而言,不会使用linux系统的程序猿不是一好的程序猿哦!因为windows有时候真的让人很抓狂,而本人也相信没有什么习惯是不可以改变的.so以下都是在linux系统中的使用: 安装mysql命令 :$ sudo apt-get install -y mysql-server 查看mysql的版本命令(注意-V是大写,不然会出现如下错误):$ mysql -V 启动mysql命令(其它关闭,重启等功能只需将star

  • Linux系统下grub.cfg文件损坏修复步骤

    目录 一.grub.cfg文件介绍 1.grub.cfg文件位置 2.grub.cfg文件作用 3.系统启动流程介绍 二.grub.cfg文件损坏,系统开机启动界面 三.修复步骤 1.指定/boot目录所在分区 2.加载内核文件,并以只读方式挂载根分区 3.指定initramfs文件 4.启动 5.进入系统,重新生成grub.cfg文件 一.grub.cfg文件介绍 1.grub.cfg文件位置 /boot/grub2/grub.cfg [root@node1 grub2]# ls device

  • Linux系统下安装android sdk的方法步骤

    本文阐述的是如何在Linux系统中安装Android SDK 环境,下面话不多说,来看看详细的介绍吧. 直接下载解压: wget http://dl.google.com/android/android-sdk_r22.0.5-linux.tgz 修改对应的版本号即可. 关于后续的sdk更新,可以使用命令行版本的sdkmanager 直接更新到最新的sdk: tools/android update sdk --no-ui 显示所有的sdk版本 android list sdk --all 会得

  • linux系统下hosts文件详解及配置

    hosts文件 hosts -- the static table lookup for host name(主机名查询静态表). hosts文件是Linux系统上一个负责ip地址与域名快速解析的文件,以ascii格式保存在/etc/目录下.hosts文件包含了ip地址与主机名之间的映射,还包括主机的别名.在没有域名解析服务器的情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的ip地址,否则就需要使用dns服务程序来解决.通过可以将常用的域名和ip地址映射加入到hosts文件中

  • Linux系统下修改mysql字符集为UTF8步骤

    目录 1.数据库中查看MySQL状态: 2.修改配置文件: 3.若是还没成功,可能是创建mysql时的配置或者刚上一步MySQL没有停止服务编辑 my.cnf 配置文件. Linux上修改MySQL字符编码为UTF8 开始在linux上装好了MySQL服务,在后期的使用过程中,突然发现在插入记录时,部分字段不能为中文,报错信息如下: mysql> insert into syudent values(1,'陶盼',21); ERROR 1366 (HY000): Incorrect string

  • Linux虚拟机下mysql 5.7安装配置方法图文教程

    记录一下Linux虚拟机下MySQL安装配置方法 一. 下载mysql5.7 http://mirrors.sohu.com/mysql/MySQL-5.7/ Linux下载: 输入命令:wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz 二.建立用户,以及mysql的目录 1.建立一个mysql的组 输入命令: groupadd mysql 2.建立mysql用户,并放到m

  • 最新Linux系统下安装MySql 5.7.17全过程及注意事项

    1.cd /usr/local/ ##进入local目录 2.cp /home/soft/MySQL-5.7.15-Linux-glibc2.5-x86_64.tar.gz /usr/local/ ##拷贝mysql压缩到local目录 3.cd /usr/local/ ##进入local目录 4.tar -xzvf mysql-5.7.15-linux-glibc2.5-x86_64.tar.gz ##解压mysql压缩包 5.mv mysql-5.7.15-linux-glibc2.5-x8

随机推荐