开发者社区> 攻城狮Chova> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

MySQL数据库主从安装配置使用指南

简介: 本篇文章介绍了在Linux环境中安装MySQL数据库,实现数据库主从配置的详细的指导过程。本文使用的MySQL数据库的一个分支MariaDB实现主从数据库的安装配置。介绍了数据库的安装方法,主从配置的方式,以及针对在配置过程中出现的一些问题,提供一些解决方案。
+关注继续查看

MariaDB主从安装配置

  • 使用MariaDB做数据库实现主从配置

    • MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区维护,完全兼容MySQL,包括API和命令行,可以作为MySQL的替代品
    • 在存储引擎方面,使用XtraDB代替MySQL的InnoDB
  • 邮件类型:

    • 用户安全类
    • 订单类
    • 统计类
    • 消息类

Linux 7修改IP地址

  • 在网络适配器中生成MAC地址
  • 进入编辑 /etc/sysconfig/network-scripts/ifcfg-eno16777736
  • 修改HWADDRMAC地址,修改IPADDRIP地址
  • 运行service network restart
  • 进入 /etc/hostname修改hostname
  • 运行hostname bhz34

安装MariaDB

配置本地yum源:

  • cd /etc/yum.repos.d/
  • 创建一个文件,以repo结尾:yum.repo
  • 添加如下配置:
name=yum
enabled=1
baseurl=(url地址)
gpgcheck=0
  • 查询是否已经存在MariaDB
systemctl stop mariadb            停止MariaDB服务
rpm -qa | grep mariadb            查询安装包
  • 卸载已经存在的MariaDB
rpm -e mariadb-server
rpm -e mariadb
rpm -e --nodeps mariadb-libs
  • 执行yum安装MariaDB
yum -y install mariadb mariadb-server
  • 复制配置文件
cp /usr/share/mysql/my-huge.cnf /etc/my.cnf
  • 配置不区分表名的大小写
vim /etc/my.cnf

在[mysqld]后增加配置
lower_case_table_names=1
  • 启动mariadb服务并开机自动运行
systemctl start mariadb
systemctl enable mariadb
  • 禁用防火墙
systemctl status firewalld        查看防火墙状态
systemctl stop firewalld        停止防火墙
systemctl disable firewalld        设置开机不启用防火墙
  • 配置MariaDB数据库,执行脚本: /usr/bin/mysql_secure_installation,然后根据提示操作
/usr/bin/mysql_secure_installation

MariaDB主从配置

  • 修改 /etc/my.cnf配置文件中的server-id

    • 主节点默认为1,不需要修改
    • 修改从节点的server-id
server-id=2
  • 重启从节点(slave)上的MariaDB
systemctl restart mariadb
  • 在主节点创建主从复制用户并授权Slave
mysql -uroot -proot            登录MariaDB数据库
<mysql> GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'slave';        *.* - 所有权限    % - 任意地址
  • 查询MySQL中主节点(master)的状态
show master status;
  • 配置从节点(slave)
mysql -uroot -proot            登录从节点的MariaDB数据库
<mysql> CHANGE MASTER TO MASTER_HOST='主节点IP',MASTER_USER='主节点授权用户',MASTER_PASSWORD='主节点授权用户密码',MASTER_LOG_FILE='主节点状态中的File',MASTER_LOG_POS='主节点状态中的Position';
  • 查看主从状态验证
show slave status\G;
  • 授权远程root登录,主从数据库都要进行授权
mysql -uroot -proot        登录MariaDB数据库
<mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
<mysql> FLUSH PRIVILEGES;

注意点

  • ==使用MySQL做主从数据库,不允许对从节点数据库进行修改==

解决方案

  • 原因:

    • 程序可能在slave上进行了写操作
    • 可能是slave机器重启后,事务回滚造成的
  • 事务回滚的解决办法:
<mysql> stop slave;
<mysql> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
<mysql> start slave;

  • 首先停掉slave服务
<mysql> slave stop;
  • 进入master服务器查看主机状态,记录FilePosition对应的值
<mysql> show master status;
  • 然后进入slave服务器执行手动同步
<mysql> CHANGE MASTER TO MASTER_HOST='主节点IP',MASTER_USER='主节点授权用户',MASTER_PASSWORD='主节点授权用户密码',MASTER_LOG_FILE='主节点状态中的File',MASTER_LOG_POS='主节点状态中的Position';
  • 最后启动slave数据库
<mysql> start slave;

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
关于mysql集群主从服务器搭建
关于mysql集群主从服务器搭建
0 0
mysql进阶:canal搭建主从|集群架构
之前我们讲解过canal的各种应用,但是对于生产环境来讲,服务高可用是必须保证的。因此canal单节点是不能满足我们的需求的。就需要搭建canal集群。
0 0
【Docker 基础教程】Mysql主从服务搭建------Mysql容器闪退及容器名冲突系列问题
【Docker 基础教程】Mysql主从服务搭建------Mysql容器闪退及容器名冲突系列问题
0 0
【Docker 基础教程】Mysql主从环境搭建
【Docker 基础教程】Mysql主从环境搭建
0 0
MySQL 5.6 主从报错一例
MySQL 5.6 主从报错一例
0 0
关于Linux下Mysql集群同步(主从、一主多从、主从从)部署及同步策略的一些笔记
和小伙们分享一些Mysql集群主从同步部署相关的笔记 博文内容涉及: 为什么需要mysql集群主从同步 主从同步原理 部署不同主从结构的Mysql集群 一主一从 一主多从 主从从 主从同步使用的复制模式介绍配置 食用方式:了解Linux、Mysql即可 理解不足小伙伴帮忙指正
0 0
Mysql主从+springboot+mybatis实践篇
Mysql主从+springboot+mybatis实践篇
0 0
MySQL主从异常Coordinator stopped because there were error(s) in the worker(s). The most recent failur
MySQL主从异常Coordinator stopped because there were error(s) in the worker(s). The most recent failur
0 0
MySQL 主从,6 分钟带你掌握!
大家好,我是楼仔! MySQL 主从一直是面试常客,里面的知识点虽然基础,但是能回答全的同学不多。 比如我之前面试小米,就被问到过主从复制的原理,以及主从延迟的解决方案,你之前面试,有遇到过哪些 MySQL 主从的问题呢?
0 0
揭秘MySQL主从数据不一致
目前MySQL数据库最常用的是主从架构,大多数高可用架构也是通过主从架构演变而来。但是主从架构运行时间长久后容易出现数据不一致的情况,比如因从库可写造成的误操作或者复制bug等,本篇文章将会详细探究出现主从不一致及如何解决这种问题。
0 0
+关注
攻城狮Chova
一位有自我修养的攻城狮。 2006年《时代》周刊年度人物, 2008年感动中国组委会特别奖获得者。 专注分享技术干货,面试经验和攻城狮故事~ 欢迎点赞关注支持,是我持续进步的动力!
文章
问答
文章排行榜
最热
最新
相关电子书
更多
让 MySQL 原生分布式触手可及
立即下载
好的 MySQL 兼容可以做到什么程度
立即下载
云数据库RDS MySQL从入门到高阶
立即下载