精华内容
下载资源
问答
  • mysql 部署主从数据库
    2021-11-23 11:08:27

    部署环境:

    linux Centos 7

    mysql8.0.21

    服务器两台(一主一从)   192.168.121.10 (主库)、192.168.121.20 (从库)

    数据库安装步骤参考上篇链接linux安装mysql详细教程(远程连接)_一朵纯洁的小白花的博客-CSDN博客

    两台服务器最好安装版本一致

    开始部署

    1、配置master主服务器的mysql

    [root@localhost bin]# vim /etc/my.cnf
    
    

    1.在[mysqlId]下新添加
    server-id=10      //服务器唯一标识
    log_bin=master-bin        //启动MySQL二进制日志,即数据同步语句,从数据库会一条一条的执行这些语句
    log_bin_index=master-bin.index
    binlog_do_db=testdb     //指定记录需要复制的数据库名称,如果复制多个数据库,重复设置这个选项即可

    wq保存

    2.在主服务器上创建从服务器的用户和权限

    进入mysql数据库,命令如下  (mysql8.0之后分为两步)

    1.创建一个远程用户
    create user 'root8'@'从库ip' identified with 'mysql_native_password' by '密码';
    2.赋予远程连接的权限
    GRANT REPLICATION SLAVE ON *.* TO 'root8'@'从库ip';
    3.刷新权限
    FLUSH PRIVILEGES;
    

    查看master信息(下面要用)    show master status;

    2、配置slave从服务器的mysql

    1.在[mysqlId]下新添加

    server-id=20      //服务器唯一标识

    relay-log=slave-relay-bin  //启动MySQL二进制日志,可以用来做数据备份和崩溃恢复,或主服务器挂掉了,将此从服务器作为其他从服务器的主服务器。
    relay-log-index=slave-relay-bin.index

    wq保存

    重启service mysql restart

    进入mysql命令行

    输入命令连接master服务器

    mysql> change master to master_host='Master服务器ip',master_port=3306,master_user='用户名',master_password='密码',master_log_file='master_bin.000004',master_log_pos=156;
    Query OK, 0 rows affected, 2 warnings (0.09 sec)
     
    解释:
     change master to master_host='ip', // 你的Master服务器ip
     master_port=3306, // 端口号
     master_user='user', // 登陆的用户名
     master_password='password' // 设置的密码
     master_log-file='master-bin.000002',  // 之前让你记住的file
     master_log-pos=156  // 之前让你记住的position

    启动slave    

    mysql> start slave;
    Query OK, 0 rows affected (0.02 sec)
    

    查看slave 状态    

    mysql> show slave status\G   (后面没有分号)

     只要 Slave_IO_Runging和Slave_SQL_Runing为Yse 就代表连接成功了

    可以自己进行测试,主数据库新建个表,看看从数据库是否也有

    常见错误之一:

    Slave_IO_Running: No

    我遇见的是因为数据偏移

    解决办法:

    先在主库执行:

    mysql> flush logs;
    Query OK, 0 rows affected (0.01 sec)
    
    mysql> show master status\G
    *************************** 1. row ***************************
                 File: mysql-bin.000005
             Position: 156
         Binlog_Do_DB:
     Binlog_Ignore_DB: mysql,information_schema,performance_schema
    Executed_Gtid_Set:
    1 row in set (0.00 sec)

    再在从库执行

    mysql> stop slave;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000005',MASTER_LOG_POS=156;
    Query OK, 0 rows affected (0.02 sec)
    
    mysql> start slave;
    Query OK, 0 rows affected (0.00 sec)

    验证,在从库执行

    mysql> show slave status\G 

    两个都为Yes

    更多相关内容
  • 部署主从数据库

    2022-01-21 18:56:48
    master_host 为主节点主机名 mysql1, master_user 为上一步中创建的用户 user,命令如下: 配置完毕主从数据库之间的连接信息之后,开启从节点服务。使用 show slave status\G命令,并查看从节点服务状态,如果 ...

    实验步骤

    1.基础环境安装

    (1)修改主机名

    使用远程连接工具 CRT 连接到 192.168.200.30、 192.168.200.40 这两台虚拟机,并对这两台虚拟机进行修改主机名的操作, 192.168.200.30 主机名修改为 mysql1, 192.168.200.40主机名修改为 mysql2。命令如下:
    mysql1 节点:
    在这里插入图片描述
    mysql2 节点:
    在这里插入图片描述

    (2)关闭防火墙及 SELinux 服务

    两个节点关闭防火墙 firewalld 及 SELinux 服务,命令如下:
    在这里插入图片描述在这里插入图片描述

    (3)配置 hosts 文件

    两个节点配置/etc/hosts 文件,修改为如下:
    在这里插入图片描述在这里插入图片描述

    ( 4)配置 YUM 源并安装数据库服务

    使用项目 3-Linux 系统与服务构建运维中的方法,挂载 CentOS-7-x86_64-DVD-1511.iso镜像并自行配置 YUM 源,配置完毕后,两个节点安装数据库服务,命令如下:
    在这里插入图片描述在这里插入图片描述
    两个节点启动数据库服务并设置开机自启,命令如下:
    在这里插入图片描述在这里插入图片描述

    2.初始化数据库并配置主从服务

    (1)初始化数据库两个节点初始化数据库。

    配置数据库 root 密码为 000000,命令如下:
    在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

    (2)配置 mysql1 主节点

    修改 mysql1 节点的数据库配置文件,在配置文件/etc/my.cnf 中的[mysqld]增添如下内容。
    在这里插入图片描述
    重启数据库服务,并进入数据库,命令如下:
    在这里插入图片描述
    在 mysql1 节点,授权在任何客户端机器上可以以 root 用户登录到数据库,然后在主节点上创建一个 user 用户连接节点 mysql2,并赋予从节点同步主节点数据库的权限。命令如下:
    在这里插入图片描述

    (3)配置 mysql2 从节点

    修改 mysql2 节点的数据库配置文件,在配置文件/etc/my.cnf 中的[mysqld]增添如下内容。
    在这里插入图片描述
    在从节点 mysql2 上登录 MariaDB 数据库,配置从节点连接主节点的连接信息。
    master_host 为主节点主机名 mysql1, master_user 为上一步中创建的用户 user,命令如下:
    在这里插入图片描述
    配置完毕主从数据库之间的连接信息之后,开启从节点服务。使用 show slave status\G命令,并查看从节点服务状态,如果 Slave_IO_Running 和 Slave_SQL_Running 的状态都为YES,则从节点服务开启成功。命令如下:
    在这里插入图片描述
    可以看到 Slave_IO_Running 和 Slave_SQL_Running 的状态都是 Yes,配置数据库主从集群成功。

    3. 验证数据库主从服务

    (1)主节点创建数据库

    先在主节点 mysql1 中创建库 test,并在库 test 中创建表 company,插入表 数据,创建完成后,查看表 company 数据,命令如下:
    

    在这里插入图片描述

    (2)从节点验证复制功能

    登录 mysql2 节点的数据库,查看数据库列表。找到 test 数据库,查询表,并查询内容验证从数据库的复制功能,命令如下:
    在这里插入图片描述
    可以查看到主数据库中刚刚创建的库、表、信息,验证从数据库的复制功能成功。

    本文作为知识分享,不用于任何商业行为。
    本文参考《Linux系统与服务构建运维》

    展开全文
  • docker部署主从数据库

    千次阅读 2022-01-09 19:05:57
    前言:在毕设项目所运用到数据库...二、运行主从数据库 #主数据库 master docker run -d -p 3301:3306 --name mysql-master -e MYSQL_ROOT_PASSWORD=123456 mysql #从数据库 slave docker run -d -p 3302:3306 --name m

    前言:在毕设项目所运用到数据库读写分离,主数据库负责写,从数据库负责读,由于云服务器配置问题,就引入一主一从数据库。

    一、拉取mysql

    docker pull mysql
    docker images
    

    在这里插入图片描述

    二、运行主从数据库

    #主数据库 master
    docker run -d -p 3301:3306 --name mysql-master -e MYSQL_ROOT_PASSWORD=123456 mysql
    #从数据库 slave
    docker run -d -p 3302:3306 --name mysql-slave -e MYSQL_ROOT_PASSWORD=123456 mysql
    #查看运行情况
    docker ps
    

    在这里插入图片描述

    IDEA测试连接

    在这里插入图片描述

    在这里插入图片描述

    三、配置主从数据库

    1. master数据库

      #进入master
      docker exec -it mysql-master /bin/bash
      #切换到/etc/mysql目录下
      cd /etc/mysql
      #先安装vim
      apt-get update
      apt-get install vim
      #使用vim命令修改my.cnf
      vim my.cnf
      

      在这里插入图片描述

      编辑my.cnf

      [mysqld]
      #设置server-id,注意要唯一
      server-id=1
      #开启二进制日志功能
      log_bin=mysql-bin
      #二级制日志格式,有三种 row,statement,mixed
      binlog-format=ROW
      #控制binlog日志文件保留时间,超过保留时间的binlog日志会被自动删除
      expire_logs_days=7
      #同步的数据库,不配的话就是同步所有库
      binlog-do-db=test
      #不同步的数据库
      binlog-ignore-db=mysql
      binlog-ignore-db=information_schema
      binlog-ignore-db=performation_schema
      binlog-ignore-db=sys
      
      #退出容器
      exit
      #重启容器
      docker restart mysql-master
      
    2. slave

      #进入slave
      docker exec -it mysql-slave /bin/bash
      #切换到/etc/mysql目录下
      cd /etc/mysql
      #先安装vim
      apt-get update
      apt-get install vim
      #使用vim命令修改my.cnf
      vim my.cnf
      

      编辑my.cnf

      [mysqld]
      #设置server-id,注意要唯一
      server-id=2
      #relay_log配置中继日志
      relay_log=mysql-relay-bin
      #设置为只读
      read_only=1
      
      #退出容器
      exit
      #重启容器
      docker restart mysql-slave
      

    四、开启master-slave主从复制

    1. master

      docker exec -it mysql-master /bin/bash
      mysql -uroot -p123456
      
      #创建用户
      CREATE USER 'slave'@'%' IDENTIFIED BY '123456';
      #给用户授权
      GRANT ALL PRIVILEGES ON *.* TO 'slave'@'%' WITH GRANT OPTION;
      #修改加密方式
      ALTER USER 'slave'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
      #刷新配置
      FLUSH PRIVILEGES;
      #查看Master状态
      show master status;
      

      在这里插入图片描述

      #退出mysql
      exit
      #退出容器
      exit
      #查看本容器的ip
      docker inspect --format='{{.NetworkSettings.IPAddress}}' mysql-master
      172.17.0.4
      
    2. slave

      docker exec -it mysql-slave /bin/bash
      mysql -uroot -p123456
      
      change master to 
      #主数据库ip
      master_host='172.17.0.4',
      #主数据库用户名
      master_user='slave', 
      #主数据库密码
      master_password='123456', 
      #主数据库端口号
      master_port=3306,
      #日志文件开始复制数据
      master_log_file='mysql-bin.000004',
      #从哪个 Position 开始读,即上文中提到的 Position 字段的值
      master_log_pos=708, 
      #如果连接失败,重试的时间间隔
      master_connect_retry=30;
      
      #启动slave
      start slave;
      #查看slave
      show slave status \G;
      

      在这里插入图片描述

    3. 如果失败的话,可以从容器IP、端口,用户和密码,Position值

    五、测试主从数据库

    1. master

      在这里插入图片描述

    2. slave

      在这里插入图片描述

    展开全文
  • 如何部署主从数据库

    2020-11-10 22:22:45
    **centos7如何部署主从数据库(详细版)** 步骤: 条件:两台已经安装好centos7的虚拟机 1、基础环境: (1)修改主机名 (2)修改网络设置 (3)关闭防火墙 (4)配置hosts文件 (5)挂载并配置yum源 (6)安装...
                centos7部署主从数据库(详细版)
    

    步骤:
    条件:两台已经安装好centos7的虚拟机
    1、基础环境:
    (1)修改主机名
    (2)修改网络设置
    (3)关闭防火墙
    (4)配置hosts文件
    (5)挂载并配置yum源
    (6)安装数据库服务
    2、初始化数据库并配置主从服务
    (1)初始化数据库
    (2)配置master节点
    (3)配置slave节点
    3、验证数据库的主从服务
    实战1:
    (1)修改主机名
    第一台修改主机名为master
    vi /etc/hostname
    第二台修改主机名为slave
    vi /etc/hostname在这里插入图片描述

    重新登录:
    在这里插入图片描述(2)配置网络
    配置master的ip为192.168.200.128
    配置slave的ip为192.168.200.129
    vi /etc/sysconfig/network-scripts/ifcfg-ens33

    在这里插入图片描述修改并增加以下内容:(已标注)
    在这里插入图片描述重启网卡:
    service network restart
    出现OK则重启成功
    在这里插入图片描述slave主机重复以上步骤并将ip地址修改为:192.168.200.129

    完成之后通过ping百度来测试网络:ping baidu.com
    以下界面为成功
    在这里插入图片描述
    3、关闭防火墙及selinux服务(两台主机都需要):

    在这里插入图片描述

    4、配置hosts文件(两台主机都需要):
    vi /etc/hosts
    添加 192.168.200.128 master
    192.168.200.129 slave
    在这里插入图片描述
    5、配置yum源
    (1)确认VM的cd设备已连接(两台都需要)
    在这里插入图片描述
    (2)在opt目录下创建centos文件夹(两台都需要):
    mkdir /opt/centos
    已存在请忽略
    (3)挂载centos到opt下的centos目录下(两台都需要):
    mount /dev/cdrom /opt/centos
    查看centos目录下是否有文件
    ls /opt/centos

    在这里插入图片描述

    (4)查看本地仓库并删除文件(两台都需要):
    因为我已经配置过,所以yum.repos.d下只有一个文件
    在这里插入图片描述
    (5)修改local.repo文件(local.repo是新文件,里面没任何东西):
    vi local.repo
    在这里插入图片描述
    添加:
    [centos7]
    name=centos7
    baseurl=file:///opt/centos
    gpgcheck=0
    enabled=1
    在这里插入图片描述
    6、安装数据库服务(两台都需要):
    (1)安装数据库服务:
    yum install -y mariadb mariadb-server
    在这里插入图片描述
    出现 ‘完毕’ 或者 ‘complete’代表安装成功
    (2)启动数据库服务并设置开机自启动:
    systemctl start mariadb
    systemctl enable mariadb
    在这里插入图片描述

    2、初始化并配置主从服务(两台都需要):
    mysql_secure_installation

    在这里插入图片描述
    回车,y,密码,确认密码,y,y,y,y

    在这里插入图片描述
    出现 thanks for using mariadb!表示成功
    (1)配置master节点
    vi /etc/my.cnf
    在这里插入图片描述
    在【mysqld】添加:
    log_bin = mysql-bin
    binlog_ignore_db = mysql
    server_id = 128
    在这里插入图片描述

    (2)配置slave节点:
    vi /etc/my.cnf
    在这里插入图片描述
    在【mysqld】添加:
    log_bin = mysql-bin
    binlog_ignore_db = mysql
    server_id = 129
    在这里插入图片描述
    2、重启数据库服务并进入数据库(两台主机都需要):
    systemctl restart mariadb
    mysql -uroot -p
    在这里插入图片描述
    输入密码(注:密码不可见记得输入正确的密码)

    在master节点,授权在任何客户机上可以root用户登录到数据库:
    grant all privileges on . to root@’%’ identified by “root”;
    ‘’ ''中间是密码,我设置的密码是root
    在这里插入图片描述
    在master创建一个user用户用于主、从节点的连接,并赋予从节点同步主节点数据库的权限:
    grant replication slave on . to ‘user’@‘slave’
    identified by ‘root’;
    在这里插入图片描述
    在slave节点上登录MariaDB数据库,配置从节点连接主节点的连接信息。master_host为主节点主机名master,master_user为上一步中创建的用户user:

    change master to master_host=‘master’,master_user=‘user’,master_password=‘root’;
    在这里插入图片描述
    配置完毕主从数据库之间的连接信息之后,开启从节点服务:
    start slave;
    在这里插入图片描述
    查看从节点服务状态:
    show slave status\G;
    在这里插入图片描述
    看到 Slave_IO_Running 和 Slave_SQL_Running 的状态都为 Yes,配置数据库主从集群成功。
    3、验证
    在主节点mysql1中创建库test,并在库test中创建表company,插入表数据,创建完成后,查看表company数据。
    在这里插入图片描述
    在这里插入图片描述
    从主节点验证复制功能:
    在这里插入图片描述
    在这里插入图片描述
    可以查看到主数据库中刚刚创建的库、表、信息,验证从数据库的复制功能成功。

    展开全文
  • 主从复制 主从复制基本原理 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F9BTCzj7-1626418545214)(C:\Users\vampire\AppData\Roaming\Typora\typora-user-images\image-...
  • 如何部署主从数据库 1.规划节点 IP 主机名 192.168.200.10 mysql1 (主) IP 主机名 192.168.200.20 mysql2(从) 2.基础准备 使用本地PC环境的VMWare Workstation软件进行实操练习,镜像使用CentOS-7...
  • MySQL 部署主从数据库

    2020-01-21 21:05:58
    借助 Docker 容器部署 MySQL 主从数据库。以下内容涉及路径、端口等可更换内容会额外加以说明。 如果你还没用过 Docker,不妨先看看 Centos7 上安装 MySQL。 操作步骤 创建主从数据库的映射目录。 # 创建主(master...
  • 主从数据库部署

    2020-10-07 10:57:33
    1+x认证 (主从数据库部署主从数据库概念地址: 首先,新建虚拟机,我们默认是使用CentOS-7-x86_64-DVD-1511的镜像 镜像地址: 链接:https://pan.baidu.com/s/1Myl_GXnUg7t3OR01mCuMrQ 提取码:1511 ①安装两台...
  • Centos7安装主从数据库

    2021-12-10 10:42:09
    基础环境配置 (1) 修改3台主机的主机名及编辑3台集群虚拟机的/etc/hosts文件配置 (2) 配置yum安装源 ...部署MariaDB主从节点数据库集群服务 (1) 安装MariaDB服务 在主从两个虚拟机节点上安装Maria..
  • Docker快速部署mysql主从数据库

    千次阅读 2022-01-29 21:21:04
    主从数据库 安装docker 请参考我的另外一个文章: https://blog.csdn.net/m0_46435741/article/details/121502952 新建主mysql容器实例 创建mysql版本为5.7的容器。 挂载数据卷: 配置文件挂载到主机目录:/mydata/...
  • 1+X云计算运维与开发初级 部署主从数据库 (脚本) 思维导图 // An highlighted block #!/bin/bash ##脚本运行环境,能上网,做服务端 ##基础环境配置,修改主机名,关闭防火墙和SELinuX hostnamectl set-hostname ...
  • 部署主从数据库 主从数据库的概念: 主从数据库把数据库架构分为主数据库和从数据库。从数据库是主数据库的备份,这是一个提高信息安全的手段。主从数据库服务器不在一个地理位置上,当发生意外时,数据库可以保存。...
  • 主从数据库

    2021-01-27 20:16:13
    1.主从数据库的优点 ① 方便做数据的热备份。 ② 架构的扩展更容易。业务量越来越大,I/O访问频率过高,单机无法满足,此时做多库的存储,降低磁盘I/O访问的频率,提高单个机器的I/O性能。 ③ 读写分离,使数据库能...
  • 主要介绍了centos6使用docker部署redis主从数据库操作,结合实例形式分析了centos6环境下docker部署redis主从数据库相关命令与使用技巧,需要的朋友可以参考下
  • 本次ESB项目采用的是K8S云平台的部署模式,并且通过7台服务器实现了高可用部署,为了从数据库层面保证系统运行,保证ESB服务流程运行的稳定,所以对数据库采用主从热备的部署方案,并对主从热备的配置方式进行总结。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 60,015
精华内容 24,006
关键字:

部署主从数据库