我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Mysql一主多从如何部署

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Mysql一主多从如何部署

这篇文章主要介绍“Mysql一主多从如何部署”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Mysql一主多从如何部署”文章能帮助大家解决问题。

    下载tar.gz包

    选择redhat版本

    Mysql一主多从如何部署

    Mysql一主多从如何部署

    安装

    1.linux系统上创建mysql1用户

    useradd mysql1

    2.将tar.gz包上传到服务器上并且解压

    tar -zxvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz

    3.将mysql-5.7.31-el7-x86_64目录下的文件mv到 /home/mysql1下

    4.mkdir -p /home/mysql1/data 文件存储mysql1数据目录

    mkdir -p /home/mysql1/data

    5.将/etc/my.cfg文件复制到mysql家目录下

    cp /etc/my.cnf /home/mysql1/

    6.对/home/mysql1下赋权

    chmod -R 755 /home/mysq1lchown mysql:mysql -R /home/mysql1/datachmod 777 /home/mysql1/data

    7.修改mysql配置文件

    vi /home/mysql1/my.cnf

    [mysqld]user                            = port                            = 3307basedir                         = /home/mysql1datadir                         = /home/mysql1/datasocket                          = /home/mysql1/mysql.sockpid_file                        = /home/mysql1/mysql.pidlog_error                       = /home/mysql1/data/error.log#binlog日志文件log_bin                         = /home/mysql1/data/mysql-binrelay_log                       = /home/mysql1/data/relay-binslow_query_log_file             = /home/mysql1/data/slow.log#binlog过期清理时间expire_logs_days                = 15log-slave-updates               = 1log_bin_trust_function_creators = 1lower_case_table_names          = 1max_connections                 = 3000max_connect_errors              = 1000000 # 每个实例的id都设置成不一样的,比如a主机,3307 b主机设置成23307,c主机设置成33307,后面1主2从会用到server-id                       = 3307                              autocommit                      = 1# pool_size根据实际情况进行更新innodb_buffer_pool_size         = 40Ginnodb_buffer_pool_instances    = 8innodb_write_io_threads         = 16innodb_read_io_threads          = 16#mysql复制主要有三种方式:基于SQL语句的复制(statement-based replication, SBR),基于行的复制(row-based replication, RBR),混合模式复制(mixed-based replication, MBR)。对应的,binlog的格式也有三种:STATEMENT,ROW,MIXEDbinlog_format                   = ROWgtid_mode                       = onenforce_gtid_consistency        = 1innodb_flush_log_at_trx_commit  = 1  #add 2                          innodb_thread_concurrency       = 20innodb_print_all_deadlocks      = 1innodb_flush_method             = O_DIRECTinnodb_io_capacity              = 8000innodb_io_capacity_max          = 15000enforce_gtid_consistency        = 1binlog_rows_query_log_events    = 1character_set_server            = utf8mb4default-storage-engine          = INNODBtransaction_isolation           = READ-COMMITTEDmax_allowed_packet              = 67108864event_scheduler                 = 1slow_query_log                  = onexplicit_defaults_for_timestamp = 1   master_info_repository          = TABLErelay_log_info_repository       = TABLErelay_log_recovery              = 1relay_log_purge                 = 0  slave_rows_search_algorithms    = 'INDEX_SCAN,HASH_SCAN'slave_parallel_type             = LOGICAL_CLOCKslave_parallel_workers          = 16slave_preserve_commit_order     = 1slave_transaction_retries       = 64sync_relay_log                  = 0sync_relay_log_info             = 0sync_master_info                = 0sync_binlog                     = 1collation_server                = utf8mb4_binskip_name_resolve               = 1 plugin-load                     = "rpl_semi_sync_master=semisync_master.so;rpl_semi_sync_slave=semisync_slave.so"rpl-semi-sync-master-enabled    = 1rpl-semi-sync-slave-enabled     = 1

    8.数据文件初始化

    初始化

    ./mysqld --defaults-file=/home/mysql1/my.cnf --initialize --basedir=/home/mysql1 --datadir=/home/mysql1/data --user=mysql1

    启动

    ./mysqld_safe --defaults-file=/home/mysql1/my.cnf --user=mysql1 &

    查看mysql进程已经起来,并且监听3307接口

    Mysql一主多从如何部署

    本机登陆,root的初始密码可以在errorlog中找到

    cat error.log | grep "temporary password"

    Mysql一主多从如何部署

    本机登录指定sock文件以及指定端口及输入临时密码

    ./mysql -uroot -P3307 -S /home/mysql1/mysql.sock -p

    登录后修改root密码

    set password=password('XXXXXXXX'); 修改密码flush privileges;

    赋予权限

    grant all privileges on *.* to 'root'@'%' identified by 'XXXXXXX' with grant option;flush privileges;

    停止服务

    ./mysqladmin shutdown -uroot -p******** -S /home/mysql1/mysql.sock

    使用mysql客户端datagrip连接mysql成功

    Mysql一主多从如何部署

    通过如上相同操作安装从库,只修改配置文件相关信息,并且初始化,并且客户端连接

    Mysql一主多从如何部署

    在master数据库上执行

    创建repl用户并且赋予同步权限

    CREATE USER 'repl' IDENTIFIED BY 'slavepass';GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%' identified by 'slavepass';flush privileges;

    Mysql一主多从如何部署

    查看master状态

    SHOW MASTER STATUS\G;

    Mysql一主多从如何部署

    在slave上面执行

    配置slave从节点的master节点以及binlog偏移位置等

    CHANGE MASTER TO MASTER_HOST='master地址',MASTER_USER='repl',MASTER_PASSWORD='slavepass',MASTER_LOG_FILE='mysql-bin.000003', #为master的log_fileMASTER_LOG_POS=1597,       #master的POSMASTER_PORT=3307;

    Mysql一主多从如何部署

    启动slave同步进程以及查看slave状态

    start slave;  #启动slave同步进程show slave status\G;

    Mysql一主多从如何部署

    测试

    在mysql1中创建testdb,使用datagrip在mysql2中即可查看从mysql1中同步的新增的库以及数据,不过datagrip需要刷新下客户端。

    Mysql一主多从如何部署

    关于“Mysql一主多从如何部署”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网行业资讯频道,小编每天都会为大家更新不同的知识点。

    免责声明:

    ① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

    ② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

    Mysql一主多从如何部署

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档

    猜你喜欢

    Mysql一主多从如何部署

    这篇文章主要介绍“Mysql一主多从如何部署”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Mysql一主多从如何部署”文章能帮助大家解决问题。下载tar.gz包选择redhat版本安装1.linux
    2023-06-30

    Docker如何部署mysql一主一从

    这篇文章将为大家详细讲解有关Docker如何部署mysql一主一从,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。下载镜像选择MySQL镜像docker search mysql下载MySQL5.7镜像do
    2023-06-15

    Mysql主从部署

    Mysql主从部署 基于Mysql 5.7.26-1 一、 安装Mysql 离线部署推荐使用 "RPM Bundle" https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.27-1.el7
    Mysql主从部署
    2020-08-26

    Mysql-5.7主从部署

    一、环境准备# rpm -qa |grep mariadb |xargs yum remove -y # setenforce 0(临时关闭),(selinux配置文件:SELINUX=disabled,需重启生效) # systemctl stop ipta
    Mysql-5.7主从部署
    2015-06-28

    k8s部署mysql主从怎么切换

    要实现Kubernetes下的MySQL主从切换,可以按照以下步骤进行操作:首先,创建MySQL主从的Deployment和Service。在Kubernetes中,可以使用StatefulSet来创建有状态的MySQL实例。可以创建一个S
    2023-10-27

    MySQL配置主从服务器(一主多从)

    目录思路主机配置修改conf重启检验从机1配置从机2配置配置主从关联测试数据同步常见问题原因解决方案本文主要介绍了MySQL配置主从服务器(一主多从),感兴趣的可以了解一下当前环境 Centos 7.6 Mysql 5.7Centos 7.
    2022-05-21

    Mysql如何实现主从配置和多主多从配置

    这篇文章主要介绍了Mysql如何实现主从配置和多主多从配置,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。我们现在模拟的是主从(1台主机、一台从机),其主从同步的原理,就是对b
    2023-06-15

    编程热搜

    目录