django给mysql配主从_django中的mysql主从读写分离:一、配置mysql主从分离

一、配置mysql主从同步的步骤:

(1) 在主服务器上,必须开启二进制日志机制和配置一个独立的ID

(2) 在每一个从服务器上,配置一个唯一的ID,创建一个用来专门复制主服务器数据的账号

(3) 在开始复制进程前,在主服务器上记录二进制文件的位置信息

(4) 如果在开始复制之前,数据库中已经有数据,就必须先创建一个数据快照(可以使用mysqldump导出数据库,或者直接复制数据文件)

(5) 配置从服务器要连接的主服务器的IP地址和登陆授权,二进制日志文件名和位置

示例:以ubuntu的MySQL(5.7.22)作为主机 ,使用Dokcer安装的MySQL作为从机

二、安装、配置主从服务Mysql服务器

1、安装MySQL主机

1. sudo apt-get install mysql-server2. apt-get isntall mysql-client3. sudo apt-get install libmysqlclient-dev

2、安装MySQL从机

在docker里面安装mysql的镜像, 此版本的镜像,尽量和MySQL主机版本一致

(1)可以从docker官方拉取镜像 :

docker image pull mysql:5.7.22

(2)本地已有docker的镜像可以直接安装:

docker load -i mysql_docker_5722.tar

3、指定从机配置文件

运行mysql docker镜像,需要在宿主机中建立文件目录于mysql容器保存数据和读取配置文件。

在家目录下创建mysql_slave文件夹, 放入mysql的配置文件,

这里最后一行命令是直接复制主机mysql的配置文件, 再去修改就可以了

cd ~

mkdirmysql_slave

cd mysql_slavemkdirdatacp -r /etc/mysql/mysql.conf.d ./ #将位于/etc的mysql主机的配置文件拷到家目录下,修改后作为从机的配置文件

4、配置从机

将docker运行的mysql作为slave运行, 开启前需配置文件

修改port , server-id和主机做区分, 主机分别是3306, 1 , 另外不开启日志

sudo vim ~/mysql_slave/mysql.conf.d/mysqld.cnf

port= 8306 # 区别开主服务器的3306,定义为8306general_log= 0server-id = 2 #主服务器id设为1,从服务器只要不是1都行,这边取2

5、创建docker容器

创建docker容器,    MYSQL_ROOT_PASSWORD 是创建mysql root用户的密码,指定ubuntu和docker里面映射的路径(-v后面就是指定的映射路径),详细命令如下:

docker run --name mysql-slave -e MYSQL_ROOT_PASSWORD=mysql -d --network=host -v /home/python/mysql_slave/data:/var/lib/mysql -v /home/python/mysql_slave/mysql.conf.d:/etc/mysql/mysql.conf.d mysql:5.7.22

测试, 在ubuntu中使用mysql命令尝试连接docker容器中的mysql

mysql -uroot -pmysql -h 127.0.0.1 --port=8306

接下来备份初始主服务器的内容到从服务器(冷备份),后续的主从同步(热备份)则通过二进制日志来传输:

三、备份数据及主从同步配置

1、冷备份

1.登录到MySQL主机,收集数据

mysqldump -uroot -pmysql --all-databases --lock-all-tables > ~/master_db.sql

2.登录到MySQL从机,同步数据

mysql -uroot -pmysql -h127.0.0.1 --port=8306 < ~/master_db.sql

2、配置主机Mysql

编辑设置mysqld的配置文件, 设置log_bin 和server_id

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

server-id = 1log_bin= /var/log/mysql/mysql-bin.log

重启主机mysql服务

sudo service mysql restart

3、热备份:主从同步

(1)、登入主服务器Ubuntu中的mysql,创建用于从服务器同步数据使用的帐号, 这里是slave

mysql –uroot –pmysql

GRANT REPLICATION SLAVE ON*.* TO 'slave'@'%' identified by 'slave';#*.*表示所有表,第一个slave表示账号,第二个slave表示密码

FLUSH PRIVILEGES;

(2)、获取主服务器的二进制日志信息, 查看File , Position

File为使用的日志文件名字,Position为使用的文件位置,这两个参数须记下,配置从服务器时会用到。

SHOW MASTER STATUS;

32f5b2c1d7c13e7a96a42b73924298c4.png

(3)、进入docker中的mysql配置从服务器的slave:

mysql -uroot -pmysql -h 127.0.0.1 --port=8306

执行:

change master to master_host='127.0.0.1', master_user='slave', master_password='slave',master_log_file='mysql-bin.000006', master_log_pos=590;

说明:

master_host:主服务器Ubuntu的ip地址

master_log_file: 前面查询到的主服务器日志文件名======File

master_log_pos: 前面查询到的主服务器日志文件位置======Position

(4)、这时候已经配置完成, 尝试启动slave服务器, 并查看同步状态

start slave;

show slave status \G

如果 显示Slave_IO_Running :Yes, Slave_SQL_Running: Yes  表示同步已经正常运行

转自:https://blog.csdn.net/skyjianwei/article/details/81058205

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/512258.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从 40% 跌至 4%,“糊”了的 Firefox 还能重回巅峰吗?

作者 | 丁广辉 责编 | 张红月出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;Mozilla Firefox&#xff0c;通常简称为Firefox&#xff0c;中文名叫做火狐&#xff0c;是由Mozilla基金会及其子公司Mozilla公司开发的一款自由、开源的网页浏览器。2004年&#x…

如何发现 Kubernetes 中服务和工作负载的异常

简介&#xff1a; 本次分享为Kubernetes 监控公开课的第二节内容&#xff1a;如何发现 Kubernetes 中服务和工作负载的异常。 分享由三个部分组成&#xff1a; 一、Kubernetes 异常定位存在痛点&#xff1b; 二、针对这些痛点&#xff0c;Kubernetes 监控如何更快、更准、更全的…

内含干货PPT下载|一站式数据管理DMS及最新解决方案发布

简介&#xff1a; 今天主要给大家介绍一站式数据管理平台DMS以及解决方案的发布。议题包含企业数据管理当前的一些痛&#xff0c;DMS一站式数据管理平台以及其核心技术&#xff0c;实时数仓解决方案以及相应的应用实践。 “数聚云端智驭未来”——阿里云数据库创新上云峰会暨第…

java 数组数据类型_java基本数据类型和数组

第一类:逻辑型boolean第二类:文本型char第三类:整数型(byte、short、int、long)char类型占2个字节short从-32768到32767int从-2147483648,到2147483647共10位long从-9223372036854775808到9223372036854775807共19位第四类:浮点型(float、double)在数学中0到1有无数个浮点数&am…

kube-scheduler 磁盘调度源码分析

作者 | leadersnowy来源 | CSDN博客kube-scheduler介绍首先我们知道&#xff0c;kube-scheduler的根本工作任务是根据各种调度算法将Pod调度到最合适的工作节点上一、整个调度流程分为两个阶段&#xff1a;1、预选&#xff08;Predicates&#xff09;&#xff1a;输入是所有节点…

开放搜索查询分析服务架构解读

简介&#xff1a; 搜索行为在后端都会有大量的数据计算和处理才会召回符合用户需求的搜索结果&#xff0c;本次分享结合自建搜索业务中查询分析服务常见的问题及难点&#xff0c;介绍阿里云开放搜索查询分析具备的能力及解决方案&#xff0c;并深度解读阿里巴巴查询分析服务架构…

多任务多目标CTR预估技术

简介&#xff1a; 多目标&#xff08;Multi Objective Learning&#xff09;是MTL中的一种。在业务场景中&#xff0c;经常面临既要又要的多目标问题。而多个目标常常会有冲突。如何使多个目标同时得到提升&#xff0c;是多任务多目标在真实业务场景中存在的意义。 作者 | 志阳…

Veeam 发布 2022 年数据保护趋势报告,开发者需关注哪些点?

如今数据作为重要的生产要素&#xff0c;成为数字经济高速发展的关键驱动力之一。越来越多开发者和企业认识到数据保护的重要性&#xff0c;关注数据保护发展趋势&#xff0c;以通过相关的技术解决方案来制定应对策略。 为帮助企业捋请思路&#xff0c;加快数字化转型步伐&…

blazeds调用java_Flex使用Blazeds与Java交互及自定义对象转换详解(转)

一、建立Flex与Java交互的工程。本文中讲到的交互是利用Blazeds的&#xff0c;因为这个是免费的&#xff0c;呵呵&#xff0c;我是穷人。首先就是去下载Blazeds的压缩包&#xff0c;这个可以从官网或者CSDN、JavaEye上下到。解压缩这个包&#xff0c;将里面的Blazeds.war解压&a…

从行业应用到智慧城市,升哲科技Alpha协议如何保障物理世界的数据传输

随着国家《“十四五”信息通信行业发展规划》和《物联网新型基础设施建设三年行动计划&#xff08;2021-2023年&#xff09;》的政策出台&#xff0c;物联网的产业发展迎来了新一波浪潮。在农业、制造业、生态环境、智慧消防等场景下&#xff0c;以数字化转型、智能化升级为动力…

Serverless 工程实践 | 零基础上手 Knative 应用

简介&#xff1a; Knative 是一款基于 Kubernetes 的 Serverless 框架。其目标是制定云原生、跨平台的 Serverless 编排标准。 Knative 介绍 Knative 通过整合容器构建&#xff08;或者函数&#xff09;、工作负载管理&#xff08;动态扩缩&#xff09;以及事件模型这三者实现…

DataWorks功能实践速览 05——循环与遍历

简介&#xff1a; DataWorks功能实践系列&#xff0c;帮助您解析业务实现过程中的痛点&#xff0c;提高业务功能使用效率&#xff01;通过往期的介绍&#xff0c;您已经了解到在DataWorks上进行任务运行的最关键的几个知识点&#xff0c;其中上期参数透传中为您介绍了可以将上游…

阿里安全开源顶尖技术“猎豹” 计算更快数据更安全

两家公司想开展合作&#xff0c;发挥各自优势联合开发一款产品&#xff0c;如何以“隐私计算”的形式&#xff0c;在保护隐私的情况下&#xff0c;高效地实现两方联合计算&#xff0c;便成为解决这一问题的关键。 最近&#xff0c;阿里安全最新研发的Cheetah&#xff08;猎豹&…

PaddlePaddle:在 Serverless 架构上十几行代码实现 OCR 能力

简介&#xff1a; 飞桨深度学习框架采用基于编程逻辑的组网范式&#xff0c;对于普通开发者而言更容易上手&#xff0c;同时支持声明式和命令式编程&#xff0c;兼具开发的灵活性和高性能。 飞桨 (PaddlePaddle) 以百度多年的深度学习技术研究和业务应用为基础&#xff0c;是中…

云原生体系下 Serverless 弹性探索与实践

简介&#xff1a; SAE 通过对弹性组件和应用全生命周期的不断优化以达到秒级弹性&#xff0c;并在弹性能力&#xff0c;场景丰富度&#xff0c;稳定性上具备核心竞争力&#xff0c;是传统应用 0 改造上 Serverless 的最佳选择。 作者&#xff1a;竞霄 Serverless 时代的来临 …

java jndi使用_Java项目中使用JNDI连接数据库

因为写的大作业经常用到数据库连接 所以自己写了个数据库连接的类 package DB_Link_info;/* * 数据库链接信息 */public class DB_link_Info {public static final String driverName "com.microsoft.sqlserver.jdbc.SQLServerDriver";public static开发环境为Java,…

Joint Consensus两阶段成员变更的单步实现

简介&#xff1a; Raft提出的两阶段成员变更Joint Consensus是业界主流的成员变更方法&#xff0c;极大的推动了成员变更的工程应用。但Joint Consensus成员变更采用两阶段&#xff0c;一次变更需要提议两条日志&#xff0c; 在一些系统中直接使用时有些不便。那么Joint Consen…

真香!8 行代码搞定最大子数组和问题

作者 | 码农的荒岛求生来源 | 码农的荒岛求生今天给大家带来一道极其经典的题目&#xff0c;叫做最大和子数组&#xff0c;给定一个数组&#xff0c;找到其中的一个连续子数组&#xff0c;其和最大。示例&#xff1a;输入: nums [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 子数组…

深度干货|云原生分布式数据库 PolarDB-X 的技术演进

简介&#xff1a; 深入解读PolarDB-X的产品架构&#xff0c;以及分布式事务、透明分布式、水平扩展等技术内幕。 一、PolarDB-X是什么 PolarDB-X最早起源于阿里集团2009年提出用分布式架构替代传统商业数据库&#xff0c;阿里研发了TDDL分库分表中间件。2014年阿里集团开始全…

OpenStack 如何跨版本升级

作者 | 孙琦来源 | 万博智云OpenStack是中国私有云的事实标准根据三方统计报告&#xff0c;2020年&#xff0c;中国私有云市场规模达到951.8亿元&#xff0c;同比增长42.1%&#xff0c;私有云在国内IaaS市场占比约45%。私有云提供商有望在云计算市场持续高速发展进程中持续受益…