Mariadb介绍:

  mariadb是mysql的一个分支,需要进一步了解的参考:https://mariadb.org/

  安装参考教程:window版安装:Mariadb 介绍 1 (安装)

         linux版安装    :centos7 yum安装mysql | mariaDb

补充: mysql的主从复制(master-slave),我就以mariadb来进行演示了

Mariadb主从复制:

  1> 基本原理:

    

    MySQL之间数据复制的基础是二进制日志文件(binary log file)。一台MySQL数据库一旦启用二进制日志后,其作为master,它的数据库中所有操作都会以“事件”的方式记录在二进制日志中,其他数据库作为slave通过一个I/O线程与主服务器保持通信,并监控master的二进制日志文件的变化,如果发现master二进制日志文件发生变化,则会把变化复制到自己的中继日志中,然后slave的一个SQL线程会把相关的“事件”执行到自己的数据库中,以此实现从数据库和主数据库的一致性,也就实现了主从复制。

  2> 实现MySQL主从复制需要进行的配置:

    1> 准备两台服务器

      master    192.168.248,147   /linux  (centos7)

      slave       192.168.248.148  /linux  (centos7)

      

centos7 安装mariadb后,默认无密码登录

> mysql -uroot -p  回车
> use mysql; 切换到mysql数据库
> update user set password=password("自定义密码") where user='root';
> flush privileges; 刷新生效

    2> 配置主服务器  (147 服务器)

> 修改配置文件:
[mysqld]
log-bin=mysql-bin #开启二进制日志
server-id= #设置server-id
> 重启mysql,创建用于同步的用户账号
mysql> CREATE USER 'huhy'@'192.168.248.147' IDENTIFIED BY 'huhy';#创建用户
mysql> GRANT REPLICATION SLAVE ON *.* TO 'huhy'@'192.168.248.147';#分配权限
mysql>flush privileges; #刷新权限
> 查看master状态,记录二进制文件名(mysql-bin.)和位置():
SHOW MASTER STATUS;

  3>从服务器slave修改:

    

从服务器配置:
>my.cnf配置文件,添加server-id
[mysqld]
server-id= #设置server-id,必须唯一
>重启mysql,打开mysql会话,执行同步SQL语句(需要主服务器主机名,登陆凭据,二进制文件的名称和位置):

CHANGE MASTER TO MASTER_HOST='192.168.248.147',MASTER_USER='huhy',MASTER_PASSWORD='huhy', MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=;
3> 启动同步进程:
  start slave; 【stop slave】
4> 查看slave状态: 
    show slave status\G;

注意:这个当其中两个都是yes的时候代码同步开启成功。  

  问题:这个可能会出现个问题, Slave_IO_Running: Connecting  连接问题: 如下:
    

产生这个问题的原因是我们创建的同步用户无法进行远程连接,从服务器无法连接到主服务器:

  grant all privileges on *.* to huhy@'%'identified by 'huhy';   授权后即可

  flush privileges;  刷新权限

 执行后即可完成同步 

补充:可以再my.cnf中设置同步哪些数据库:

# 不同步哪些数据库
binlog-ignore-db = mysql # 只同步哪些数据库,除此之外,其他不同步
binlog-do-db = test

测试:

  

   


到这mysql的主从复制已经搞好了,有不理解的可以一起讨论

mysql高级用法(1)- mariadb的主从搭建的更多相关文章

  1. MySQL高级用法

    -- 关联查询-- select * from Goods_BomItems s,Goods_Bom t where t.GoodsBomId = s.GoodsBomId and t.GoodsBo ...

  2. mysql 主从搭建步骤

    mysql 主从搭建步骤 1:主库开启master端bin-log 2:主库创建备份用户 3:主库全备 4:从库导入全备数据 5:从库修改change master to信息 6:从库slave st ...

  3. SQL server 存储过程 C#调用Windows CMD命令并返回输出结果 Mysql删除重复数据保留最小的id C# 取字符串中间文本 取字符串左边 取字符串右边 C# JSON格式数据高级用法

    create proc insertLog@Title nvarchar(50),@Contents nvarchar(max),@UserId int,@CreateTime datetimeasi ...

  4. ### MySQL主从搭建Position

    一.MySQL主从搭建 搭建主从架构的MySQL常用的有两种实现方式: 基于binlog的fileName + postion模式完成主从同步. 基于gtid完成主从同步搭建. 本篇就介绍如何使用第一 ...

  5. mysql主从搭建操作

    1.搭建说明准备工作:主从库已安装mysql软件以及xtracbackup备份工具.具体操作可参见mysql rpm安装文档. 介质 版本操作系统 Red Hat Enterprise Linux S ...

  6. SQL Server、MySQL主从搭建,EF Core读写分离代码实现

    一.SQL Server的主从复制搭建 1.1.SQL Server主从复制结构图 SQL Server的主从通过发布订阅来实现 1.2.基于SQL Server2016实现主从 新建一个主库&quo ...

  7. 《Mysql高级知识》系列分享专栏

    <Mysql高级知识>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/201756.html 文章 MySQL数据库InnoDB引擎 ...

  8. redis的Linux系统安装与配置、redis的api使用、高级用法之慢查询、pipline事物

    今日内容概要 redis 的linux安装和配置 redis 的api使用 高级用法之慢查询 pipline事务 内容详细 1.redis 的linux安装和配置 # redis 版本选择问题 -最新 ...

  9. sqlalchemy(二)高级用法

    sqlalchemy(二)高级用法 本文将介绍sqlalchemy的高级用法. 外键以及relationship 首先创建数据库,在这里一个user对应多个address,因此需要在address上增 ...

随机推荐

  1. java中HashSet对象内的元素的hashCode值不能变化

    因为不管是HashMap(或HashTable,还是HashSet),key值是以hashCode值存进去的,加入key值变了,将无法从集合内删除对象,导致内存溢出.

  2. python开发笔记-str转字典

    后台接收到post请求数据格式为json格式的字符串,不能直接用字典的get方法 909090909090909090909090909090909 Internal Server Error: /g ...

  3. 测试面试题集锦----liunx与网络

    国庆完后就回深圳了,所以也要参加面试了,我大概收集了一些感觉可能会面试到的一些笔试题,给大家参考,答案不一定全对,分为liunx ,网络,mysql,编程题,我分别按分类补充,以后在继续补充 liun ...

  4. advanceInstaller安装文件的ICON

    修改以下配置 点击icon图标位置可重新选择

  5. 定制flask-admin的主页

    flask也用了很久了,一般配合flask-admin设置后台. 但是flask-admin设置的都是自己加入的,对某些model进行管理. 下面介绍如何定制flask-admin的首页. 原来我们引 ...

  6. 【数据集】FDDB-Face Detection Data Set and Benchmark

    前言 参考 1. FDDB官网: 完

  7. es6 学习小计

    es6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这称之为解构:

  8. 从支付宝SDK的支付流程理解什么是公钥和私钥,什么是加密和数字签名

    ------------------- 这是自己总结: 支付宝SDK支付用到的公钥与私钥整理如下: 1.商户应用公钥    2.商户应用私钥 3.支付宝公钥 4.支付宝私钥   商户应用的公钥与私钥生 ...

  9. [ARM-Linux开发]Linux open函数

    Linux open函数 open 函数用于打开和创建文件.以下是 open 函数的简单描述 #include <fcntl.h> int open(const char *pathnam ...

  10. CMDB资产采集的四种方式

    转 https://www.cnblogs.com/guotianbao/p/7703921.html 资产采集的概念 资产采集的四种方式:Agent.SSH.saltstack.puppet 资产采 ...