首页 > 数据库 >数据库主从复制方法 以及nginx常用命令汇总

数据库主从复制方法 以及nginx常用命令汇总

时间:2022-11-10 08:34:22浏览次数:52  
标签:主从复制 name 常用命令 192.168 server nginx master mysql

 

 主从复制可以很好解决一个服务器压力太大的缺点   在实际情况中可以让读一个库  增删查一个库

具体步骤由图可知首先主库master会生成二进制日志

从库可以开辟一条io线程来读取主库二进制日志从而在从库中生成中继日志

然后从库再开辟一条sql线程用来把io线程写过来的的中继日志进行重做

这样就实现主从复制

 

 

首先查看防火墙是否开启mysql端口号3306

firewall-cmd --zone=public --add-port=3306/tcp --permanent   开启3306端口

firewall-cmd --zone=public --list-ports  查看开启端口

systemctl start mysqld  启动sql指令

 

 

打开配置文件修改Mysql数据库的配置文件/etc/my.cnf

log-bin=mysql-bin #[必须]启用二进制日志
server-id=200 #[必须]服务器唯一ID(唯一即可)

重启Mysql服务

 systemctl restart mysqld

 

 

 

 

登录mysql,并执行如下指令,创建用户并授权:

GRANT REPLICATION SLAVE ON *.* to 'xiaoming'@'%' identified by 'Root@123456';

登录Mysql数据库,查看master同步状态

show master status;

到此主库的配置基本结束 到次界面就可以去配置从库

 

 

修改Mysql数据库的配置文件/etc/my.cnf

server-id=201 #[必须]服务器唯一ID

重启Mysql服务

systemctl restart mysqld

登录Mysql数据库,设置主库地址及同步位置

change master tomaster_host='192.168.200.200',master_user='xiaoming',master_password='Root@123456',master_log_file='mysql-bin.000001',master_log_pos=154;

查看从数据库的状态

show slave status/G

 

 

 

 

 

 

 

 

 

 

 

<dependency>
<groupId>org.apache.shardingsphere</groupId>
<artifactId>sharding-jdbc-spring-boot-starter</artifactId>
<version>4.0.0-RC1</version>
</dependency>

 

 

 

spring:
shardingsphere:
datasource:
names:
master,slave
# 主数据源
master:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.200.200:3306/rw?characterEncoding=utf-8
username: root
password: root
# 从数据源
slave:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.200.201:3306/rw?characterEncoding=utf-8
username: root
password: root
masterslave:
# 读写分离配置
load-balance-algorithm-type: round_robin #轮询
# 最终的数据源名称
name: dataSource
# 主库数据源名称
master-data-source-name: master
# 从库数据源名称列表,多个逗号分隔
slave-data-source-names: slave
props:
sql:
show: true #开启SQL显示,默认false

 

 

 

 

 

 

 

 

 

 

 

 

 

 如果想在linux随意访问nginx需要修改变量配置

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

server {
listen 82;
server_name localhost;
location / {
proxy_pass http://192.168.247.130:8080; #反向代理配置,将请求转发到指定服务
}
}

 

 

 

 

 

 

在nginx中配置负载均衡

打开nginx的配置文件nginx.conf并增加如下配置:

#upstream指令可以定义一组服务器
upstream targetserver{
server 192.168.200.201:8080;
server 192.168.200.201:8081;
}

server {
listen 8080;
server_name localhost;
location / {
proxy_pass http://targetserver;
}
}

 

 注意: 上述所有涉及到的端口号,都需要在对应的服务器的防火墙中开放,或者彻底关闭防火墙

 

 

#upstream指令可以定义一组服务器
upstream targetserver{
server 192.168.200.201:8080 weight=10;
server 192.168.200.201:8081 weight=5;
}

上述配置的weight权重是相对的,在上述的配置中,效果就是,在大数据量的请求下,最终8080接收的请求数是8081的两倍。

标签:主从复制,name,常用命令,192.168,server,nginx,master,mysql
From: https://www.cnblogs.com/yanxuezhou/p/16875045.html

相关文章

  • vi 常用命令(CentOS 默认编辑器)
     一、关于vivi是最强大的文本编辑器,没有之一。尽管 vi已经是古董级的软件,但还是有无数新人迎着困难去学习使用,可见其经典与受欢迎的程度。无论是小说中还是电视剧,真正......
  • Nginx基于请求头的分发
    前面介绍的分发方式适用于单个集群,而基于请求头分发适用于多个集群场景。基于请求头的分发1、基于host分发:适用于一个公司有多个网站,一个网站设置为一个集群#nginx分发......
  • Nginx:Docker Compose部署Nginx
    使用​​DockerCompose​​​部署​​Nginx​​​,创建​​docker-compose.yaml​​:[root@192~]#vimdocker-compose.yaml输入以下内容:version:'3'services:nginx:......
  • Nginx分发算法实现
    1、基于轮询分发:根据请求流量均匀分发到后端服务器upstreamweb{serverserver1;serverserver2;}server{listen80;server_namelocalhost;......
  • Nginx分发算法介绍
    分发算法:如何将用户请求按照一定的规律分发给业务服务器。主要分为Nginx集群默认算法和基于请求头分发算法。nginx的upstream目前支持4种方式的分配:1)轮询(默认)  每......
  • Nginx配置分发器
    本文章以nginx作为分发器,httpd作为后端服务器,nginx负责将请求流量分发到httpd节点。1、执行nginx安装脚本(往期文章有)shnginx_install2、切换到nginx配置文件目录cd......
  • Nginx集群介绍
    一、Nginx集群组成组成要素:1)VIP:给分发器的一个虚IP2)分发器:nginx3)数据服务器:web服务器二、nginx集群原理在Nginx集群中Nginx扮演的角色是分发器。主要任务是接受请求......
  • Shell脚本安装Nginx
    #!/bin/bashnginx_pkg='nginx-1.19.3.tar.gz'nginx_prefix=/usr/local/nginxhtml=/var/nginxlog=/var/log/nginxcheck13(){[$UID-ne0]&&echo"needto......
  • Nginx 优化与防盗链
    一、隐藏版本号1、隐藏版本号的操作步骤可以使用Fiddler工具抓取数据包,查看Nginx版本,也可以在CentOS中使用命令 curl-Ihttp://192.168.160.60显示响应报文首部信......
  • Nginx:代理FastDFS实现文件访问
    搭建​​FastDFS​​分布式文件系统参考下面这篇博客:​​分布式:搭建FastDFS分布式文件系统​​安装fastdfs-nginx-module安装​​fastdfs-nginx-module​​​也是只在​​st......