当前位置: 首页 > news >正文

centos7 mysql 基本测试(6)主从简单测试

centos7 xtrabackup mysql 基本测试(6)主从简单测试

mysql -u etc -p
1234aA~1

参考:
centos7 时区设置 时间同步
https://blog.csdn.net/wowocpp/article/details/135931129

Mysql数据库:主从复制与读写分离
https://blog.csdn.net/m0_71815887/article/details/137112591

CentOS7-MySQL-主从
https://blog.csdn.net/super_lixiang/article/details/82595001

MySQL-主从架构的搭建
https://developer.aliyun.com/article/1409013

centos7搭建mysql主从
https://www.jianshu.com/p/cbfbee2a662b

如何在centos7中搭建传统的mysql主从
https://jingyan.baidu.com/article/380abd0aacb63d5c90192cad.html

MySQL主从复制《主库已经有数据的解决方案》《几种复制模式》
https://blog.csdn.net/weixin_41309035/article/details/136157363

需要两台 虚拟机
G:\centos7_mini_1810_server_zhu 192.168.99.40
G:\centos7_mini_1810_server_cong 192.168.99.172

mysql 版本

Server version: 5.7.44 MySQL Community Server (GPL)

时间 同步

timedatectl
centos7 时区设置 时间同步

timedatectl

sudo yum install chrony -y
sudo systemctl enable chronyd
sudo systemctl start chronyd
sudo systemctl status chronyd
对于较旧版本的CentOS系统,没有安装chrony,可以使用ntpdate来完成时间同步。

date // 查看当前时间
timedatectl set-timezone Asia/Shanghai // 设置时区为上海

主服务器设置

ip addr 查看 网卡,有时候 同一个网卡上面 会有两个ip地址。
原因可能是

/etc/sysconfig/network-scripts/ifcfg-ens33

设置 固定的ip地址 192.168.99.40

对 ifcfg-ens33 文件做备份的时候
不要 命名为ifcfg-ens33.bak ,而是要 命名为bak_ifcfg-ens33
ifcfg-ens33.bak 也会被解析,执行。给网卡增加了 第二地址。

查看mysql 数据库 的data地址
mysql -u etc -p
1234aA~1

show variables like '%dir' ;

datadir | /opt/datadir/mysql/

/opt/datadir/mysql

sudo cat my.cnf

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
#datadir=/var/lib/mysql
datadir=/opt/datadir/mysql/
socket=/opt/datadir/mysql/mysql.sock
#socket=/var/lib/mysql/mysql.sock# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[client]
socket=/opt/datadir/mysql/mysql.sock

创建测试数据库 company_pro

mysql -u root -p
1234aA~1

show databases ;
create database if not exists company_pro;
use company_pro;
DROP TABLE IF EXISTS employee;drop table if exists employee;
create table employee (id int unsigned primary key auto_increment comment 'id', name varchar(50) not null comment '名称', create_time datetime not null default current_timestamp comment '创建时间', update_time datetime not null default current_timestamp on update current_timestamp comment '更新时间'
)  ENGINE=InnoDB charset=utf8 comment '测试表';DESCRIBE employee ;
insert into employee(name) value ('张三');
insert into employee(name) value ('李四');

创建测试数据库 company_service

mysql -u root -p
1234aA~1

show databases ;
create database if not exists company_service;
use company_service;
DROP TABLE IF EXISTS customer;drop table if exists customer;
create table customer(id int unsigned primary key auto_increment comment 'id', name varchar(50) not null comment '名称', create_time datetime not null default current_timestamp comment '创建时间', update_time datetime not null default current_timestamp on update current_timestamp comment '更新时间'
)  ENGINE=InnoDB charset=utf8 comment '测试表';DESCRIBE customer;insert into customer(name) value ('中石化');
insert into customer(name) value ('中石油');

修改主服务器配置文件

sudo vi my.cnf

#for zhu and chong
server-id=40
log-bin=mysql-bin
binlog_format=mixed
binlog_do_db=company_pro
binlog_do_db=company_service

sudo systemctl restart mysqld

在这里插入图片描述

show databases;

show master status ;
show variables like '%log_bin%';
SHOW VARIABLES LIKE 'port';

在这里插入图片描述

sudo systemctl restart mysqld

授权一个用户,用于远程连接主机(relication)

Master的数据库中建立一个复制帐户并授权
在 Master 的数据库中建立一个备份帐户(user = mysqlsyn,pwd=1234aA~1):每个 slave 使用标准的 MySQL 用户名和密码连接 master 。
进行复制操作的用户会授予 REPLICATION SLAVE 权限。
mysql -u root -p
1234aA~1

create user 'mysqlsyn'@'%' identified by '1234aA~1';
grant replication slave,replication client on *.* to 'mysqlsyn'@'%' identified by '1234aA~1';
flush privileges;

可使用SHOW SLAVE STATUS\G;查看从服务器状态,
也可用show processlist \G;查看当前复制状态

放开防火墙权限

sudo systemctl status firewalld
#防火墙开放3306端口号
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo systemctl restart firewalld
#查看防火墙开放端口列表
sudo firewall-cmd --zone=public --list-ports

主服务器备份文件

mysqldump -uroot -p1234aA~1 --default-character-set=utf8 --flush-logs -R company_pro > company_pro.sql
mysqldump -uroot -p1234aA~1 --default-character-set=utf8 --flush-logs -R company_service > company_service.sql

得到文件
company_pro.sql company_service.sql
从机上面远程接收文件
scp jack@192.168.99.40:/home/jack/company_pro.sql .
scp jack@192.168.99.40:/home/jack/company_service.sql .

mysqldump -uroot -p --master-data=1 --single-transaction --routines --triggers --events --all-databases > all.sql

slave 机器查看

测试slave连接master数据库:
192.168.99.40 是master 的 ip地址

mysql -h 192.168.99.40 -u mysqlsyn -p
1234aA~1

show master status ;
确认可以连接

初始化数据

登录slave的 mysql
mysql -u root -p
1234aA~1
create database if not exists company_service;
use company_service;
source /home/jack/company_service.sql;

show databases ;
create database if not exists company_pro;
use company_pro;
source /home/jack/company_pro.sql;

修改slave的配置文件

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
#datadir=/var/lib/mysql
datadir=/opt/datadir/mysql/
socket=/opt/datadir/mysql/mysql.sock
#socket=/var/lib/mysql/mysql.sock
# for zhu and chong
server-id=172
log-bin=mysql-bin# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[client]
socket=/opt/datadir/mysql/mysql.sock

sudo systemctl restart mysqld
重启

登录slave的 mysql
mysql -u root -p
1234aA~1

初始化

mysql> change master to-> master_host='192.168.99.40',-> master_user='mysqlsyn',-> master_password='1234aA~1',-> master_log_file='mysql-bin.000003',-> master_log_pos=154;
Query OK, 0 rows affected, 2 warnings (0.02 sec)mysql> start slave;
Query OK, 0 rows affected (0.00 sec)mysql> show slave status\G

Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work.

/opt/datadir/mysql/auto.cnf
修改一下uuid

https://blog.csdn.net/co1590/article/details/120190659

暂停 从机,然后重启

mysql> stop slave;

重启

mysql> reset slave;
mysql> start slave;

测试主从是否可以

主机端
mysql -u root -p
1234aA~1

show databases ;
use company_pro;
show tables ;
insert into employee(name) value (‘从机测试’);
insert into employee(name) value (‘从机测试726’);
从机端 查看
mysql -u root -p
1234aA~1
show databases ;
use company_pro;
show tables ;
select * from employee ;

可以了

相关文章:

centos7 mysql 基本测试(6)主从简单测试

centos7 xtrabackup mysql 基本测试(6)主从简单测试 mysql -u etc -p 1234aA~1 参考: centos7 时区设置 时间同步 https://blog.csdn.net/wowocpp/article/details/135931129 Mysql数据库:主从复制与读写分离 https://blog.csd…...

信息安全工程师题

防火墙安全策略有两种类型:白名单策略、黑名单策略白名单策略:只允许符合安全规则的包通过防火墙,其他通信包禁止黑名单策略:禁止与安全规则相冲突的包通过防火墙,其他通信包允许实现网络地址转换的方式主要有静态NAT、…...

springcloud rocketmq 新增的消费者组从哪里开始消费

如果新建一个新的消费者组,是否会消费历史消息,导致重复消费? 直接在 console 界面新增消费者组,但是没有办法绑定订阅关系,没有找到入口,在 控制台项目源码 rocketmq-externals 也没有找到可以确定订阅关系…...

Redis-缓存

什么是缓存? 缓存就像自行车和越野车的避震器,降低硬着陆造成的损害 缓存就是系统的避震器,,防止过高的数据访问猛冲系统,导致其操作线程无法及时处理信息而瘫痪 缓存(Cache),就是数据交换的缓冲区,俗称的缓存就是缓冲区内的数据,一般从数…...

MySQL练习05

题目 步骤 触发器 use mydb16_trigger; #使用数据库create table goods( gid char(8) primary key, name varchar(10), price decimal(8,2), num int);create table orders( oid int primary key auto_increment, gid char(10) not null, name varchar(10), price decima…...

[C++][STL源码剖析] 详解AVL树的实现

目录 1.概念 2.实现 2.1 初始化 2.2 插入 2.2.1 旋转(重点) 左单旋 右单旋 双旋 2.❗ 双旋后,对平衡因子的处理 2.3 判断测试 完整代码: 拓展:删除 1.概念 二叉搜索树虽可以缩短查找的效率,但…...

Kubernetes存储 - Node本地存储卷

官方文档 Kubernetes管理的Node本地存储目前有三种,分别是EmptyDir,HostPath,Local,EmptyDir是一种与Pod同生命周期的Node临时存储;HostPath是Node的目录;Local是基于持久卷(PV)管理的Node目录。接下来详细说明这几种类型如何以存…...

Cocos Creator2D游戏开发-(2)Cocos 常见名词

场景(Scene): 它一个容器,容纳游戏中的各个元素,如精灵,标签,节点对象。它负责着游戏的运行逻辑,以帧为单位渲染这些内容。就是你理解到的那个场景; 个人理解就是一个画面, 一个游戏不同的关卡,会有不同的…...

【不同设备间的数据库连接】被连接设备如何开权限给申请连接的设备

为了方便叙述,简称申请连接数据库的设备为a,被连接的为b 1.确保在同一局域网下,检查a的ip 如果你设置的动态ip,那么每重启一次这个ip都会变。两种选择,每次都给b同步一下你的最新ip,或者a设置成静态ip。具…...

Whisper离线部署问题处理

Whisper是OpenAI开发一款开源语音识别模型,可以帮我们低成本的拥有语音识别的能力。具体的安装部署方法,我在这里就不详细说了,网上有很多相关文章: 使用OpenAI的Whisper 模型进行语音识别 (baidu.com) 我这里主要想说的是&…...

【Hive SQL】数据探查-数据抽样

文章目录 数据随机抽样1、随机数排序抽样(rand())2、数据块抽样(tablesample())3、分桶抽样 数据随机抽样 在大规模数据量的数据分析及建模任务中,往往针对全量数据进行挖掘分析时会十分耗时和占用集群资源&#xff0c…...

微信答题小程序产品研发-需求分析与原型设计

欲知应候何时节,六月初迎大暑风。 我前面说过,我决意仿一款答题小程序,所以我做了大量的调研。 题库软件产品开发不仅仅是写代码这一环,它包含从需求调研、分析与构思、设计到开发、测试再到部署上线一系列复杂过程。 需求分析…...

基础模板Mybatis-plus+Springboot+Mysql开发配置文件

1.pom.xml <dependencies><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.2.2</version></dependency>// mybatisplus功能<dependency&g…...

java-poi实现excel自定义注解生成数据并导出

因为项目很多地方需要使用导出数据excel的功能&#xff0c;所以开发了一个简易的统一生成导出方法。 依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>4.0.1</version…...

LeetCode707 设计链表

前言 题目&#xff1a; 707. 设计链表 文档&#xff1a; 代码随想录——设计链表 编程语言&#xff1a; C 解题状态&#xff1a; 代码功底不够&#xff0c;只能写个大概 思路 主要考察对链表结构的熟悉程度&#xff0c;对链表的增删改查&#xff0c;比较考验代码功底以及对链表…...

[Mysql-DDL数据操作语句]

目录 DDL语句操作数据库 库&#xff1a; 查看&#xff1a;show 创建&#xff1a;creat 删除&#xff1a;drop 使用(切换)&#xff1a;use 表&#xff1a; 查看&#xff1a;desc show 创建&#xff1a;create 表结构修改 rename as add drop modify change rename as …...

google 浏览器插件开发简单学习案例:TodoList;打包成crx离线包

参考&#xff1a; google插件支持&#xff1a; https://blog.csdn.net/weixin_42357472/article/details/140412993 这里是把前面做的TodoList做成google插件&#xff0c;具体网页可以参考下面链接 TodoList网页&#xff1a; https://blog.csdn.net/weixin_42357472/article/de…...

如何学习Doris:糙快猛的大数据之路(从入门到专家)

引言:大数据世界的新玩家 还记得我第一次听说"Doris"这个名字时的情景吗?那是在一个炎热的夏日午后,我正在办公室里为接下来的大数据项目发愁。作为一个刚刚跨行到大数据领域的新手,我感觉自己就像是被丢进了深海的小鱼—周围全是陌生的概念和技术。 就在这时,我的…...

梯度下降算法,gradient descent algorithm

定义&#xff1a;是一个优化算法&#xff0c;也成最速下降算法&#xff0c;主要的部的士通过迭代找到目标函数的最小值&#xff0c;或者收敛到最小值。 说人话就是求一个函数的极值点&#xff0c;极大值或者极小值 算法过程中有几个超参数&#xff1a; 学习率n&#xff0c;又称…...

Spring boot 2.0 升级到 3.3.1 的相关问题 (六)

文章目录 Spring boot 2.0 升级到 3.3.1 的相关问题 &#xff08;六&#xff09;spring-data-redis 和 Spring AOP 警告的问题问题描述问题调研结论解决方案方案1-将冲突的Bean 提升为InfrastructureBean方案2 其他相关资料 Spring boot 2.0 升级到 3.3.1 的相关问题 &#xff…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 &#xff09;⽤户级环境变量与系统级环境变量 全局属性&#xff1a;环境变量具有全局属性&#xff0c;会被⼦进程继承。例如当bash启动⼦进程时&#xff0c;环 境变量会⾃动传递给⼦进程。 本地变量限制&#xff1a;本地变量只在当前进程(ba…...

【Oracle APEX开发小技巧12】

有如下需求&#xff1a; 有一个问题反馈页面&#xff0c;要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据&#xff0c;方便管理员及时处理反馈。 我的方法&#xff1a;直接将逻辑写在SQL中&#xff0c;这样可以直接在页面展示 完整代码&#xff1a; SELECTSF.FE…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

从零实现富文本编辑器#5-编辑器选区模型的状态结构表达

先前我们总结了浏览器选区模型的交互策略&#xff0c;并且实现了基本的选区操作&#xff0c;还调研了自绘选区的实现。那么相对的&#xff0c;我们还需要设计编辑器的选区表达&#xff0c;也可以称为模型选区。编辑器中应用变更时的操作范围&#xff0c;就是以模型选区为基准来…...

【位运算】消失的两个数字(hard)

消失的两个数字&#xff08;hard&#xff09; 题⽬描述&#xff1a;解法&#xff08;位运算&#xff09;&#xff1a;Java 算法代码&#xff1a;更简便代码 题⽬链接&#xff1a;⾯试题 17.19. 消失的两个数字 题⽬描述&#xff1a; 给定⼀个数组&#xff0c;包含从 1 到 N 所有…...

Objective-C常用命名规范总结

【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名&#xff08;Class Name)2.协议名&#xff08;Protocol Name)3.方法名&#xff08;Method Name)4.属性名&#xff08;Property Name&#xff09;5.局部变量/实例变量&#xff08;Local / Instance Variables&…...

2.Vue编写一个app

1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

视频字幕质量评估的大规模细粒度基准

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用&#xff0c;因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型&#xff08;VLMs&#xff09;在字幕生成方面…...

虚拟电厂发展三大趋势:市场化、技术主导、车网互联

市场化&#xff1a;从政策驱动到多元盈利 政策全面赋能 2025年4月&#xff0c;国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》&#xff0c;首次明确虚拟电厂为“独立市场主体”&#xff0c;提出硬性目标&#xff1a;2027年全国调节能力≥2000万千瓦&#xff0…...

C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)

名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...